Этапы решения задач на компьютере

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 с.