Информационно-образовательный портал
e-mail: [email protected]

  • Библиотека
  • Информатика
  • Уроки по циклам (программирование на Pascal, тематическое планирование ближе к Босовой Л. ). Урок №1 Алгоритмическая конструкция «цикл». Виды циклов. Алгоритм вычисления значения функции на интервале (с любым шагом), простые последовательности и прогресси

Уроки по циклам (программирование на Pascal, тематическое планирование ближе к Босовой Л. ). Урок №1 Алгоритмическая конструкция «цикл». Виды циклов. Алгоритм вычисления значения функции на интервале (с любым шагом), простые последовательности и прогресси

Уроки по циклам (программирование на Pascal, тематическое планирование ближе к Босовой Л. ). Урок №1 Алгоритмическая конструкция «цикл». Виды циклов. Алгоритм вычисления значения функции на интервале (с любым шагом), простые последовательности и прогрессии

Цели урока (на 4 урока, возможно первые 2 урока спаренные):

– формирование навыков составления циклических алгоритмов с помощью различных конструкций (циклы с предусловием и последующим условием, цикл с заранее известным количеством повторений) на примере использования задач из разных предметных областей

– развитие алгоритмического мышления; умения применять полученные знания при решении задач различной направленности.

– привитие учащимся навыков самостоятельности в работе; воспитание чувства ответственности и культуры поведения

Тип урока: комбинированный урок.

Методы и приемы: объяснительно-иллюстративный, репродуктивный, проблемный метод, практическая работа.

Оборудование: компьютеры, проектор, программное обеспечение – презентация по теме “Ветвление”, Windows XP, Pascal.

План 1-го урока:

1) Организационный момент. (3-5 м)

2) Актуализация знаний обучающихся. (4-6 м)

3) Изучение нового материала. (10-12 м. )

4) Закрепление нового материала. Задачи. (17-23 м)

5) Подведение итогов. Выставление оценок. (2 м)

6) Информация о домашнем задании. (1 м)

7) Рефлексия. (2 м)

* можно рассмотреть материал (или не рассматривать) в зависимости от уровня подготовки класса или что нужно повторить больше.

I. Организационный момент (сообщение темы и постановка целей урока).

*(Пояснения для учителей: Некоторые алгоритмы без программирования ученики изучали ранее. Поэтому, рассматривается в основном запись алгоритмов на языке программирования).

Вы пошли на рыбалку ловить рыбу. Вопрос: Какие действия у вас повторяются?

Ответы: (червяка несколько раз нанизывать на крючок, забрасывать удочку, вытаскивать рыбу …)

Вы в школе. Вопрос: Какие действия у вас повторяются?

Ответы: (звенит звонок на урок или с урока, подготовка к уроку, домашнее задание, перемены, …)

Как вы думаете, что сегодня на уроке мы будем изучать, какие алгоритмы и программы?

II. Актуализация опорных знаний учащихся.

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

1. Мы с вами прошли тему «Ветвление». Что это такое? Какие ветвления встречаются в программировании?

Ответы: В зависимости от условия выполняется одна из последовательностей действий. Ветвления бывают полные и неполные.

2. Как вы думаете, а могут ли повторятся эти последовательности действий в зависимости в зависимости от условия?

Ответы: Да

3. Приведите примеры?

Ответы: Делаем домашнее задание, ПОКА не выполним. Красим забор, ПОКА не покрасим. Заполняем таблицу, ПОКА не заполним. Производим вычисления по формуле, ДО ТЕХ ПОР, ПОКА не сделаем все опыты или учитель не поставит оценку и т. д.

4. А можем заранее знать количество повторений, если да, то приведите примеры?

Ответы: Да. Количество уроков сегодня. Количество подтягиваний на 5-ку. Вычисление функции на некотором интервале и т. д.

5. Сделаем вывод. Что такое повторение (цикл) и какие они бывают (с учителем)?

Ответы: С условием (ПОКА и ДО ТЕХ ПОР, ПОКА) и с заранее известным количеством повторений

III. Ознакомление с новым материалом.

Цикл – это последовательность действий, которая выполняется несколько раз в зависимости от условия или количество повторений заранее известно.

Повторяющаяся последовательность называется телом цикла.

а) Цикл с предусловием (ПОКА).

Общий вид цикла с предусловием:

На блок-схеме такие программы изображаются:


-


+

While Do

Begin

Операторы циклической части программы

End

б) Цикл с последующим условием (ДО ТЕХ ПОР, ПОКА).

оператор

Блок-схема для алгоритмов (программ) имеющих циклическую структуру с последующим условием

Общий вид записи цикла с последующим условием:

Repeat

Операторы циклической части программы

ntil

в) Цикл с заранее известным количеством повторений (С ПАРАМЕТРОМ или СО СЧЕТЧИКОМ).

