Урок информатики в 8 классе Циклические алгоритмы

Раздел Информатика
Класс 8 класс
Тип Конспекты
Автор
Дата
Формат docx
Изображения Есть
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

Урок информатики в 8 классе Циклические алгоритмыУрок информатики в 8 классе Циклические алгоритмыПредмет: Информатика. Урок ознакомления с новым материалом

Тема: «Циклические алгоритмы»

Продолжительность: 1 урок - 40 минут

Класс: 8 класс

Технологии: Презентация, интерактивная доска

Цель: изучение алгоритмической структуры циклы, создание моделей и алгоритмов для решения практических задач.

Ход урока

  1. Актуализация знаний

  • Повторить понятие алгоритма, основные конструкции алгоритмического языка.

  • Уметь разрабатывать математическую модель, алгоритм и блок схему решения задачи.

  • Иметь понятие о языках программирования и их назначении.

  • Уметь работать в среде программирования.

  • Знать структуры программы.

  • Уметь записывать выражения, содержащие числовые и символьные величины.

  • Знать структуры операторов и особенности их работы.

  • Уметь применять операторы при написании программ с линейными и ветвящимися структурами.

  • Уметь на компьютере создавать и запускать программы на отладку.

II. Теоретический материал урока

Большинство практических задач требует многократного повторения одних и тех же действий, т. е. повторного использования одного или нескольких операторов.

Пусть требуется ввести и обработать последовательность чисел. Если чисел всего пять, можно составить линейный алгоритм. Если их тысяча, записать линейный алгоритм можно, но очень утомительно и нерационально. Если количество чисел к моменту разработки алгоритма неизвестно, то линейный алгоритм принципиально невозможен.

Другой пример. Чтобы найти фамилию человека в списке, надо проверить первую фамилию списка, затем вторую, третью и т.д. до тех пор, пока не будет найдена нужная или не будет достигнут конец списка. Преодолеть подобные трудности можно с помощью циклов.

Циклом называется многократно исполняемый участок алгоритма (программы). Соответственно циклический алгоритм - это алгоритм, содержащий циклы.

Различают два типа циклов: с известным числом повторений и с неизвестным числом повторений. При этом в обоих случаях имеется в виду число повторений на стадии разработки алгоритма.

Существует 3 типа циклических структур:

  • Цикл с предусловием;

  • Цикл с постусловием;

  • Цикл с параметром;

Иначе данные структуры называют циклами типа «Пока», «До», «Для».

Графическая форма записи данных алгоритмических структур:

Цикл типа Пока

Цикл типа ДО

Цикл типа ДЛЯ

Условие

Серия команд

да

нет

Серия команд

i, a, b, h

нет

Виды циклических алгоритмов

Цикл с

предусловием

Цикл с постусловием

Цикл с параметром

Условие

Серия команд

да

Цикл типа Пока

Условие

Тело цикла

да

нет

Цикл с предусловием (иначе цикл пока) имеет вид:

Форматы записи операторов алгоритма

Блок-схема

Форматы записи операторов на Паскале

Пока (условие)

нц

серия команд

кц




Условие

Серия команд

да

нет

while условие do

begin

серия команд;

end;

где

условие - выражение логического типа.

Цикл может не выполняться ни разу, если значение логического выражения сразу же оказывается ложь.

Серия команд, находящихся между begin и end, выполняются до тех пор, пока условие истинно.

Для того чтобы цикл завершился, необходимо, чтобы последовательность инструкций между BEGIN и END изменяла значение переменных, входящих в условие.

Цикл с постусловием (иначе цикл до) имеет вид:

Форматы записи операторов алгоритма

Блок-схема

Форматы записи операторов на Паскале

В алгоритмическом языке нет команды которая могла бы описать данную структуру, но ее можно выразить с помощью других команд(Например, ветвления).

Условие

Серия команд

нет

repeat серия команд

until условие

где

условие - выражение логического типа.

Обратите внимание:

Последовательность инструкций между repeat и until всегда будет выполнено хотя бы один раз;

Для того чтобы цикл завершился, необходимо, чтобы последовательность операторов между repeat и until изменяла значения переменных, входящих в выражение условие.

Инструкция repeat, как и инструкция while, используется в программе, если надо провести некоторые повторяющиеся вычисления (цикл), однако число повторов заранее не известно и определяется самим ходом вычисления.

Цикл с параметром (иначе цикл для) имеет вид:

Форматы записи операторов алгоритма

Блок-схема

Форматы записи операторов на Паскале

Для i от а до b шаг h делай

Нц

Серия команд

кц

Серия команд

i:= а, b, h


h = +1

for i:= a to b do

begin

серия команд

end;

h = -1

for i:= b downto a do

begin

Cерия команд;

end;

где

i- параметр цикла;

a - начальное значение цикла;

b- конечное значение цикла;

h-шаг изменения параметра.

Структура данного цикла иначе называют циклом i раз.

Эта команда выполняется таким образом: параметру i присваивается начальное значение а, сравнивается с конечным значением b и, если оно меньше или равно конечному значению b, выполняется серия команд. Параметру присваивается значение предыдущего, увеличенного на величину h - шага изменения параметра и вновь сравнивается с конечным значением b.

