- Курс-практикум «Педагогический драйв: от выгорания к горению»
- «Оказание первой помощи в образовательных учреждениях»
- «Труд (технология): специфика предмета в условиях реализации ФГОС НОО»
- «ФАООП УО, ФАОП НОО и ФАОП ООО для обучающихся с ОВЗ: специфика организации образовательного процесса по ФГОС»
- «Специфика работы с детьми-мигрантами дошкольного возраста»
- «Учебный курс «Вероятность и статистика»: содержание и специфика преподавания в условиях реализации ФГОС ООО и ФГОС СОО»
Свидетельство о регистрации
СМИ: ЭЛ № ФС 77-58841
от 28.07.2014
- Бесплатное свидетельство – подтверждайте авторство без лишних затрат.
- Доверие профессионалов – нас выбирают тысячи педагогов и экспертов.
- Подходит для аттестации – дополнительные баллы и документальное подтверждение вашей работы.
в СМИ
профессиональную
деятельность
Процедура Swap в FreePascal
ФИО автора: Трофимов Виктор Геннадьевич
Место работы: ГКООУ санаторная школа-интернат №28 г. Ростова-на-Дону
Должность: учитель информатики и ИКТ
ПРОЦЕДУРА SWAP В FREE PASCAL
Часто в процессе выполнения программы требуется поменять значения переменных. Это случается не только при сортировке массивов, но и во множестве «бытовых» ситуаций, к примеру, замена длин массивов при длиноисчисленных вычислениях.
Классическая программа выглядит так:
tmp := a;
a := b;
b := tmp;
Здесь и сейчас не будет рассматриваться механизм обмена данных без применения третьей.
Попытаемся оптимизировать процесс. Это легко сделать с помощью процедуры, которая будет обменивать значения любых двух однотипных переменных с помощью передачи ссылок.
Ниже представлен текст процедуры для обмена переменных типа integer:
procedure swap(var x1, x2: integer);
var tmp: integer;
begin
tmp := x1;
x1 := x2;
x2 := tmp;
end;
Обратите внимание на использование словаvar в параметрах процедуры:
procedure swap(var x1, x2: integer);
Оно означает, что в процедуру будут переданы не значения переменных, ассылки на переменные. Все операции замены будут выполнены с ссылками. После выполнения любые две переменные типаinteger (или любой другой, но указанной в параметрах) обменяют свои значения.
Пример программы:
program swp;
uses crt;
var a, b, c, d: integer;
procedure swap(var x1, x2: integer);
var tmp: integer;
begin
tmp := x1;
x1 := x2;
x2 := tmp;
end;
begin
clrscr;
a := 1;
b := 2;
c := 5;
d := 6;
writeln(a, ' ', b, ' ', c, ' ', d);
swap(a, b);
swap(c, d);
writeln(a, ' ', b, ' ', c, ' ', d);
readkey;
end.
Результат работы программы:
1 2 5 6
2 1 6 5
Вывод осуществлялся в порядке a, b, c, d. То есть когда мы вызывали процедуру swap с именами переменных, менялись именно переменные. Дополнительные действия при таком подходе совершать не надо и одна процедура является универсальной для любого количества вызовов с любыми параметрами.
ПРИМЕЧАНИЕ: В языке PascalABC процедура swap является встроенной.
Спасибо за внимание!
Адрес публикации: https://www.prodlenka.org/metodicheskie-razrabotki/145648-procedura-swap-v-freepascal
БЕСПЛАТНО!
Для скачивания материалов с сайта необходимо авторизоваться на сайте (войти под своим логином и паролем)
Если Вы не регистрировались ранее, Вы можете зарегистрироваться.
После авторизации/регистрации на сайте Вы сможете скачивать необходимый в работе материал.
- «Педагогические технологии и методы обучения в работе учителя в соответствии с ФГОС»
- «Профессиональная деятельность тьютора по сопровождению обучающихся с ОВЗ»
- «Преподавание учебных дисциплин предметной области «Искусство» по ФГОС ООО от 2021 года»
- «Методика и технологии обучения учащихся с ОВЗ в условиях реализации ФГОС»
- «Педагогическая диагностика и оценка успеваемости обучающихся в контексте реализации ФГОС»
- «Реализация Концепции духовно-нравственного развития и воспитания личности в образовательном процессе»
- Социальная педагогика: воспитание и социализация детей в образовательной организации
- Организационно-педагогическое обеспечение воспитательного процесса в образовательной организации
- Педагог-библиотекарь: библиотечное дело в образовательной организации
- Педагогическое образование: тьюторское сопровождение обучающихся
- Педагогика и методика преподавания истории и обществознания
- Педагогика и методика преподавания математики

Чтобы оставлять комментарии, вам необходимо авторизоваться на сайте. Если у вас еще нет учетной записи на нашем сайте, предлагаем зарегистрироваться. Это займет не более 5 минут.