Программы циклической структуры это

Презентация на тему: » Организация программ циклической структуры. Виды циклов: Цикл с предусловием (while) Цикл с постусловием (repeat) Цикл с параметром (for)» — Транскрипт:

1 Организация программ циклической структуры

2 Виды циклов: Цикл с предусловием (while) Цикл с постусловием (repeat) Цикл с параметром (for)

3 Цикл с параметром Как работает цикл: Сначала переменной i присваивается первоначальное значение In, затем значение i сравнивается с конечным значением Ik и если In

4 Цикл с параметром Первая форма записи (вперед): For i:=In to Ik do ; Вторая форма записи (назад): For i:= In downto Ik do ; тело цикла i:=In;Ik

5 Цикл с параметром Первая форма записи (вперед): For i:=In to Ik do begin ; end; Вторая форма записи (назад): For i:= In downto Ik do begin ; end;

6 Задача Вычислить сумму натуральных чисел в интервале от 10 до 20. Вывести на экран данную последовательность и сумму. (Решить тремя способами!)

7 Первый способ (цикл с параметром): Program summa1; Uses crt; Var i,S:integer; Begin clrscr; S:=0; for i:=10 to 20 do begin S:=S+i; write(i:4); end; writeln; writeln(‘S=’,S); readln; End.

