Доброго времени суток,
В данном уроке мы с вами разберём циклы в Pascal'е и рассмотрим примеры.😊
Если вам покажется статья скучной на вид, что мало картинок и сложно воспринимать информацию через текст, то пишите в комментарии👇, в следующих я буду больше добавлять картинок😉
- Определение;
- Циклы с предусловием(while) и постусловием (repeat);
- Цикл с параметром(for);
- Практика c for;
- практика с while;
- практика с repeat;
- Объединим цикл с for и repeat;
Определение
Циклы в "Паскале" - это алгоритм действий который выполняется определенное количество раз. Циклы в "Паскале" состоят из заголовка и тела. В Заголовке задается количество повторений цикла, а в теле цикла прописывается непосредственное действие которое нужно исполнить. В "Паскале" существует три вида циклов - цикл с параметром, цикл с предусловием, цикл с постусловием.
Вот как они выглядят в иллюстрации:
Циклы с предусловием(while) и постусловием (repeat)
Различие цикла с предусловием и постусловием в том, что цикл с предусловием сначала проверяет условие и в зависимости от него заходит в тело цикла или нет.
Т. е. если наше условие возвращает ложь(false/ как мы знаем условный оператор это логическая функция и возвращает числовое значение 1 для истины и 0 для ложь), то программа даже не зайдёт в тело цикла.
А цикл с постусловием в любом случае, хотя бы один раз, выполнит тело цикла, а уже потом проверит условие на истинность.
Короче, в предусловии условие стоит Перед телом, а в постусловии условие После тела.
Прошу заметить при каких значениях условия, программа выходит из циклов, в предусловии программа продолжает цикл, если условие истинно, выходит из цикла, если ложно,
А в постусловии программа продолжает, если условие ложно.
Цикл с параметром(for)
Часто цикл for называют циклом со счетчиком. В Pascal этот цикл используется, когда число повторений не связано с тем, что происходит в теле цикла. То есть количество повторений известно заранее.
В заголовке цикла указываются два значения. Первое значение присваивается так называемой переменной-счетчику, от этого значения начинается отсчет количества итераций (повторений). Отсчёт идет с шагом равным единице. Второе значение указывает, при каком значении счетчика цикл должен остановиться. В Pascal тело цикла for не должно содержать выражений, изменяющих счетчик.
Цикл for существует в двух формах:
for счетчик := начало to конец do тело;
for счетчик := начало downto конец do тело;
Если между начальным и конечным значением счетчика указано ключевое слово to, то при каждом шаге цикла значение счётчика будет увеличиваться на единицу. Если же указано downto, то значение счётчика будет уменьшаться на единицу.
Практика c for
Точно также и с downto.
практика с while
ЕСЛИ изначально задать sum значение 100, то тело цикла не будет выполянться.
С начала делаем условие while, затем тело цикла.
Вывожу текст в кавычках, и "+sum" без кавычек,
т.к. хочу чтобы программа вывела мне число sum, а не просто текст "+sum"
далее через readln получаем от пользователя число,
затем прибавляем его к sum, и чтобы было наглядно видно,
что всё работает выводим текст результат, какое значение теперь у нас в sum хранится.
Думаю довольно просто.
сделаем цикл c repeat с подобным примером.
практика с repeat
В данном примере, какое бы число мы не установили sum изначально к примеру 150, в тело цикла наша программа всё равно зайдёт и допустим прибавим 50, выведет нам 200 и закончит цикл.
Т.е. на входе 150, заходит в программу>>Прибавит число 50>> выведет нам 200.
Объединим цикл с for и repeat
Объяснение:
У нас объявляется натуральная переменная sum равная 0.
Затем открывается/объявляется цикл с параметром for,
самое интересное на что следует обратить внимание тем, кто имеет мало опыта в программировании или только начинает его изучать, что в прошлых примерах после начала цикла у нас не было begin, а это нам необходимо в данном случае для того, чтобы определить границы цикла.
Т.е. если мы уберём этот begin и end, то у нас программа объявит переменную sum 5 раз и на этом завершится(а мы ничего и не заметим), т.к. если не поставить begin и end в pascal'е или фигурные скобки в других языках, то цикл выполнит только первое действие после объявления цикла.
А нам надо чтобы она ещё и захватила цикл repeat.
Думаю с этим разобрались.
Далее у нас программа заходит в цикл с постусловием и выходит из него,
только когда сумма больше 100,
При 100 ещё заходит, т.к. мы не поставили условие на больше или равно.
Можно также в данном примере добавить, чтобы пользователь сам вводил сколько раз выполнить сложение.🤷♂️
-Спасибо, что дочитали данную статью до конца, Надеюсь, она была вам полезна. Также если что-то осталось не разобранным и непонятным - пишите в комментарии. Подписывайтесь, дальше будет ещё интереснее.