Pascal. Циклы.

Цикл – главное средство заставить компьютер много раз сделать одно и то же или похожее. Циклы очень широко применяются в программах, они упрощают работу программиста и компьютера, в Паскале существует три основных типа цикла, это repeat … until, while … do (это условные операторы цикла) и for … to … do (цикл со счетчиком).


Кроме них еще есть Оператор перехода Goto, который сейчас уже редко применяется, поэтому мы здесь его разбирать не будем. Итак, начнем с более простого, оператор цикла for … to … do.

Эта конструкция чаще всего используется, когда заранее известно количество выполняемых операций. Рассмотрим синтаксис. Он выглядит так:

For <Счетчик цикла> := <Начальное значение> … to <Конечное значение>… do <Команды>; 

После слова do можно ставить операторные скобки Begin … End и писать там несколько команд. Давайте разберемся, что здесь что.

Цикл for существует до тех пор, пока счетчик находится в пределах между начального и конечного значений.

Что такое счетчик? Счетчик — это переменная, обязательно, целого типа или символьного типа. Обычно, счетчик программисты обозначают переменной i или j, если i уже использована (вложенные циклы). Итак, вот пример, простейшей программы.

Эта программа просто в цикле выводит числа от 1 до 10, то есть счетчик цикла, который при каждом проходе цикла увеличивается на 1. Вот вторая похожая программа:

Эта программа просто выводит все буквы русского алфавита. Также в Паскале существует цикл For с обратным счетчиком For <Счетчик цикла> := <Начальное значение> … downto <Конечное значение>… do <Команды>; Здесь цикл счетчика уменьшается. Вот пример подобной программы.

Она выведет все четные числа от 20 до -20. Это получается, когда мы умножаем счетчик на 2, он с каждым проходом цикла уменьшается на 1, а выводимое число уменьшается на 2. Вот еще одна программа, в ней мы выведем числа от -5 до 5 в прямом и обратном порядке.

Последняя программа по циклу for. Пусть пользователь задаст число кубиков и длину одной его стороны, а программа выведет объем каждого из них.

Следующий оператор цикла while … do, его называют еще цикл с предусловием While <условие> Do <оператор>. После слова do можно ставить операторные скобки Begin … End и писать там несколько команд. В этом цикле сначала компьютер проверяет истинность условия, стоящего после слова while. Если условие истинно, то выполняется оператор, стоящий после do. Затем снова проверяется истинность условия и в случае истинности снова выполняется этот оператор. И т. д. Если условие ложно, то оператор while прекращает свою работу и компьютер переходит к выполнению следующего оператора. Давайте в цикле выведем все числа от 1 до 10.

Теперь напишем программу, которая будет вычислять квадрат чисел от 20 до 1.

Здесь просто после инициализации переменно а выводится строка с самим числом и его квадратом, после чего с помощью процедуры dec() значение переменной a уменьшается на 1. Вот пример цикла While при работе со строками.

Она просто считает строку и выведет ее на экран, конечно, вывод можно было сделать просто writeln(st); но этот цикл может быть полезен, когда Вам нужно что-то подсчитать с строке или изменить, например, давайте подсчитаем количество цифр. Вот ее код:

Данный алгоритм очень прост. Мы просто заносим все цифры в константу, замечу, что, если вы работаете со строкой, то в константе цифры нужно указывать в одинарных кавычках, иначе будет ошибка несоответствия типов. Теперь перейдем к циклу repeat … until. Его синтаксис таков: Repeat <Фрагмент программы> until <условие>.

Сначала компьютер по очереди выполняет операторы, стоящие после слова repeat, пока не дойдет до слова until, после чего проверяет истинность условия, стоящего после until. Если условие ложно, то компьютер снова по очереди выполняет эти операторы и снова проверяет истинность условия и т.д.

Если условие оказывается истинным, то работа оператора repeat прекращается и компьютер переходит к выполнению следующего по порядку оператора. Заметим, что цикл repeat выполниться всегда хотя бы один раз, независимо от условия, ведь сначала выполняются операторы внутри самого цикла, а только потом проверяется условие.

Вообще, конструкция repeat until переводится с английского как «повторяй до тех пор, пока не…» Напишем программу, которая будет считывать строку от пользователя до тех пор, пока в строке не встретиться точка или количество символом в строке не превысит 20.

Теперь поговорим немного о вложенных циклах. Они используются тогда, когда нужно внутри каждого оператора цикла повторить что-то несколько раз. Давайте напишем программу, которая будет выводить на экран таблицу умножения.

Здесь с помощью вложенность одного цикла for в другой и образуется таблица. Такой алгоритм чаще всего используется, когда нам нужно работать с двумерными массива или массивами строк.


Похожие записи:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля отмечены *