- •Алгоритмические языки и программирование
- •Циклический алгоритм
- •История создания языков программирования
- •Структура программы на языке "Паскаль"
- •Переменные и их имена
- •Замечания
- •Команда присваивания
- •Операторы write и writeln. Процедуры вывода информации
- •Операторы read и readln. Процедуры ввода информации
- •Арифметические операции с целыми числами. Переменные целого типа. Вещественный тип
- •Арифметические операции с целыми числами и переменными целого типа в языке Паскаль
- •Операции отношения или сравнения
- •Логические операции
- •Операция целочисленного деления и операция - остаток от деления
- •Расширение диапазона значений целых переменных
- •Расширение диапазона значений вещественных переменных
- •Оператор безусловного перехода goto
- •1: Writeln('Число не содержит цифру 2');
- •Оператор if ... Then ... Else
- •Цикл с предыдущим условием. Оператор while ... Do ...
- •Цикл с последующим условием. Оператор repeat...Until...
- •Различия между циклом - while и циклом – repeat
- •Циклы с параметрами. Операторы for...To...Do... И for...Downto...Do...
- •Оператор Case...Of...
- •Логические операции
- •Массивы
- •Ошибки в программировании. Примеры ошибок в языке Паскаль
- •Выполнение программы. Ключевые кнопки
- •Первые ошибки и их исправление
- •Вызов процедуры из процедуры
- •Работа с файлами. Файловый тип
- •Доступ к файлам
- •Инициация файла
- •Стандартные процедуры и функции для работы с файлами
Различия между циклом - while и циклом – repeat
1) Оператор, находящийся в цикле while, повторяется до тех пор, пока условие истинно. Последовательность операторов, находящихся в цикле repeat, повторяется до тех пор, пока условие ложно.
Следовательно, в цикле while используется условие продолжения цикла, а в цикле repeat - условие окончания цикла.
2) В цикле while повторяется один оператор (несколько операторов надо объединять в составной оператор с помощью операторных скобок begin ... end), а в цикле repeat можно повторять несколько операторов без операторных скобок.
3) В цикле while сначала проверяется условие, а после этого в зависимости от значения условия выполняется или не выполняется оператор или группа операторов после слова do.
4) В цикле repeat последовательность операторов выполняется один раз, а после этого проверяется условие, т. е. эта последовательность всегда выполняется хотя бы один раз, а в цикле while операторы, составляющие тело цикла могут вообще не выполняться ни одного раза.
Циклы с параметрами. Операторы for...To...Do... И for...Downto...Do...
Иногда заранее известно, сколько раз должен выполняться цикл. Для задач такого типа в языке Паскаль имеются операторы циклов с параметрами.
Формат записи таких операторов следующий:
for <пар.цикла> := <нач.знач> to <кон.знач.> do <оператор>.
Здесь for, to, do - зарезервированные слова (для, до, выполнить);
<пар. цикла> - параметр цикла - переменная типа integer (точнее, любого порядкового типа);
<нач. знач.> - начальное значение - число или выражение того же типа;
<кон. знач.> - конечное значение - число или выражение того же типа;
<оператор> - произвольный оператор Паскаля.
Если операторов несколько, тогда, как и в операторе while ... do ..., используются операторные скобки: begin ... end.
Например, возможны такие записи оператора цикла:
for i := a to b do s1;
for j := a to b do begin s1; s2; ..., sn end; или
for k := p to m do
begin
s1;
s2;
...
sn
end;
Здесь s1, s2, s3, ... sn - операторы цикла.
При выполнении оператора for вначале вычисляется выражение <нач .знач.> и осуществляется присваивание его значения переменной цикла
<пар .цикла> := <нач. знач.>.
После этого циклически повторяются:
1) проверка условия <пар .цикла> <кон. знач.>; если условие не выполнено, оператор for завершает работу;
2) выполнение оператора <оператор> или операторов s1; s2; s3; ... sn;
3) переменная цикла <пар. цикла> увеличивается на единицу.
Надо сразу заметить, что задать шаг цикла, отличный от 1 в этом операторе, нельзя.
Существует другая форма оператора цикла for:
for <пар .цик.> := <нач. зн.> downto <кон. зн.> do <оператор>.
Замена зарезервированного слова to на downto означает, что шаг параметра цикла равен (-1).
Изменение значения параметра идет от большего значения к меньшему, т. е. <нач. знач.> <кон. знач.>.
Графическое изображение циклов for будет таким:
Здесь: p - переменная цикла; n - ее начальное значение; k - ее конечное значение. Тело цикла составляет оператор или несколько операторов: s1; s2; ... sn;, которые нарисованы в прямоугольнике.