На блок-схеме решение данных задач будет выглядеть следующим образом (m1, m2 – постоянные):

Общий вид цикла с параметром записывается:

For i:=m1 to m2 do(downto)

Begin

Операторы циклической части программы

End;

Примечание: если значение параметра возрастает, то записывается to, если убывает то downto.

IV. Закрепление нового материала или решение задач.

Решим задачи на темы (далее определим, какие особенности конструкции циклов применяются в данных задачах):

  1. Алгоритм вычисления значения функции на интервале (с любым шагом).
  2. Алгоритм вычисления простых последовательностей и прогрессий.
  3. Алгоритм вычисления среднего значения из n чисел.
  4. Алгоритм вычисления max(min) из n чисел.
  5. Алгоритм вычисления факториала.
  6. Алгоритм вычисления значения xk.
  7. Алгоритм вычисления результатов связанных с четными и нечетными значениями (одно простое или составное условие).
  8. Алгоритм вычисления суммы цифр заданного числа.
  9. Алгоритм вычисления наибольшего общего делителя (Алгоритм Евклида или через операцию mod).
  10. Алгоритм вычисления чисел Фибоначчи*.

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

Решение задач вместе с учителем и за компьтером:

Задача 1: Вычислить функцию y=2*(x-1) на интервале от -5 до 5 с шагом 1.

(параметр цикла i – обязательно целое число).

program pr1;

var x,y: integer;

begin

for x:=-5 to 5 do begin

y:=2*(x-1);

writeln(x:5:2,’ – ’,y:5:2);

end;

readln;

end.

Задача 1а: Вычислить функцию y=2/(x-1) на интервале от -5 до 5 с шагом 1.

program pr1a;

var x,y: integer;

begin

for x:=-5 to 5 do begin

if (x-1)0 then begin y:=2/x; writeln(x:5:2,’ – ’,y:5:2); end

else writeln(x:5:2,’– не сущ. ’);

end;

readln;

end.

Задача 1b: Вычислить функцию y=sqrt(1-x) на интервале от -5 до 5 с шагом 0,5 (с помощью цикла ПОКА).

program pr1b;

var x,y: real;

begin

x:=-5;

while x

if (1-x)>=0 then begin y:=sqrt(1-x); writeln(x:5:2,’ – ’,y:5:2); end

else writeln(x:5:2,’– не сущ. ’);

x:=x+0. 5;

end;

readln;

end.

Задача 1c: Вычислить функцию y=sqrt(1-x)/(x+1) на интервале от -5 до 5 с шагом 0,5 (с помощью цикла ДО).

program pr1c;

var x,y: real;

begin

x:=-5;

repeat

if (1-x>=0) and (x+10) then begin y:=sqrt(1-x)/(x+1); writeln(x:5:2,’ – ’,y:5:2); end

else writeln(x:5:2,’– не сущ. ’);

x:=x+0. 5;

until x>5;

readln;

end.

Какой сделаем вывод? Теперь аналогично решим задачи на последовательности.

Задача 2: Найти сумму 10 действительных чисел.

program pr2;

var a,s:real; i:integer;

begin

writeln(‘ввести 10 чисел ’);

for i:=1 to 10 do begin

readln(a);

s:=s+a;

end;

writeln(‘s=’,s);

readln;

end.

V. Подведение итогов урока.

Подводятся итоги урока, выставляются оценки.

VI. Домашнее задание (выдаются карточки).

Даются пояснения к выполнению домашнего задания.

Уровень 1-2.

Задача 2a. Определить число натуральных чисел, сумма (произведение*) последовательности которых равна (или больше) 200.

Ответ для самостоятельной проверки

while s

k:=k+1;

s:=s+k;

end;

writeln(k:6:3);

Уровень 3.

Задача 2b. Определить номер 1-го члена последовательности 1, 1/22, 1/32, … 1/k2, который меньше 0,002.

Ответ для самостоятельной проверки:

while p=>0. 002 do begin

k:=k+1;

p:=1/(k*k);

end;

writeln(k:6:3);

VII. Рефлексия (на выбор учителя).

Карточки с вопросом учителю.

Запишите, ребята, вопрос по данной теме, который вы бы задали на конкурсе своим противникам.

Цветограмма урока:

Кружок красного цвета

Кружок зеленого цвета

Кружок желтого цвета

«Я удовлетворен уроком, урок был полезен для меня, я много, с пользой и хорошо работал на уроке, я понимал все, о чем говорилось и делалось на уроке»

«Урок был интересным, я принимал в нем активное участие, урок был полезен для меня, я сумел выполнить ряд заданий, но все-таки я не все смог понять»

«Пользы от урока я получил мало, я не очень понимал, о чем идет речь, мне это не очень нужно, к ответам на уроке я был не готов»

И. А. Курилов, МБОУ СОШ №9, г. Нерчинск, Забайкальский край

Метки: Информатика