ПРИЛОЖЕНИЕ(СОЗДАНИЕ ПСЕВДОКОДА И ПРОГРАММЫ НА ЯЗЫКЕ PASCAL ЦИКЛИЧЕСКОЙ СТРУКТУРЫ С ПАРАМЕТРОМ

8 Цикл с предусловием (пока) Как работает цикл: Выполнение оператора цикла с предусловием начинается с проверки условия, записанного после слова while. Если оно соблюдается (true), то выполняется, затем вновь проверяется условие и т.д. Как только при очередной проверке окажется, что условие не соблюдается (false), выполняться не будет. В теле цикла обязательно должен быть оператор, влияющий на соблюдение условия, и противном случае произойдет зацикливание. Если тело цикла содержит 2 и больше операторов, то оно заключается в операторные скобки begin … end.

9 Цикл с предусловием (пока) While do ; Нет тело цикла условие Да While do begin ; end;

10 Задача Вычислить сумму натуральных чисел в интервале от 10 до 20. Вывести на экран данную последовательность и сумму. (Решить тремя способами!)

11 Второй способ (цикл с предусловием): Program summa2; Uses crt; Var i,S:integer; Begin clrscr; S:=0; i:=10; while i

12 Цикл с постусловием (до) Как работает цикл: Последовательность операторов, входящих в тело цикла, выполняется один раз, после чего проверяется соблюдение условия, записанного следом за служебным словом until. Если условие соблюдается (true), цикл завершается. В противном случае – тело цикла выполняется еще раз, после чего снова проверяется соблюдение условия. Т.к. тело цикла находится между служебными словами repeat … until, то операторные скобки не требуются.

13 Цикл с постусловием (до) Repeat ; Until ; Нет тело цикла условие Да

14 Задача Вычислить сумму натуральных чисел в интервале от 10 до 20. Вывести на экран данную последовательность и сумму. (Решить тремя способами!)

15 Третий способ (цикл с постусловием): Program summa3; Uses crt; Var i,S:integer; Begin clrscr; S:=0; i:=10; repeat S:=S+i; write(i:4); i:=i+1; until i>20; writeln; writeln(‘S=’,S); readln; End.

СОЗДАНИЕ ПСЕВДОКОДА И ПРОГРАММЫ ЦИКЛИЧЕСКОЙ СТРУКТУРЫ

16 Определить, значения переменных после выполнения фрагмента программы. Сколько раз выполнится цикл. y:=2; x:=20; while x>10 do begin x:=x–3; y:=y-x; end;

17 Определить, значения переменных после выполнения фрагмента программы. Сколько раз выполнится цикл. y:=1; for x:=1 to 5 do y:=y+x;

18 Определить, значения переменных после выполнения фрагмента программы. Сколько раз выполнится цикл. y:=1; x:=10; repeat y:=y*x; x:=x–2; until x

19 Изменим условие задачи (задание дается всем группам). Вычислить сумму натуральных чисел чётных и нечётных чисел в интервале от 10 до 20. На экран вывести последовательности чисел и их суммы. Задание решить с использованием любого цикла.

Читайте также:
Программа которая скачивает видео с фейсбука

20 Задача 1. Дано натуральное число n. Вычислить сумму: 1/2+2/3+3/4+…+n/(n+1). Задача 2. Составить программу для нахождения суммы квадратов цифр целого числа Задача 3. Составить программу планирования закупки товара в магазине на сумму, не превышающую заданную величину

21 Контрольные вопросы (задаются всем группам): 1. Что такое цикл? 2. Какие виды циклов существуют в Паскале? 3. Как работает цикл с параметром? 4. Как выполняется цикл с предусловием? 5. Как работает цикл с постусловием?

6. Чем отличаются циклы с условием?

22 Домашнее задание: Конспект. Задача. Вычислить сумму ряда чисел: 5, 7, кратных 5. На экран вывести последовательности чисел и их сумму. Задание решить с использованием каждого цикла. Сколько раз выполняется каждый цикл.

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

4. Программы циклической структуры

4.1. Средства разработки программ циклической структуры

Программой циклической структуры называют такую программу, в которой операторы могут повторно, при изменяющихся значениях переменных выполняться несколько раз, образуя цикл . Различают следующие виды циклов (для их организации используются специальные сложные операторы — операторы циклов) : цикл с заданным числом повторений или цикл с параметром (операторы цикла for ) , цикл с предусловием (оператор цикла while ), цикл с постусловием (оператор цикла do while ). В циклах можно выделить управляющие части, определяющие начало и условия выполнения цикла, и тело цикла — части из одного оператора или блока, выполняющие необходимые преобразования данных. Цикл называют простым , если в его теле нет других циклов.

Цикл с параметром (for)

Структура оператора цикла for описывается синтаксической диаграммой for ( Сп1 ; W ; Сп2 ) Oп где используются следующие обозначения: Сп1 – список операторов присваивания, задающих начальные значения одной или нескольким переменным — параметрам цикла , которые могут испольльзоваться в выражении W и других частях цикла. Список может отсутствовать, если параметры получили требуемые значения до входа в цикл.

W – выражение, вычисляемое перед передачей управления в тело цикла, если его значение «истина» (не ноль), или следующему за циклом оператору, если его значение «ложь» (ноль). Выражение может отсутствовать, если выход из цикла организован в его теле, например, с помощью оператора break (см. ниже). Сп2 – список операторов, задающих новые значения одному или нескольким параметрам цикла. Он может отсутствовать, если значения параметров цикла изменяются, при необходимости, в теле цикла. Оп — тело цикла, в качестве которого должен использоваться или блок, или один оператор, возможно, пустой. Ю. Е. Алексеев, А. В. Куров «Практикум по программированию на языке C в среде VS C++» Оглавление

68 Алгоритма выполнения цикла представляет следующая схема Например, в программе #include «stdafx.h» #include «math.h» int _tmain( int argc, _TCHAR* argv[]) < int i; for (i=0; i<=6; i++) printf( «%10d%8.2fn» ,i*10,sin(3.14/18*i)); return 0; >оператор printf будет выполняться 7 раз при значениях параметра целого типа i, изменяющемся от 0 до 6 с шагом 1. На экран будет выведена таблица, в первом столбце которой будут целые числа 0, 10, 20, …, 60, представляющие величины углов в градусах, а во втором – соответствующие им значения синуса: 0 0.00 10 0.17 20 0.34 30 0.50 40 0.64 Ю. Е. Алексеев, А. В. Куров «Практикум по программированию на языке C в среде VS C++» Оглавление

69 50 0.77 60 0.87 Параметром цикла for может быть и вещественная переменная, а при наличии в списках Сп1 и Сп2 нескольких операторов они будут выполняться в порядке слева направо, как в следующем примере int i; float r; . . . for (i=1, r=-1.0; i

70 printf ( «%10d%8.4fn» ,i,r); r/=-i-1; > В общем случае условие выхода из цикла может строиться на основе переменных, изменяющих свои значения в теле цикла, а не в заголовке цикла for . Например, в последнем фрагменте программы заголовок цикла можно заменить следующим for (i=1; fabs(r)>0.0013; ++i)

Читайте также:
Что такое сетевая версия программы

Цикл с предусловием (while)

Цикл с постусловием (do while)

Структура оператора цикла do while описывается синтаксической диаграммой

do Oп while ( W ) ;

Ю. Е. Алексеев, А. В. Куров «Практикум по программированию на языке C в среде VS C++» Оглавление

71 Внутри такого цикла может находиться либо один оператор, либо блок, который будет выполняться один или более раз до получения выражением W значения ноль («ложь»).. Например, такую же таблицу, что и в первом примере с применением оператора for , будет выводить следующий фрагмент программы: i=0; do < printf( «%10d%8.2fn» ,i,sin(3.14/180*i)); i=i+10; >while (i<=60); Существует возможность и досрочного выхода из любого цикла, организованного рассмотренными операторами, либо с помощью оператора безусловного перехода goto (их мы не будем использовать), либо с помощью оператора break . В теле любого из рассмотренных циклов допускается использовать оператор continue . Его действие сводится к тому, что сразу происходит переход к очередному выполнению тела цикла (в циклах f o r с очередным значением параметра), или выход из цикла, если выполнено условие его завершения. Следующий пример — на использование операторов break и continue . . . #include «conio.h» . . . int d,i; . . . d=0; for (i=1; i<=3; ++i) < printf(Ruc( «nВведите перввый символ пароля: » )); if (getch() != ‘a’ ) //getch требует #include «conio.h» continue ; printf(Ruc( «nВведите второй символ пароля: » )); if (getch() == ‘b’ ) < Ю. Е. Алексеев, А. В. Куров «Практикум по программированию на языке C в среде VS C++» Оглавление

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

Средства разработки программ циклической структуры

Программой циклической структуры называют такую программу,в которой опе-раторы могут повторно, при изменяющихся значениях переменных выполняться не-сколько раз, образуя цикл. Различают следующие виды циклов (для их организации ис-пользуются специальные сложные операторы — операторы циклов):

цикл с заданным числом повторений или цикл с параметром (операторы циклаfor ), цикл с предусловием (оператор циклаwhile),

цикл с постусловием (оператор циклаdo while).

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

Цикл с параметром (for)

Структура оператора цикла for описывается синтаксической диаграммой for ( Сп1 ; W ; Сп2 ) Oп

где используются следующие обозначения:

Сп1 – список операторов присваивания, задающих начальные значения одной или нескольким переменным — параметрам цикла, которые могут испольльзоваться в выра-жении W и других частях цикла. Список может отсутствовать, если параметры получили требуемые значения до входа в цикл.

W – выражение, вычисляемое перед передачей управления в тело цикла, если его значение «истина» (не ноль), или следующему за циклом оператору, если его значение «ложь» (ноль). Выражение может отсутствовать, если выход из цикла организован в его теле, например, с помощью оператора break (см. ниже).

Сп2 – список операторов, задающих новые значения одному или нескольким па-раметрам цикла. Он может отсутствовать, если значения параметров цикла изменяются, при необходимости, в теле цикла.

Оп — тело цикла, в качестве которого должен использоваться или блок, или один оператор, возможно, пустой.

«Практикум по программированию на языке C в среде VS C++»

Алгоритма выполнения цикла представляет следующая схема

Например, в программе

#include «stdafx.h» #include «math.h»

int _tmain(int argc, _TCHAR* argv[])

оператор printf будет выполняться 7 раз при значениях параметра целого типа i, изменяющемся от 0 до 6 с шагом 1.

На экран будет выведена таблица, в первом столбце которой будут целые числа 0, 10, 20, …, 60, представляющие величины углов в градусах, а во втором – соответствую-щие им значения синуса:

«Практикум по программированию на языке C в среде VS C++»

Параметром цикла for может быть и вещественная переменная, а при наличии в списках Сп1 и Сп2 нескольких операторов они будут выполняться в порядке слева на-право, как в следующем примере

Читайте также:
Программа кто лучше дети

Результатом выполнения этого фрагмента программы будет таблица

В приведенном примере переменная i является основным параметром цикла, оп-ределяющим условие выхода из него, а переменная r – дополнительным параметром цикла, изменялись синхронно с i, но по закону геометрической прогрессии.

При наличии в первом и последнем разделах заголовка цикла for нескольких операторов (как в рассмотренном примере) они должны разделяться знаком «запятая», и выполняться будут в порядке слева направо. Это позволяет сделать компактное описание цикла, возможно, в ущерб пониманию алгоритма. Для улучшения читаемости алгоритма лучше вынести все работы, связанные с собственно обработкой данных, а не организа-цией цикла, за пределы его заголовка, разместив соответствующие операторы в теле цикла и, если требуется, до входа в цикл. Для рассмотренного примера это выглядело бы так

«Практикум по программированию на языке C в среде VS C++»

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

for (i=1; fabs(r)>0.0013; ++i)

Цикл с предусловием (while)

Структура оператора цикла while описывается синтаксической диаграммой while ( W ) Oп

где используются следующие обозначения: W – выражение,

Oп – тело цикла — оператор или блок, выполняемый внутри цикла.

Например, фрагмент программы i=0;

буде выполнять ту же работу, что и в первом из предыдущих примеров на опера-тор for.

Цикл с постусловием (do while)

Структура оператора цикла do while описывается синтаксической диаграммой

do Oп while ( W ) ;

«Практикум по программированию на языке C в среде VS C++»

Внутри такого цикла может находиться либо один оператор, либо блок, который будет выполняться один или более раз до получения выражением W значения ноль («ложь»).. Например, такую же таблицу, что и в первом примере с применением опера-тора for, будет выводить следующий фрагмент программы:

Существует возможность и досрочного выхода из любого цикла, организованного рассмотренными операторами, либо с помощью оператора безусловного перехода goto (их мы не будем использовать), либо с помощью оператора break.

В теле любого из рассмотренных циклов допускается использовать оператор continue. Его действие сводится к тому, что сразу происходит переход к очередному выполнению тела цикла (в циклах for с очередным значением параметра), или выход из цикла, если выполнено условие его завершения.

Следующий пример — на использование операторов break и continue

printf(Ruc(«nВведите перввый символ пароля: «));

if (getch()!= ‘a’) //getch требует #include «conio.h» continue;

printf(Ruc(«nВведите второй символ пароля: «)); if (getch() == ‘b’)

«Практикум по программированию на языке C в среде VS C++»

printf(Ruc(«nОшибка! Работа программы будет завершена.n»)); return 0;

printf(Ruc(«nВы допущены к работе с программой. n»));

В этом примере программа предоставляет три попытки ввода пароля из двух сим-волов при запуске в режиме без отладки (DebugStart Without Debugging). Ввод символа выполняется функцией getch(), требующей испоьзования директивы #include «conio.h». Функция возвращает символ нажатой клавиши без его отображения в окне программы. При ошибке ввода первого символа оператором continue происходит пе-реход к очередному выполнению тела цикла – повторному вводу первого символа паро-ля. Если первый символ введён правильно, а второй – нет, то очередная попытка ввода пароля также начинается с ввода первого символа.

Если за три попытки не удалось правильно ввести пароль (переменная d после выхода из цикла сохранила значение 0), то программа выводит сообщение «Ошибка! Работа программы будет завершена.» и завершает работу.

При успешном вводе пароля на любом шаге выполнения тела цикла переменная d получит значение 1, произойдёт выход из цикла по оператору break и пользователь по-

лучит сообщение «Вы допущены к работе с программой.»

Воспользуйтесь поиском по сайту:

studopedia.org — Студопедия.Орг — 2014-2023 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с) .

Источник: studopedia.org

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