Скачать 107.83 Kb.
|
Управление образования администрации муниципального образования «город Северобайкальск» Муниципальное общеобразовательное учреждение «Средняя общеобразовательная школа № 11» План – конспект урока «Команда цикла. Регулярный и итерационный циклы» учитель информатики: Шестаков Иван Викторович г. Северобайкальск 2010 г. План-конспект урока
Тема: «Команда цикла. Регулярный и итерационный циклы.» Урок № 87 Тип урока: Урок – лекция Цели и задачи урока:
Возраст: 10 класс (15 лет) Время работы: 1 урок (40 минут)
Материально-техническое и учебно-методическое оснащение: компьютер, проектор, интерактивная доска, программное обеспечение, раздаточный материал для самостоятельной работы. ЗУНы, необходимые для самостоятельной работы: учащиеся должны знать понятие «команда цикла», уметь работать в среде программирования QBasic, выполнять анализ условия задачи, производить математическую постановку задачи, составлять алгоритм и блок-схему, записывать программу. Специальные ЗУНы: знать понятия алгоритма, блок-схемы, программы, записывать операторы и математические выражения в среде QBasic. Мотивация: проверка на практике знаний полученных при изучении математики.
ЗУНы (новое содержание): учащиеся узнают практическое применение регулярных и итерационных циклов; умение резать задачи из курса алгебры с помощью циклов. Новые практические приёмы: овладеют способами накопления сумм. Развитие навыков: самостоятельная работа с условием задачи, составление алгоритмов и программ, самостоятельное применение коммуникативных умений и навыков, умение самостоятельной мыслительной деятельности, умение самоанализа и рефлексии. Воспитание толерантности. Расширение кругозора. План урока.
Поурочное планирование.
Деятельность учителя и ученика в процессе урока.
Ход урока.
Командой повторения или циклом называется такая форма организации действий, при которой одна и та же последовательность действий повторяется до тех пор, пока сохраняется значение некоторого логического выражения. При изменении значения логического выражения на противоположное повторения прекращаются (цикл завершается). Для организации цикла необходимо выполнить следующие действия:
Различают циклы с известным числом повторений (цикл с параметром или регулярный цикл) и итерационный (с предусловием). В цикле с известным числом повторений параметр изменяется в заданно диапазоне. Если в цикле изменяется простая переменная, то она является параметром цикла; если в цикле изменяется переменная с индексом, то индекс этой переменной является параметром цикла. Для организации цикла с известным числом повторений в QBasic используется оператор FOR. Структура цикла, организованного с помощью этого оператора, имеет вид: для I от А до В шаг N нц <операторы> кц For I:=A to B do Begin операторы; End; Здесь I – параметр, изменяющийся в цикле; A, B – выражения порядкового типа, обозначающие начальное и конечное значение параметра цикла. Шаг изменения параметра цикла равен N, если шаг изменения параметра N=1, то оператор step не пишется. Порядок выполнения цикла с шагом N следующий: вычисляются значения начального и конечного значений параметра цикла; параметр I принимает начальное значение; если I меньше или равно конечному значению, исполняется тело цикла; значение параметра цикла увеличивается, т.е. I=I+N; проверяется условие A<=I<=B (для отрицательного шага, т.е. –N условие A>=I>=B) и при его выполнении цикл повторяется. Выход из цикла осуществляется, если I>B (I<B для отрицательного N) и выполняется оператор, следующий за оператором цикла. Если A>B (или A<B для отрицательного N), то цикл не исполняется ни разу. Если в операторе цикла с параметром начальное или конечное значение параметра заданы переменными или выражениями, то значение этих переменных должны быть определены в программе до оператора цикла. Не следует внутри цикла изменять параметр цикла, его начальное и конечное значения с помощью операторов присваивания или ввода. Достаточно часто цикл с параметром используется при разработке программ обработки массивов. По сравнению с регулярным циклом итерационные циклы являются универсальными. Для организации итерационных циклов используются операторы цикла с предусловием WHILE. Эти операторы не задают закон изменения параметра цикла, поэтому необходимо перед циклом задавать начальное значение параметра с помощью оператора присваивания, а внутри цикла изменять текущее значение этого параметра. Структура итерационного цикла имеет вид: пока В нц <операторы> кц WHILE В do Begin операторы; End; Здесь В – логическое выражение. Для оператора цикла с предусловием проверяется значение логического выражения, если оно имеет значение «истено», то операторы, входящие в цикл, выполняются, в противном случае осуществляется выполнение оператора, следующего за циклом. Входить в цикл можно только через его начало, т.е. нельзя входить внутрь цикла с помощью управляющего оператора т.к. в этом случае параметр цикла не определен. Команды цикла применяются при решении задач на нахождения и накопления сумм, произведений. Используются при нахождении сумм числовых последовательностей (арифметических и геометрических прогрессий), которые вы изучали по алгебре в 9 классе. Задача 1. Дана последовательность натуральных чисел от 1 до 100. вычислить сумму элементов последовательности. Выполним математическую постановку задачи: Дано А – элемент последовательности натуральных чисел Требуется S – сумма элементов последовательности Связь S0=0 S1=0+1=S0+1 S2=0+1+2=S1+2 S3=0+1+2+3=S2+3 … S100=0+1+2+3+…+99+100=S99+100 S=S+A - метод решения задачи Разработаем алгоритм решения задачи: алг сумма (нат А, цел S) арг А рез S нач S:=0 для А от 1 до 100 шаг 1 нц S:=S+A кц вывод S кон Составим блок-схему: Напишем программу: PROGRAM summa; VAR A, S: INTEGER; BEGIN S:=0; FOR A:=1 TO 100 DO BEGIN S:=S+A; END; WRITELN (‘S=’, S); END. В результате выполнения данной программы сумма элементов последовательности будет равна 5050. Решим данную задачу с использованием итерационного цикла. Математическая постановка задачи является точно такой же. Разработаем алгоритм решения задачи: алг сумма (нат А, S) арг А рез S нач S:=0 А:=1 пока А <=100 нц S:=S+A А:=А+1 кц вывод S кон Составим блок-схему Напишем программу: Program summa; Var A, S: Integer; Begin S:=0; А:=1; WHILE A<= 100 DO Begin S:=S+A; A:=A+1; END; Writeln (‘S=’, S); END.
Задача 2. Даны два натуральных числа. Найти наибольший общий делитель. Выполним математическую постановку задачи. Дано А, В – натуральные числа Требуется NOD – наибольший общий делитель Связь пока A<>B если А>В то А=А-В иначе В=В-А Разработаем алгоритм: алг НОД (нат А, В, NOD) арг А, В рез NOD нач запрос А запрос В NOD:=A пока NOD <>B нц если NOD >B то NOD:=NOD-B иначе B:=B-NOD все кц вывод NOD кон Составим блок-схему алгоритма: Напишем программу: Program NOD; Var A, B, D: Integer; Begin Readln (A); Readln (B); D:=А While D<>B do Begin IF D>B THEN D:=D-B ELSE B:=B-D: END; Writeln (‘NOD=’, D); END. Контрольные вопросы и задания
For I: = 1 to -1 do Begin K = K * I; End;
For I = -1 to 1 do Begin K := K * I; End;
M := 123; While M > 0 Do Begin M := M – 10; End;
Дана последовательность натуральных чисел от 1 до 15. найти произведение элементов последовательности.
Мы с вами сегодня рассмотрели команды цикла, выяснили, как решаются задачи, в которых происходит неоднократное повторение выполнения одних и тех же действий. Разобрали на практике как проверить правильность вычислений нахождения сумм последовательностей чисел. |