СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Четвертое занятие. «Операторы циклов while, for»

Нажмите, чтобы узнать подробности

ЦЕЛИ И ЗАДАЧИ: Знакомство с операторами цикла языка Turbo-Pascal. Решение практических задач с использованием операторов цикла.

ТРЕБОВАНИЯ К ЗНАНИЯМ И УМЕНИЯМ:

Учащиеся должны знать:

  • Что такое цикл;
  • Две разновидности операторов цикла;
  • Какой тип должна имеет переменная цикла с параметром;
  • Когда в операторах цикла и ветвления используются операторные скобки;

Учащиеся должны уметь:

  • Использовать циклы при составлении программ;
  • Правильно составлять и использовать условия в цикле WHILE ;
  • Составлять программы с использование операторов цикла.

План работы учащегося

  1. Внимательно прочитать предложенный материал.
  2. Задать все возникшие вопросы можно по E-mail.
  3. Выполнить максимально возможное количество заданий для самостоятельной работы и отправить их в электронном виде на E-mail.

Цикл

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

Оператор цикла с параметром.

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

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.

21.04.2015 23:47


Рекомендуем курсы ПК и ПП