Тема: «Операторы цикла с предусловием и постусловием» 9 класс. Цели: Обучающая: 1. Знакомство учащихся с базовыми алгоритмическими структурами; 2. Научить уч-ся организовывать циклы с предусловием и циклы с постусловием; 3. Использовать циклы при работе с программой. Развивающая: 1. Формирование навыков работы при создании программ, отработать приемы вставки в программу блоков цикла; 2. Формирование у учащихся приемов логического и алгоритмического мышления; 3. Развитие познавательного интереса; 4. Развитие умения планировать свою деятельность. Воспитывающая: 1. Воспитывать необходимость связывать изучение нового материала с уже известными фактами; 2. Воспитывать ответственность за выполняемую работу; 3. Воспитывать аккуратность при выполнении вычислений. Тип урока: получения новых знаний. Формы учебной работы учащихся: фронтальная, индивидуальная работа за ПК. Оборудование: персональные компьютеры (ПК), интерактивная доска, программа PascalABC. Ход урока 1. Актуализация знаний Организационный момент (вступительное слово учителя) 2. Формирование умений и навыков Изучение нового материала Учитель. Циклический алгоритм - описание действий, которые должны повторяться в указанной последовательности несколько раз или пока не выполнится заданное условие. Циклический алгоритм имеет условие и тело цикла. Условие показывает, сколько раз или до каких пор надо повторять действия. Тело цикла содержит последовательность повторяющихся действий. В языке программирования есть два оператора цикла, отличающиеся тем, что в одном из них условие проверяется в начале, а в другом в конце. Цикл с предусловием Учитель. Общий вид: WHILE условие DO тело цикла где - WHILE, DO - зарезервированные слова (пока, выполнять) условие - выражение логического типа тело цикла - операторы яз. Паскаль Выполнение оператора: Если выражение "условие" имеет значение ИСТИНА, то выполняется "тело цикла", следующее за словом DO. В качестве "оператора" может использоваться простой или сложный оператор. Если выражение "условие" имеет значение ЛОЖЬ, то оператор WHILE прекращает свою работу, т.е. не выполняется ни одного раза. Далее учащимся предлагается познакомиться с работой циклической структуры в программе. Пример: Определить значение переменной s после выполнения фрагмента программы. 1. Var 1, s:integer; s:=0; i:=5; while i>2 do i:=i-1; s:=s +i*i; 2. Var i,s: integer; s:=0; i:=5; while i>2 do begin i:=i-1; s:=s +i*i; end; Операторы "тело цикла" выполняется хотя бы один раз, после чего проверяется выражение "условие". Цикл с постусловием Учитель. Общий вид: REPEAT тело цикла UNTIL условие где - REPEAT, UNTIL - зарезервированные слова (повторять, до) "тело цикла" - последовательность операторов "условие" - выражение логического типа Выполнение оператора: REPEAT завершает свою работу. Далее учащимся предлагается познакомиться с работой циклической структуры в программе. Пример: Определить значение переменной s после выполнения фрагмента программы. 1. Var 1.s:integer; s:=0; i:=2; repeat i:=2*i; s:=s +i; until i>5; 2.Var i,s: integer; s:=0; i:=1; repeat i:=2*i; s:=s +i; until i <3; 3. Применение полученных умений и навыков на практике Учитель. Теперь мы перейдем к практической работе за компьютером. 1. Отладить блоки программ за компьютером. Перед учащимися ставится задача вычисления значений функции с применением цикла с предусловием и цикла с постусловием. У= , где х изменяется от1 до 3 шаг 0,5. Цикл с предусловием: uses crt; var x,y:real; begin clrscr; x:=1; while x<=3 do begin y:=sqrt(sqr(x)-1); x:=x+0.5; writeln('y=',y:3:2); end; end. Цикл с постусловием: uses crt; var x,y:real; begin clrscr; x:=1; repeat begin y:=sqrt(sqr(x)-1); x:=x+0.5; end; writeln('y=',y:3:2); until x>3; end. 4. Подведение итогов. Выставление оценок 5. Домашнее задание Вычислить значение функциивычисления значений функции с применением цикла с предусловием и цикла с постусловием: У=1/Х, где X изменяется от 1 до 3 шаг 0,3. Цикл с предусловием: uses crt; var x,y:real; begin clrscr; x:=1; while x<=3 do begin y:= 1/x; x:=x+0.3; writeln('y=',y:3:2); end; end. Цикл с постусловием: uses crt; var x,y:real; begin clrscr; x:=1; repeat begin y:= 1/x; x:=x+0.3; end; writeln('y=',y:3:2); until x>3; end. Добавил учитель информатики Пойманов Александр Александрович
|