СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ
Благодаря готовым учебным материалам для работы в классе и дистанционно
Скидки до 50 % на комплекты
только до
Готовые ключевые этапы урока всегда будут у вас под рукой
Организационный момент
Проверка знаний
Объяснение материала
Закрепление изученного
Итоги урока
ЦЕЛИ И ЗАДАЧИ: Знакомство с операторами цикла языка Turbo-Pascal. Решение практических задач с использованием операторов цикла.
ТРЕБОВАНИЯ К ЗНАНИЯМ И УМЕНИЯМ:
Учащиеся должны знать:
Учащиеся должны уметь:
План работы учащегося
Цикл
Цикл – команда исполнителю повторить многократно указанную последовательность команд алгоритмического языка или, другими словами, многократно повторяющаяся часть программы.
Оператор цикла с параметром.
Используется, когда известно, сколько раз выполняется циклическая часть программы.
for <параметр цикла>:=<начало> to/downto <конец> do <операт
для до делать
параметр цикла - числовая переменная типа integer
начало, конец - арифметическое выражение
to - используется когда начало меньше конца
downto - используется когда начало больше конца
оператор - тело цикла, любой оператор, в том числе и составной
Принцип работы:
Важно помнить:
1. Не рекомендуется изменять управляющую переменную цикла в теле цикла с помощью команды присваивания. Это может привести к «зацикливанию» программы (бесконечному повторению тела цикла) либо к неверным результатам выполнения программы.
2. Если в заголовке оператора for.to начальное значение переменной цикла больше конечного значения, то тело цикла не выполнится ни разу.
3. Если в заголовке оператора for.downto начальное значение переменной цикла меньше конечного значения, то тело цикла не выполнится ни разу.
4. При выходе из цикла текущее значение переменной цикла больше равно конечному значению в операторе for.to и наоборот в операторе for.downto.
5. Телом цикла может быть не один оператор, а группа операторов (составной оператор), которую обязательно надо заключать в операторные скобки begin… end.
Цикл с предварительным условием
while <условие> do <оператор>;
условие - логическое выражение
оператор - любой оператор, в том числе и составной.
Принцип работы:
Важно помнить:
1. Если условие сразу оказывается ложным, цикл с условием не выполнится
ни разу!
2. В теле цикла должны быть операторы, которые в какой-то момент изменят
значение условия, сделав его ложным. Если этого не случится, цикл будет
бесконечным, то есть программа «зациклится».
3.В операторах for и while точка с запятой не ставится ни перед словом
do, ни после него!
Пример 1. Сумма первых десяти натуральных чисел
program summa;
var i,sum:integer;
begin
sum:=0; {начальное значение суммы}
for i:=1 to 10 do {Для переменной цикла i (счетчика цикла) от 1 до 10 выполнить (i меняется от 1 до 10 с шагом 1) следующий оператор – тело цикла}
sum:=sum+i; {эта строка - тело цикла. Оно выполняется 10 раз. В переменной sum накапливается сумма, каждый раз прибавляя к ее предыдущему значению sum очередное значение i}
writeln('Sum =',sum);{вывод результата}
end.
Пример 2. Сумма первых N натуральных чисел
program summa_N;
var i,n,sum:integer;
begin
write ('n='); {ввод исходных данных с клавиатуры}
readln(n); {n - количество первых натуральных чисел}
sum:=0; {присвоим переменной sum начальное значение 0,}
i:=1; {а переменной i- начальное значение 1}
while i<= n do {пока i<=n выполнить }
begin
sum:=sum+i; {тело цикла}
i:=i+1; {переменная I меняется внутри цикла, и ее величина определяет очередное повторение цикла или завершение его }
end;
writeln('Sum =',sum);{вывод результата}
end.
Пример 3. Вывод на экран 5 первых нечетных натуральных чисел
Program N5;
var i,x:integer; {i – переменная цикла, в переменную
x записываем нечетные числа}
begin
x:=1; {первое нечетное натуральное число равно 1}
for i:=1 to 5 do {переменная i (счетчик цикла) меняется от 1 до 5 с шагом 1}
begin
write(x,' '); {вывод нечетного числа}
x:=x+2; {следующее нечетного число на 2 больше предыдущего}
end;
end.
Задания для самостоятельной работы
1. Для чего предназначен оператор цикла? В каких случаях используют оператор цикла for … ?
2. Что такое зацикливание? Как его избежать?
3. Найти ошибки в следующем фрагменте программы, если переменные описаны следующим образом:
Var x, y: real;. Как их исправить?
y:=0; for x:=0.1 to 0.9 do
y:=y+sin(x);
4. Дано натуральное число. Определить, сколько в нем цифр.
5. найти все делители для заданного числа N.
© 2015, Рамазанова Валентина Леонидовна 574