Презентация "Программирование на языке Паскаль. Циклы"
Подписи к слайдам:
Программирование
на языке Паскаль
- Циклы
- Ниязбекова Айгерим Жарылкасынкызы
- Учитель информатики, I категории
- Школа-гимназия №2 им. Г. Кайрбекова
- Республика Казахстан, город Астана
- Циклы
- Цикл – это многократное выполнение одинаковой последовательности действий.
- цикл с известным числом шагов
- цикл с неизвестным числом шагов (цикл с условием)
- Задача. Вывести на экран квадраты и кубы целых чисел от 1 до 8 (от a до b).
- Особенность: одинаковые действия выполняются 8 раз.
- Можно ли решить известными методами?
- ?
- Алгоритм
- начало
- i, i2, i3
- конец
- нет
- да
- i <= 8?
- i := 1;
- i := i + 1;
- i2 := i * i;
- i3 := i2 * i;
- задать начальное значение переменной цикла
- проверить, все ли сделали
- вычисляем квадрат и куб
- вывод результата
- перейти к следующему i
- Алгоритм (с блоком "цикл")
- начало
- i, i2, i3
- конец
- i2 := i * i;
- i3 := i2 * i;
- i := 1,8
- блок "цикл"
- тело цикла
- Программа
- program qq;
- var i, i2, i3: integer;
- begin
- for i:=1 to 8 do begin
- i2 := i*i;
- i3 := i2*i;
- writeln(i:4, i2:4, i3:4);
- end;
- end.
- переменная цикла
- начальное значение
- конечное значение
- Цикл с уменьшением переменной
- Задача. Вывести на экран квадраты и кубы целых чисел от 8 до 1 (в обратном порядке).
- Особенность: переменная цикла должна уменьшаться.
- Решение:
- for i:=8 1 do begin
- i2 := i*i;
- i3 := i2*i;
- writeln(i:4, i2:4, i3:4);
- end;
- downto
- Цикл с переменной
- for <переменная> := <начальное значение> to
- <конечное значение> do begin
- {тело цикла}
- end;
- Увеличение переменной на 1:
- for <переменная> := <начальное значение> downto
- <конечное значение> do begin
- {тело цикла}
- end;
- Уменьшение переменной на 1:
- <number>
- Цикл с переменной
- Особенности:
- переменная цикла может быть только целой (integer)
- шаг изменения переменной цикла всегда равен 1 (to) или -1 (downto)
- если в теле цикла только один оператор, слова begin и end можно не писать:
- если конечное значение меньше начального, цикл (to) не выполняется ни разу (проверка условия в начале цикла, цикл с предусловием)
- for i:=1 to 8 do
- writeln('Привет');
- Цикл с переменной
- Особенности:
- в теле цикла не разрешается изменять переменную цикла (почему?)
- при изменении начального и конечного значения внутри цикла количество шагов не изменится:
- n := 8;
- for i:=1 to n do begin
- writeln('Привет');
- n := n + 1;
- end;
- нет зацикливания
- Цикл с переменной
- Особенности:
- после выполнения цикла во многих системах устанавливается первое значение переменной цикла, при котором нарушено условие:
- for i:=1 to 8 do
- writeln('Привет');
- writeln('i=', i);
- for i:=8 downto 1 do
- writeln('Привет');
- writeln('i=', i);
- i=9
- i=0
- Сколько раз выполняется цикл?
- a := 1;
- for i:=1 to 3 do a := a+1;
- a = 4
- a := 1;
- for i:=3 to 1 do a := a+1;
- a = 1
- a := 1;
- for i:=1 downto 3 do a := a+1;
- a = 1
- a := 1;
- for i:=3 downto 1 do a := a+1;
- a = 4
- for i:=1 to 9 do begin
- if ??? then begin
- i2 := i*i;
- i3 := i2*i;
- writeln(i:4, i2:4, i3:4);
- end;
- end;
- Как изменить шаг?
- Задача. Вывести на экран квадраты и кубы нечётных целых чисел от 1 до 9.
- Особенность: переменная цикла должна увеличиваться на 2.
- Проблема: в Паскале шаг может быть 1 или -1.
- Решение:
- i mod 2 = 1
- i2 := i*i;
- i3 := i2*i;
- writeln(i:4, i2:4, i3:4);
- выполняется только для нечетных i
- Что плохо?
- ?
- Как изменить шаг? – II
- Идея: Надо вывести всего 5 чисел, переменная k изменяется от 1 до 5. Начальное значение i равно 1, с каждым шагом цикла i увеличивается на 2.
- Решение:
- ???
- for k:=1 to 5 do begin
- i2 := i*i;
- i3 := i2*i;
- writeln(i:4, i2:4, i3:4);
- ???
- end;
- i := i + 2;
- i := 1;
- Как изменить шаг? – III
- Идея: Надо вывести всего 5 чисел, переменная k изменяется от 1 до 5. Зная k, надо рассчитать i.
- Решение:
|
|
|
|
|
|
|
|
|
|
|
|
- i = 2k-1
- for k:=1 to 5 do begin
- ???
- i2 := i*i;
- i3 := i2*i;
- writeln(i:4, i2:4, i3:4);
- end;
- i := 2*k – 1;
- Задания
- "4": Ввести a и b и вывести квадраты и кубы чисел от a до b.
- Пример:
- Введите границы интервала:
- 4 6
- 4 16 64
- 5 25 125
- 6 36 216
- "5": Вывести квадраты и кубы 10 чисел следующей последовательности: 1, 2, 4, 7, 11, 16, …
- Пример:
- 1 1 1
- 2 4 8
- 4 16 64
- ...
- 46 2116 97336
- Литература:
- 1.Информатика в школе : Приложение к журналу «Информатика и образование» №5-2006-М: Образование и Информатика.
- 2.Кашаев С.М., Шерстнева Л.В. Паскаль для школьников. Подготовка к ЕГЭ-М:БХВ-Петербург,2011-336с.
- 3.Моргун А.Н., Кривель И.А. Программирование на языке Паскаль-Москва Вильямс,2 006-576с,
Информатика - еще материалы к урокам:
- Презентация "Моделирование физических процессов"
- Тест "Количество информации, единицы ее измерения" 5 класс
- Конспект урока "Управление исполнителем Чертежник. Пример алгоритма управления Чертежником. Работа в среде исполнителя Чертежник"
- Презентация "Управление исполнителем Чертежник. Пример алгоритма управления Чертежником. Работа в среде исполнителя Чертежник"
- Презентация "Алгоритм с заданным условием окончания работы. Алгоритм с заданным числом повторений" 8 класс
- Технологическая карта урока "Алгоритм с заданным условием окончания работы. Алгоритм с заданным числом повторений" 8 класс