"Оператор цикла с условием в Pascal"
план-конспект урока по информатике и икт по теме

Баринова Лидия Анатольевна

Данная презентация может быть использована при изучении в языке программирования Pascal оператора цикла с условием.

Скачать:

ВложениеРазмер
Файл tsikly_s_usloviem_na_pascal.pptx310.84 КБ

Предварительный просмотр:


Подписи к слайдам:

Слайд 1

Тема урока: Циклы с условием

Слайд 2

Оператор цикла с предусловием Формат оператора : while < условие > do < оператор > Тело цикла Условие да нет Здесь while ( пока ) и do (выполнить ) --- служебные слова. < условие > - логическое выражение; пока оно истинно, выполняется тело цикла; < оператор > - простой оператор , с помощью которого записано тело цикла. while < условие > do begin операторы циклической части программы end; или:

Слайд 3

Оператор цикла с предусловием while < условие > do begin операторы циклической части программы end; Выполнение оператора: 1). Вычисляется логическое выражение и проверяется условие. 2). Пока значение логического выражения истинно выполняются операторы циклической части. 3). Как только оно становится ложным , происходит выход из цикла . Если с самого начала значение логического выражения ложно, то операторы циклической части не выполняются ни разу. Возможен случай, когда в циклической части стоит оператор перехода ( goto ) , передающий управление за пределы цикла. В такой ситуации цикл может завершится до его естественного окончания.

Слайд 4

Задача 1 Мой богатый дядюшка подарил мне один доллар в мой первый день рождения. В каждый следующий день рождения он удваивал свой подарок и прибавлял к нему столько долларов, сколько лет мне исполнилось. Рассмотрим программу, указывающую, к какому дню рождения подарок превысит 100$. program PODAROK ; var i , S : integer ; begin i:=1; S:=1; while S< = 100 do begin i:= i+1; S:=S*2+i end ; writeln ( ' сумма = ‘, S ) writeln ( ' количество лет = ‘, i ) end .

Слайд 5

Задача2 Перед вами программа вычисления суммы элементов ряда: Вычисления заканчиваются , когда очередное слагаемое становится меньше 0.05 1 / N>0.05 да S=S+1 / N N=N+1 N=1, S=0 нет печать S , N Блок-схема: Program SUMMA; var S: real; N: integer ; begin S:=0; N:=1; while 1 / N>0.05 do begin S:= S+1 / N; N:=N+1 end; writeln ( ' Сумма = ', S:10:9) end.

Слайд 6

Задача 3 Проанализируем алгоритм вычисления суммы ряда: представленный в виде блок-схемы. Вычисления будут закончены, когда очередное слагаемое станет меньше числа 0,001 . Блок-схема :

Слайд 7

Program SUMMA; var s: real; n: integer ; begin s :=0; n:= 1; while n /((n+1)*(n+4)) >=0.001 do begin S := S + n / ((n+1)*(n+4 )); n := n + 1 end ; writeln ( ' Сумма = ', s); end. Задача 3 Перед вами программа вычисления суммы ряда : Вычисления заканчиваются тогда, когда очередное слагаемое становится меньше числа 0,001 .

Слайд 8

program fact; VAR Factorial , N: Integer ; BEGIN Factorial := 1; { стартовое значение факториала =0! } N := 1; { стартовое значение для условия цикла } WHILE N<=10 DO { заголовок цикла, условие } begin { начало тела цикла } Factorial := Factorial*N; { вычисление факториала N! } N := N + 1 {N должно меняться в цикле} end; { конец тела цикла } WriteLn (’10!= ’,Factorial); { вывод результата} END. Задача4 Рассмотрим алгоритм вычисления факториала: 10! = 1·2·3·4·5·6·7·8·9·10 с помощью программы :

Слайд 9

Задача5 Наша задача усложняется. Нужно вычислить сумму: S=1+1/2 !+1/3!+...+1/N ! (при целом N>0 ). Program SUMMA; var s , f: real; i , n: integer ; begin write ( ' Введи N= '); readln (n ); s:=1 ; f :=1 ; i:= 2; while i <= n do begin f :=f*i; s := s+1/f end; writeln ( ' Сумма = ',s:10:9); end. В этой задаче в одном цикле объединено нахождение суммы и вычисление факториала очередного слагаемого.

Слайд 10

Задача 6 Рассмотрим программу нахождения наибольшего общего делителя ( NOD ) двух целых чисел : M и N по алгоритму Евклида. program Evklid ; var M, N, NOD: integer; begin writeln ( 'Введите два числа ' ); readln (M, N); while M<>N do if M>N then M:=M-N else N:=N-M; NOD := M ; writeln 'НОД = ', NOD ); end. Начало Ввод M и N M  N N=N-M M=M-N M  N нет да да нет Вывод M Конец

Слайд 11

