Алгоритм разветвляющейся структуры. Полная, неполная форма организации ветвления
Цель:
- сформировать знания основных операторов алгоритмической структуры "ветвление",
- привить навык программирования с использованием операторов условных переходов для решения конкретных задач.
Задачи:
Учебная - углубление, обобщение и систематизация знаний по программированию.
Развивающая - развитие алгоритмического мышления, памяти, внимательности.
Воспитательная - развитие познавательного интереса, логического мышления.
Ход урока
1. Организационный момент.
2. Повторение.
Задание 2.1. Найти ошибку в записи программы:
| Программа с ошибками | Исправленная программа |
|
Programm Задача;
Uses Crt; Var R, l, S - real Begin
End. |
Program Zadacha;
Uses Crt; Var R, l, S : real; Begin
End. |
3. Введение нового материала
Задание 3.1.Чтобы определить вид алгоритмической структуры, которую мы будем изучать на уроке, необходимо отгадать ребус:

рис. 1.
Ответ: вЕТ вЛЕ НиЕ
Разветвляющимся называется алгоритм в котором порядок выполнения действий зависит от некоторого условия.
Общий вид блок-схем алгоритмической структуры "ветвление"

рис. 2.
Задание 3.2. Составим блок схему сказочного алгоритма: "Поехал Иван - Царевич на сером волке за Жар - Птицей. Ехал он, ехал, глядь - перед ним лежит огромный камень. На камне надпись: "Направо пойдешь - коня потеряешь, налево пойдешь - голову сложишь…"
Ответ: Рисунок 3.

рис. 3.
Задание 3.3. По условию в блок-схеме определить результат:

рис. 4.
Ответ: 1 - кислая среда; 2 - щелочная среда; 3- нейтральная среда.
Синтаксис на языке программирования TurboPascal:
Полное ветвление: if <условие> then <оператор1> else <оператор2>;
Неполное ветвление: if <условие> then <оператор1 >;
Если <условие> истинно (true), то выполняется <оператор_1>, в противном случае (false) - <оператор_2>.
<Условие> - логическое выражение типа Boolean;
Если <условий> несколько, то они заключаются в скобки и объединяются ключевыми словами: and, or, not.
| Математическая запись | Запись на языке TurboPascal |
|
=
< > < >
|
=
< > <= >= <> |
В TurboPascal, если в качестве оператора должны выполняться серия операторов, то они объединяются в операторные скобки Begin - end;
if <условие> then
begin
<операторы>;
end;
else
begin
<операторы>;
end;
4. Осмысление
Задание 4.1. Даны два числа А и В. Найти наибольшее из них.
(Задача решается на основе этапов решения задач на ПК)
| 1. Постановка задачи |
Дано: А и В - целые
Найти: наибольшее из А или В |
| 2. Математическая постановка задачи | Если А>B, то А - наибольшее число, иначе В - наибольшее. |
| 3. Разработка алгоритма |
рис. 5. |
| 4. Разработка программы на изучаемом языке программирования |
Язык программирования TurboPascal:
Program Vetvlenie1; Uses Crt; Var a,b: integer; Begin ClrScr; write ('а='); readln (a); write ('b='); readln (b); if a>b then
end. |
| 5. Реализация программы на ПК и её отладка. | |
| 6. Тестирование |
|
Задание 4.2. Дополним "Задание 4.1.": найти наибольшее из трех заданных чисел А, В, и С.
Обратим внимание на отличие в записи блок-схемы и программы.
| 1. Постановка задачи |
Дано: А, В, С - целые
Найти: наибольшее из трех чисел |
| 2. Математическая постановка задачи |
Если А>B и А>C, то А - наибольшее число.
Далее можно сравнить только два числа: если В>C, то В - наибольшее, иначе С - наибольшее. |
| 3. Разработка алгоритма |
рис. 6. |
| 4. Разработка программы на изучаемом языке программирования |
Язык программирования TurboPascal:
Program Vetvlenie2; Uses Crt; Var a,b,c : integer; Begin ClrScr; write ('а='); readln (a); write ('b='); readln (b); write ('c='); readln (c); if (a>b) and (b>c) then
end. |
| 5. Реализация программы на ПК и её отладка. | |
| 6. Тестирование |
|
5. Подведение итогов.
Задание 5.1. Если а = - 3, то чему будет равно Z после выполнения фрагмента программы:
if a>=0 then z:=10;
if a<0 then if a<-5 then z:=20;
if a>=-5 then if a<-3 then z:=30 else z:=0;
Ответ: z = 0
Задание 5.2. (домашнее) Составить блок-схему и программу, в которой значение переменной вычисляется по формуле: a + b, если а - нечетное и a*b, если а - четное (условие четности числа: а mod 2 = 0).
Используемая литература:
- Гусева И.Ю. Информатика в схемах и таблицах. - СПб.: Тригон, 2008 г.
- Зубрилин А.А. Занимательные задачи и ребусы по информатике. Информатика в школе: Приложение к журналу "Информатика и Образование". №3 - 2007. - М.:Образование и Информатика, 2007.
- Чернов А.А. Конспекты уроков по информатики в 9-11 классах: Практикум по программированию. - Влгоград: Учитель, 2005.
- CD. "Информатика" Увлекательная программа тренажер для детей. - ГуруСофт, 2004

