1 / 15

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

Циклы в языке Pascal. Разновидности циклов:. условие. Нет. Да. оператор. Цикл пока (цикл с предусловием). While < условие выхода из цикла > do < оператор >;. Цикл пока. Как работает цикл:

barbie
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Разновидности циклов:

  3. условие Нет Да оператор Цикл пока (цикл с предусловием) While <условие выхода из цикла> do <оператор>;

  4. Цикл пока • Как работает цикл: Сначала проверяется условие и если оно верно, то осуществляется переход к телу цикла. После выполнения операторов тела цикла возвращаемся для проверки условия. Так будет повторяться до тех пор пока условие не станет ложным, после чего цикл прекратит выполняться. • Почему цикл называют «с предусловием»? Потому что прежде чем выполнить тело цикла он проверяет условие… • Если тело цикла содержит 2 и больше операторов, то оно заключается в операторные скобки begin … end.

  5. оператор условие + Да Нет Цикл до (с постусловием) Repeat <операторы> Until <условие выхода из цикла>;

  6. Цикл до (с постусловием) • Как работает цикл: Сначала выполняется тело цикла, после чего осуществляется переход к проверке условия. Если условие ложно, то возвращаемся к выполнению тела цикла. Так будет повторяться до тех пор пока условие не станет верным, после чего цикл прекратит выполняться. • Почему цикл называют сначала «с постусловием»? Потому что в этом цикле условие следует «после» тела цикла. • Т.к. тело цикла находится между служебными словами repeat … until, то операторные скобки не требуются.

  7. Прямой пересчет For i:=N1 to N2 do <операторы;> N2>=N1 Обратный пересчет For i:=N2 downto N1 do <операторы>; N2>=N1 Цикл с параметром

  8. Цикл с параметром • Как работает цикл: Сначала переменной i присваивается первоначальное значение N1, затем значение i сравнивается с конечным значением N2 и если i <= N2, то осуществляется переход к телу цикла. После выполнения тела цикла значение i увеличивается ровно на 1 и опять повторяется сравнение с N2. Так продолжается до тех пор пока значение i не станет больше значения N2. Цикл обратного пересчета работает аналогично с разницей в том, что значение i каждый раз уменьшается на 1 и i>=N1. Если значение i станет меньше значения N1, то цикл прекратит работу. • Если тело цикла содержит 2 и больше операторов, то оно заключается в операторные скобки begin … end.

  9. Задача Гражданин 1 марта открыл счёт в банке,вложив 1000 рублей. Через каждый месяц размер вклада увеличивается на 2% от имеющейся суммы. Определить: • Сумму вклада через один, два, …, двенадцать месяцев.

  10. Описательная часть программы: Program vklad; Var i: integer; a: real;

  11. Математическая модель решения: • Первоначальный вклад а0=1000 • 1 месяц: а1=а0+а0*0,02 • 2 месяц: а2=а1+а1*0,02 • ---------------------------- • 10 месяц: а10=а9+а9*0,02 • Общий случай: an=an-1+an-1*0,02

  12. Алгоритм решения: начало Ввести значение первоначального вклада счётчик - Выполнять тело цикла 12 раз Тело цикла + а=а+а*0,02 Вывести результаты на экран конец

  13. Программа: Цикл с параметром: Program vklad; Var i: integer; a: real; BeginWriteln (‘введите значение первоначального вклада’); Readln (а); For i:=1 to 12 do begin a:= a+a*0,02; writeln (a); end; end.

  14. Цикл до: Program vklad; Var i: integer; a: real; Begin Writeln (‘введите значение первоначального вклада’); Readln (а); i:=1; repeat a:= a+a*0,02; writeln (a); i:=i+1; until i>12; end. Цикл пока: Program vklad; Var i: integer; a: real; Begin Writeln (‘введите значение первоначального вклада’); Readln (а); i:=1; while i<=12 do begin a:= a+a*0,02; writeln (a); i:=i+1; end; end. Программа:

  15. Домашнее задание: Решите задачу используя цикл на ваше усмотрение. • Одноклеточная амёба каждые 3 часа делится на 2 клетки. Определить, сколько будет клеток через 3, 6, 9, …, 24 часа.

More Related