Здесь: repeat ( повторить ) и until ( до тех пор пока ) -- служебные слова. < оператор1 >; < оператор2 >; … - операторы, образующие тело цикла; < условие > - логическое выражение; если оно ложно, то выполняется тело цикла. Тело цикла Условие да нет Оператор цикла с последующим условием Формат оператора: repeat < оператор1; оператор2; …; > until < условие >

Слайд 12

Оператор цикла с предварительным условием Выполнение оператора: 1) . Операторы циклической части ( оператор1; оператор2; …; ) выполняются один раз, затем проверяется логическое условие. 2). Если логическое условие ложно , то снова повторно выполняются операторы циклической части. 3). Условием прекращения циклических вычислений является истинное значение логического выражения после UNTIL . Следует подчеркнуть , что нижняя граница операторов циклической части четко обозначена словом UNTIL , поэтому нет надобности заключать операторы циклической части в скобки вида BEGIN --- END . В то же время и дополнительное наличие скобок не является ошибкой . repeat < оператор1; оператор2; …; > until < условие >

Слайд 13

Задача7 Рассмотрим программу вычисления и печати элементов последовательности , каждый из которых вычисляется по формуле : где n – порядковый номер элемента. Вычисления продолжаются пока  x n +1 – x n  > 0.001 . Программа: Program progr ; var A, B: real; n: integer ; begin n:=1; A := (2*n – 1)/(2*n ); n:=n+1; B = (2*n – 1)/(2*n) repeat writeln (‘ элемент= ', A, ‘ его номер= ‘, n-1); A := (2*n – 1)/(2*n); n:=n+1; B = (2*n – 1)/(2*n ); until ABS (A - B) < 0.001; readln ; end .

Слайд 14

Для решения одной и той же задачи могут быть созданы разные программы, например, для следующей задачи: Составить программу, которая организует ввод целых чисел и подсчёт количества введённых положительных и отрицательных чисел. Ввод должен осуществляться до тех пор, пока не будет введён ноль. В задаче в явном виде задано условие окончания работы. Воспользуемся оператором repeat ( повторить ) Различные варианты программирования циклического алгоритма

Слайд 15

program n_17; var n, k1, k2: integer ; begin k1:=0 ; k2 :=0; repeat write ('Введите целое число>>'); readln (n); if n>0 then k1:=k1+1; if n<0 then k2:=k2+1; until n=0 ; writeln ('положительных чисел – ', k1 ); writeln ('отрицательных чисел – ', k2 ) end . да нет Ввод n n > 0 Начало Список данных n, k1, k2 - цел n < 0 n = 0 Вывод k1 , k2 Конец k1:= 0 k2 :=0 k1:=k1+1 k2:=k2+1 да да нет нет Подсчет количества положительных и отрицательных чисел.

Слайд 16

Ввод осуществляется до тех пор, пока не будет введён ноль. Работа продолжается, пока n 0. Воспользуемся оператором while : program n_18; var n, k1, k2: integer ; begin k1:=0 ; k2:=0 ; n:= 1 ; while n<>0 do begin writeln ('Введите целое число>>'); read (n); if n>0 then k1:=k1+1; if n<0 then k2:=k2+1; end ; writeln ('положительных – ', k1); writeln ('отрицательных – ', k2) end . да n > 0 да нет Ввод n Начало Список данных n, k1, k2 - цел n <> 0 Вывод k1 , k2 Конец k1:= 0 k2 :=0 n:= 1 k1:=k1+1 k2:=k2+1 нет

Слайд 17

Выучить конспект урока. 2. Задача. Составьте программу , которая напечатает элементы, каждый из которых вычисляется по формуле: где n - порядковый номер слагаемого . Вывод закончить, когда очередной элемент станет меньше числа 0,001 . Задание на дом:


По теме: методические разработки, презентации и конспекты

Урок информатики по теме: Операторы цикла языка Pascal. 10 класс

Здесь предложен урок по теме: операторы цикда языка  Pascal. Данный урок может буть третим/ четтвёртыв по данной теме. Он предусматривает как проверку теоретических знаний обучающихся, так и реше...

Конспект урока информатики в 9 классе "Операторы ввода и вывода в Pascal"

Урок разработан и проведен в рамках районного семинара учителей информатики. Содержит ЦОР сопровождения урока, выполненный в программе E-PUBLISH. К уроку составлена структурно-информационная карта, оц...

Реализация циклического алгоритма в среде Turbo Pascal. Оператор цикла с параметром

Урок по предметной области “Информатика” для 9-10 класса Данный материал  представляет разработку урокапо теме “Реализация циклического алгоритма в среде TurboPascal. Оператор цикла с парам...

"Оператор цикла с параметром в Pascal"

Данная презентация предназначена для изучения оператора цикла с параметром в среде программирования Pascal....

Операторы ввода и вывода в Pascal Abc

Данный материал предназначен для учащихся 7-х классов....

Урок "Графика на языке программирования Pascal. Использование оператора цикла в программах"

Знакомство с оператором цикла с параметром, создание изображений...