На языке программирования Паскаль шаг изменения параметра может быть равным одному или минус одному.

Если между begin и end находится только один оператор, то операторные скобки можно не писать. Это правило работает для цикла типа «Пока» и «Для».

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

Пример.

Вычислить произведение чисел от 1 до 5 используя различные варианты цикла

Математическая модель:

Р= 1· 2· 3· 4· 5=120

Составим алгоритм в виде блок-схемы.

нач

i:=1

P:=1

i<=5

P:=P*i

i:=i+1

кон

P

да

нет

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

Шаг

Операция

Р

i

Проверка условия

1

P:=1

1

2

i:=1;

1

1

3

i<=5

P:=P*I

i:=i+1

1

1

1<=5, да (истина)

4

i<=5

P:=P*I

i:=i+1

2

2

2<=5, да (истина)

5

i<=5

P:=P*I

i:=i+1

6

3

3<=5, да (истина)

6

i<=5

P:=P*I

i:=i+1

24

4

4<=5, да (истина)

7

i<=5

P:=P*I

i:=i+1

120

5

5<=5, да (истина)

8

i<=5

P:=P*I

i:=i+1

6<=5, нет (ложь)

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

Шаг первый: Р присваивается значение один.

Шаг второй: i присваивается значение один.

Шаг третий: при i равном единице проверяем условие один меньше или равен пяти, да, условие истинно, значит Р присваивается значение один умноженное на один, будет два. Для i: один плюс один, будет два.

Шаг четвертый: при i равном двум проверяем условие два меньше или равен пяти, да, условие истинно, значит Р присваивается значение 2 умноженное на один, будет 2. Для i: два плюс один, будет три.

Шаг пятый: при i равном трем проверяем условие три меньше или равен пяти, да, условие истинно, значит Р присваивается значение два умноженное на три, будет шесть. Для i: три плюс один, будет четыре.

Шаг шестой: при i равном четырем проверяем условие четыре меньше или равен пяти, да, условие истинно, значит Р присваивается значение шесть умноженное на четыре, будет двадцать четыре. Для i: четыре плюс один, будет пять.

Шаг седьмой: при i равном пяти проверяем условие пять меньше или равен пяти, да ,условие истинно, значит Р присваивается значение двадцать четыре умноженное на пять, будет сто двадцать. Для i: пять плюс один, будет шесть.

Шаг восьмой: при i равном шести проверяем условие шесть меньше или равен пяти, нет, условие ложно, тогда мы выходим из цикла, а в результате получаем последнее значение равное сто двадцати.

Program Pr1;

Var i: integer;

Begin

P:=1;

i:=1;

While i<=5 do

begin

P:=P*i;

i:=i+1;

end;

Write ('P=', P);

end.

Для цикла с постусловием построим блок-схему и трассировочную таблицу.

В результате получаем последнее значение равное сто двадцати на седьмом шаге

И для Цикла с параметром построим блок-схему и трассировочную таблицу.

В результате получаем последнее значение равное сто двадцати на шестом шаге

Задача:

Вывести на экран числа от 1 до 5 в:

a) прямом порядке;

b) обратном порядке.

Математическая модель:

a) 1 2 3 4 5;

b) 5 4 3 2 1.

Блок-схема и программа решения задачи представлена для чисел в прямом порядке и обратном порядке.

Запишем рассмотренные алгоритмы на языке программирования Паскаль.

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

И так мы рассмотрели следующие вопросы:

  1. Алгоритмическая структура цикл;

  2. Виды алгоритмических структур:

    1. Цикл с предусловием;

    2. Цикл с послеусловием;

    3. Цикл с параметром;

  3. Рассмотрели способы записи данных структур;

  4. Разобрали примеры решения задач с помощью этих структур.

Список использованной литературы

  1. Программы для общеобразовательных учреждений. Информатика 2-11 класс. / Составитель М. Н. Бородин. - 2-е изд., М. Бином. Лаборатория знаний, 2007.- 463 с.: ил.

  2. Информатика и ИКТ. Базовый курс: Учебник для 9 класса / И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова.-3-е изд.- 2-е изд., М.: Бином. Лаборатория знаний, 2007.- 359 с.: ил.

  3. Преподавание базового курса информатики в средней школе: Методическое пособие / И. Г. Семакин, Т. Ю. Шеина. - 2-е изд., исп. И доп.- М.: Бином. Лаборатория знаний, 2004.- 540 с.: ил.

  4. Задачник-практикум. Том 1. под ред. И. Г. Семакина - М. Бином. Лаборатория знаний, 2007.- 309 с.: ил.

  5. Задачник-практикум. Том 2. под ред. И. Г. Семакина М. Бином. Лаборатория знаний, 2007.- 294 с.: ил.

  6. pas1.ru/file Программирование для начинающих.

  7. pascal7.ru/ Все о языке программирования Turbo Pascal.

  8. tp7.info/ Сайт о языке программирования Turbo Pascal.

5


© 2010-2022