Этапы решения задач на компьютере
15 апреля группа № 13 (Информатика и ИКТ)
Урок № 60
Тема программы: Решение задач с использованием оператора цикла
Тема урока: Решение задач с использованием оператора цикла
Цель: научиться решать задачи с использованием операторов цикла.
ПЛАН
1. Повторение теоретического материала
2. Ответы на вопросы
3. Решение задач
Повторение теоретического материала
Цикл – многократное повторение последовательности действий по некоторому условию. Известны три типа циклических алгоритмических структур: Цикл с предусловием, цикл с постусловием и цикл с параметром.
На языке программирования Pascal существуют операторы, реализующие все три типа циклов.
Имеется кнопка для перехода со слайда 3 на слайд 7.
1) Цикл с предусловием (слайд 4)
Приводится блок-схема цикла с предусловием.
While <условие> do <тело цикла>;
Пока условие – истинно, выполняется тело цикла. Тело цикла может быть простым или составным оператором. Если условие ложно, то тело цикла не выполняется.
2) Цикл с постусловием (слайд 5)
Приводится блок-схема цикла с постусловием.
Repeat <тело цикла> until <условие>;
Повторяется выполнение тела цикла до истинности условия. Тело цикла с постусловием выполняется хотя бы один раз.
3) Цикл с параметром (слайд 6)
Приводится блок-схема цикла с параметром.
1. for i:=In to Ik do < тело цикла >;
1. for i:=In downto Ik do < тело цикла >;
i – параметр цикла – простая переменная порядкового типа;
In – выражение того же типа, определяющее начальное значение параметра;
Ik – выражение того же типа, определяющее конечное значение параметра;
Цикл повторяется, пока значение параметра лежит в интервале между In и Ik.
Этапы решения задач на компьютере
1. Постановка задачи.
2. Формализация (составление математической модели).
3. Разработка алгоритма.
4. Составление программы.
5. Ввод и отладка программы.
6. Получение результатов.
Ответить на вопросы
1) В чём отличительная черта цикла While?
2) В чём отличительная черта цикла Repeat?
3) В чём отличительная черта цикла с параметром?
4) Какие этапы решения задач на компьютере вы знаете?
Решение задач с использованием оператора цикла
1. Сколько раз выполнится тело цикла?
1) x:=5;
for i:=-1 to 5 do
x:=x+1;
Ответ: 7
2) s:=0;
for i:=4 to 1 do
s:=s+1;
Ответ: ни разу
2. Какое значение примет переменная Х после выполнения алгоритма? (слайд 8)
1. x:=3;
while x<10 do
x:=x+3;
x:=x+1;
Ответ: 13
3. Какое значение примет переменная Х после выполнения алгоритма? (слайд 9)
1. x:=3;
while x<10 do
begin
x:=x+3;
x:=x+1;
end;
Ответ: 11
4. Сколько раз будет повторен цикл? Чему будут равны S, a, b? (слайд 10)
a:=1; b:=1;
While a+b < 8 do
begin
a:=a+1;
b:=b+2;
end;
S:=a+b;
Ответ: 2 раза
S=8, a=3, b=5
5. Определите значение переменной S после выполнения программы (слайд 11):
Var a,S: integer;
Begin
S:=0;
For a:=5 downto 1 do
S:=s+2*a;
Writeln('S=', S);
End.
Ответ: S=30
Задача 1 .Начав тренировки, лыжник в первый день пробегал 10 км. Каждый следующий день он увеличивал длину пробега на 10% от предыдущего дня. Определить в какой день он пробежит больше 20 км, в какой день суммарный пробег за все дни превысит 100км.
Решение .
Program prim2;
Var S,p: real;
N: integer;
Begin
S:=10;
N:=1;
While s<20 do
Begin
N:=n+1;
S:=s*1.1;
End;
Writeln(' дневной пробег больше 20 км на ',n,' день');
S:=10;
N:=1;
p:=s;
While s<100 do
Begin
N:=n+1;
S:=s*1.1;
p:=p+s; {накапливаем суммарный пробег}
End;
Writeln('за ',n,' пробежит больше 100 км');
Readln;
End.
Задача 2. Даны натуральные числа от 20 до 50. Напечатать те из них, которые делятся на 3, но не делятся на 5.
Решение.
Program prim4;
Var n: integer;
Begin
N:=20;
While n<51 do
Begin
If (n mod 3=0) and (n mod 5<>0) then writeln(n);
N:=n+1;
End;
Readln;
End.
Задача 3.С помощью оператора repeatнапишите программу, которая требует у вас пароль, например ‘w’, и если пароль правильный, то печатает сообщение «Молодец!».
Решение .
Program prim6;
Var a: char;
Begin
Repeat
writeln(‘введитепароль’);
readln(a);
until (a=’w’);
writeln(‘молодец!!’);
Readln;
End.
Домашнее задание: Повторить § 21. Необходимо начертить блок-схемы и написать тексты программ к предложенным задачам.
1. Найти сумму квадратов от 1 до N.
(S = 1 + 4 + 9 + … + n2)
2. Найти произведение 1 ∙ 2 ∙ 3 ∙ … ∙ n.
Информационные источники (основные учебники по предмету)
Информатика. Базовый уровень: учебник для 10 класса / Семакин И. Г., Хеннер Е. К., Т.Ю. Шеина.- 5-е изд. — М.: БИНОМ. Лаборатория знаний, 2015. —264 с.