Содержание
-
Тема урока: Операторы цикла. Решение задач со счетчиком.
Выполнила: Троегубова Татьяна Сергеевна учитель МОУ «СОШ №87»
-
Цель урока:
Повторить условный оператор IF; Вспомнить блок- схему оператора цикла со счетчиком; Научиться решать задачи со счетчиком с помощью языка программирования.
-
I. Актуализация знаний
Написать программу, в которой нужно проверить, лежит ли число x на числовой оси между числами a и b (случай x=a или x=b недопустим). Числа x, a, b являются натуральными, и известно, что a отлично от b (но неизвестно: a>b или b>a). Входная информация вводится с клавиатуры, а на выходе должно быть сообщение вида "x между a и b" (если это действительно так), в противном случае никакой выходной информации не выдается.
-
Программист торопился и написал программу некорректно. ПРОГРАММА НА ПАСКАЛЕ VAR a,b,x: integer; p: integer; BEGIN readln(a,b,x); if (a>x) AND (x>b) then writeln('x между a,b'); END.
-
Последовательно выполните три задания: 1).Приведите пример таких чисел a, x, b при которых программа работает неправильно.
-
2).Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами).
-
3).Укажите, как можно доработать программу, соблюдая дополнительное условие: доработанная программа не должна использовать логических операций AND или OR.
-
Что называется циклическим алгоритмом? Вспомним фрагмент блок-схемы циклического алгоритма со счетчиком.
-
нет да тело цикла счётчик
-
II. Новый материал
Когда заранее известно, какое число повторений тела цикла необходимо выполнить, можно воспользоваться циклической инструкцией
-
ОПЕРАТОР ЦИКЛА ПО СЧЕТЧИКУ
FOR := ТО DO
-
Рассмотрим, как выполняется оператор цикла с параметром вида FOR := А ТОВDO
-
Если А последовательно принимает значения равные А,А+1…В-1,В и для каждого из этих значений выполняется . Если А >В, то не будет выполнен ни разу и выполнение цикла с параметром сразу же закончится.
-
УМЕНЬШЕНИЕ ЦИКЛА НА 1
FOR:= DOWNTO DO
-
Надо знать:
В качестве параметра цикла может быть переменная целого или литерного типа. Не допускается переменная вещественного типа. Начальное и конечное значение – выражение того же типа, что и параметр цикла.
-
2. Значение параметра цикла в теле цикла, т.е. внутри оператора, стоящего после DO, не должен изменяться. 3. При выходе из цикла значение параметра цикла не определено.
-
III.Закрепление темы
Подсчитать сумму 10 чисел, введенных с клавиатуры. Блок-схема Решение
-
Задача
Подсчитать произведение 10 чисел введенных с клавиатуры. Блок-схема Решение
-
Подсчитать сумму положительных чисел среди 10 чисел введенных с клавиатуры. Блок-схема Решение
-
Подсчитать количество положительных чисел среди 10 чисел введенных с клавиатуры. Блок-схема Решение
-
Подсчитать сумму 20 слагаемых 1+2+3…+20 Блок-схема Решение
-
Подсчитать сумму 20 слагаемых 1-1/2+1/3…-1/20 Блок-схема Решение
-
IV.Домашнее задание:
1.Составьте программу вычисления квадратов чисел от 1 до 20.
-
2.Напечатать все двухзначные числа, сумма которых равна 12.
-
С П А С И Б О З А УРОК
-
ОТВЕТ
Циклический алгоритм - это описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие.
-
1) Например: a=1 x=2 b=3
-
2) Возможныедоработки: a) if ax) and (x>b) then writeln(' x между a,b'); b) if (a>x) and (x>b) оr (a
-
3) p:=(x-a)*(x-b); if p
-
БЛОК - СХЕМА
нач кон S:=S+А I:=1 to10 S:=0 Ввести А S да нет
-
РЕШЕНИЕ
Program my; Var I,S,A: integer; Begin S:=0; FOR I:=1 TO 10 DO Begin WRITELN ( ‘Введите число’); READLN (A); S:=S+A; End; WRITELN (S); End.
-
БЛОК - СХЕМА
нач кон S:=S*А I:=1 to10 S:=1 Ввести А S да нет
-
РЕШЕНИЕ
Program my; Var I,S,A: integer; Begin S:=1; FOR I:=1 TO 10 DO Begin WRITELN ( ‘Введите число’); READLN (A); S:=S*A; End; WRITELN (S); End.
-
БЛОК - СХЕМА
нач кон S:=S+A I:=1 to10 S :=0 A>0 Ввести А да да нет нет S
-
РЕШЕНИЕ
Program my; Var I,S,A: integer; Begin S:=0; FOR I:=1 TO 10 DO Begin WRITELN ( ‘Введите число’); READLN (A); IF A>0 THEN S:=S+A; End; WRITELN (S); End.
-
БЛОК - СХЕМА
нач кон k:=k+1 I:=1 to10 k:=0 A>0 Ввести А да да нет нет k
-
РЕШЕНИЕ
Program my; Var I,K,A: integer; Begin K:=0; FOR I:=1 TO 10 DO Begin WRITELN ( ‘Введите число’); READLN (A); IF A>0 THEN K:=K+1; End; WRITELN (K); End.
-
БЛОК - СХЕМА
нач кон S:=S+I I:=1 to20 S:=0 S да нет
-
РЕШЕНИЕ
Program my; Var I,S: integer; Begin S:=0; FOR I:=1 to 20 DO Begin S:=S+I; End; WRITELN (S); End.
-
БЛОК - СХЕМА
нач кон P:=-P I:=1 to20 S:=0 S P:=1 S:=S+P/I да нет
-
РЕШЕНИЕ
Program my; Var I,Р: integer; S: real; Begin S:=0; P:=1; FOR I:=1 TO 20 DO Begin S:=S+P/I; P:=-P; End; WRITELN (S); End.
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.