Циклические программы на паскале примеры

Для многократного повторения одних и тех же действий в ТР предусмотрены три оператора цикла:

1) счетный оператор цикла (оператор цикла с параметром) — FOR

2) оператор цикла с предусловием — WHILE

3) оператор цикла с постусловием – REPEAT

Если число повторений цикла (или итераций) заранее неизвестно, однако известно условие завершения цикла, в таких случаях примеряются операторы WHILE и REPEAT.

Если число повторений известно, то применяется оператор FOR.

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

Счетный оператор цикла FOR реализует циклический процесс с известным числом повторений, и имеет две формы записи:

Первая форма позволяет наращивать параметр цикла на единицу:

— это переменная целого либо любого порядкового типа, и значения — это выражения, определяющие соответственно начальное и конечное значения параметра цикла.

Циклические программы в Паскале 8 класс

Их типы должны быть совместимыми для присваивания с параметром цикла.

Вторая форма позволяет уменьшать на единицу значение параметра цикла:

Если начальное значение превышает (или не превышает во второй форме) или равно конечному значению с самого начала, (стоящий после DO) не выполнится ни разу.

Вот примеры оператора цикла с параметром:

Источник: studfile.net

1. Циклические алгоритмы

Чтобы найти сумму, нужно выполнить алгоритм (20) раз. Обозначим слагаемое через (i) и на каждом повторе будем добавлять в переменную (S). Запишем программу.

1.jpg

Рис. (1). Программа на Pascal

2.jpg

Рис. (2). Программа на Python

Примечание: в программном коде на Python в строке for i in range указываем (21), т. к. последнее число в заданный диапазон не входит.

Добавим в программу условие, например: нужно сложить не все цифры диапазона, а только чётные. Условие проверяет чётность числа.

Читайте также:
Как обновить программу видео

3.jpg

Рис. (3). Программа на Pascal

4.jpg

Рис. (4). Программа на Python

Усложним условие: дан ряд из (N) чисел, посчитать количество чисел, кратных (5) и не кратных (3).

5.jpg

Паскаль с нуля [ч6]. Циклы. While, repeat-until, for.

Рис. (5). Программа на Pascal

6.jpg

Рис. (6). Программа на Python
Циклы с условием

В Pascal используются циклы с постусловием (repeat. until) и предусловием (while), а в Python используется только while.

В чём отличие?

Цикл repeat… until — цикл, в котором серия команд повторяется, пока не выполнено условие, а в цикле while серия команд выполняется, пока выполняется условие.
В цикле while серия команд может не выполниться ни разу, в цикле repeat такого произойти не может — хоть раз, но выполнится.
В Python нет цикла repeat, но его можно организовать с помощью цикла while, например так:

7.jpg

Рис. (7). Программа с использованием постусловия

While True будет выполняться бесконечно, но при вводе с клавиатуры числа больше (0) цикл закончится.


Рассмотрим задачу: определить количество чётных цифр в числе.

Составим алгоритм решения задачи.

1. Вводим число.
2. «Отсекаем» последнюю цифру числа ((a)(:) (= x) (mod) (10)).
3. Проверяем: если цифра чётная ((if) (a) (mod) (2 = 0) (then) (k)(:) (= k + 1)), то добавляем в переменную, например (k), единицу ((k)(:) (= k + 1)).
4. Уменьшаем количество цифр на одну, команда (x) (div) (10) уменьшает число на (1) разряд.
5. Повторяем цикл, пока есть цифры в числе ( while (x > 0) (do)).

8.jpg

Рис. (8). Программа на Pascal

9.jpg

Рис. (9). Программа на Python
Решение задачи «Как на ЕГЭ» № (17)

Рассматривается множество целых чисел, принадлежащих полуинтервалу ((1310; 13154]), которые делятся на (3) и не делятся на (9, 11, 19).

Найди количество таких чисел и разницу между максимальным и минимальным числом.
Составим алгоритм решения.

1. Для решения будем использовать цикл for, диапазон от (1311) (круглая скобка) до (13154) включительно.
2. С помощью определения остатка от деления находим количество чисел, кратных (3) и не кратных (9), (11), (19).
3. Найдём максимальное число, которое попадает под условие (максимальным будет число, которое попадает под условие позже всего).
4. Найдём минимальное число, которое попадает под условие (минимальное число можно найти, «прокрутив» последовательность в обратном порядке).
5. Найдём разницу между минимальным и максимальным числом.

Читайте также:
Как вышивать с компьютера программой pattern maker

Источник: www.yaklass.ru

Циклы в языке Pascal. Цикл for

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

Дом — работа — дом, или дом — учеба — дом. Жизнь цикличная штука. Но не о философии родимой сейчас. Сейчас у нас циклы на языке Паскаль.

1. Виды циклов

В нашем с вами языке программирования существуют три вида циклов:

Прочитайте. Забудьте. Сейчас объясню по человечески.

Итак. Отсеем лишнюю информацию. Три цикла — С постусловием, с предусловием, с параметром. Эти названия можете не запоминать, в программировании они не нужны, серьезно.

Цикла три, да. Цикл Repeat можете из своего программистского лексикона сразу вычеркнуть. Обычно не существует таких задач, которые не решались бы двумя основными циклами Фор и Вайл. Более того, в остальных языках программирования, бывает, даже нет эквивалента циклу Репит , забавно.

От Вайла Репит отличается только тем, что выполнится как минимум один раз (Вайл не выполнится ни разу если условие не верное).

Сегодня мы познакомимся с циклом For и его синтаксисом в виде коротенького примера.

2. Как работает цикл For

2.1 Переменные

Как только вы зададите условие цикла и запустите программу она выполнит код, находящийся до цикла. Ну а потом начнет мотать его столько раз, сколько вы задали. С этим стоит быть осторожным, потому что можно создать бесконечный цикл, который будет работать до того момента, пока не съест всю оперативную память вашего компьютера. Благо, программу можно в любую секунду отключить, не критично, одним словом.

Читайте также:
Игровая программа это комплекс игр разных видов объединенных общим сюжетом

Объявляем переменные

Зададим две переменные. Переменная i служит для цикла Фор, чуть позже увидите каким образом. Переменная sum — для подсчета витков цикла.

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

2.2 Конструкция For

Конструкция цикла

Вот здесь мы и используем переменную i. Конечно, не обязательно использовать именно такое название переменной, но в среде программистов, обычно, именно переменная i зарезервирована для циклов. Ну и еще j . Но это уж дальше разберемся. Просто привыкните к этому нестрогому правилу, легче потом будет.

Теперь разберем синтаксис:

i берет себе значение по очереди, начиная от 1 до 100 в этом цикле. Значения и диапазоны, разумеется, могут быть различны. Важное правился именно в цикле Фор — шаг цикла (один проход от begin до end внутри цикла) равен единице. Тоесть в нашем случае у цикла будет 100 шагов.

На счет begin и end — все так же как и в конструкции If — если действий внутри цикла несколько — ставить их обязательно, иначе программа будет работать не так, как вы хотите.

В нашем же цикле мы просто присваиваем переменной Sum каждый раз значение, большее на 1. Тоесть например в 5-м проходе цикла Sum будет равна 5, значит код будет выглядеть так: Sum := 5 + 1 . Ну и потом, для наглядности, печатаем эту переменную.

Источник: dzen.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru