Академический Документы
Профессиональный Документы
Культура Документы
Конспект урока
информатики на тему:
9 класс
г.Владикавказ
1
Тема: Операторы цикла на Паскале. Цикл с предусловием.
Цель: познакомить учащихся с форматом оператора цикла с предусловием, учить
составлять программы на использование оператора цикла с предусловием.
Ход урока
1. Организационный момент.
2. Актуализация знаний.
Для решения такого рода задач нам необходимо вспомнить операции целочисленного
деления (div) и взятия остатка (mod). При этом, обычно, используется несколько
стандартных приёмов, которые для успешного решения таких задач, необходимо твёрдо
усвоить.
2
Решение этой задачи без использования оператора цикла будет очень громоздко. Нам уже
известен оператор цикла с параметром FOR (используется когда известно количество раз
выполнения тела цикла), поэтому можем составить программу с его использованием.
А если усложним задачу: найти сумму цифр любого, вводимого с клавиатуры числа. В
этом случае оператор FOR нам уже не подойдет.
Что делать?
3. Новый материал.
Оператор цикла while – цикл с предусловием
Оператор цикла while имеет следующую форму:
while условие do
оператор
Условие представляет собой выражение логического
типа, а оператор после do называется телом цикла. не
Условие
Перед каждой итерацией цикла условие вычисляется, и повтора т
если оно истинно, то выполняется тело цикла, в
противном случае происходит выход из цикла. да
Если условие всегда оказывается истинным, то может
произойти зацикливание: Тело
while 2>1 do цикла
write(1);
Чтобы прервать зациклившуюся программу, следует
использовать комбинацию клавиш Ctrl-F2
Точка с запятой сразу после do в Pascal ABC считается
синтаксической ошибкой.
Допишем или изменим эту программу так, чтобы она считала произведение цифр этого
числа (p:=1;), количество цифр в заданном числе (k:=0; k:=k+1).
Находим max и min цифры в записи этого числа (max инициализируем значением
«меньше меньшего», min инициализируем значением «больше большего»).
3
4.Решение задач.
program z1;
uses crt;
var a, b: integer;
begin
read (a, b);
while a<>b do
if a>b then a:=a-b else b:=b-a;
writeln (a);
end.
2) . Ниже записана программа. Получив на вход число x , эта программа печатает два числа,
a и b . Укажите наибольшее из таких чисел x , при вводе которых алгоритм печатает
сначала 2, а потом 72.
var x, a, b: longint;
begin
readln(x);
a:=0; b:=1;
while x>0 do begin
a:=a+1;
b:=b*(x mod 10);
x:= x div 10;
end;
writeln(a); write(b);
end.
13) Ниже записана программа. Получив на вход число x , эта программа печатает два числа,
L и M . Укажите наименьшее из таких чисел x , при вводе которых алгоритм печатает
сначала 3, а потом 7.
var x, L, M: longint;
begin
readln(x);
L:=0; M:=0;
while x > 0 do begin
L:= L + 1;
M:= M + x mod 10;
x:= x div 10;
end;
writeln(L); write(M);
end.
5. Итог урока.
6. Домашнее задание.
Задачи: Дано число n.
a) напечатать те натуральные числа, квадрат которых не превышает n.
b) найти первое натуральное число, квадрат которого больше n.
c) cреди чисел 1, 4, 9, 16, 25… найти первое число, большее n.
5
a) program z1;
uses crt;
var i, n: integer;
begin
read (n);
i:=1;
while sqr(i) < n do
begin writeln (i); i:=i+1; end;
end.
b) program z1;
uses crt;
var i,n:integer;
begin
read (n);
i:=1;
while sqr(i)<n do i:=i+1;
writeln(i);
end.
c) program z1;
uses crt;
var i, n: integer;
begin
read (n);
i:=1;
while sqr(i)<n do
i:=i+1;
writeln (sqr(i));
end.