В предыдущих уроках мы рассмотрели наиболее простой, линейный тип алгоритмов. Напомню, что всего существует три типа: линейные, разветвляющиеся и циклические (алгоритмы с повторениями). В этом уроке я расскажу вам о втором типе алгоритмов — об алгоритмах с ветвлениями.

Ветвления

Ветвление – это команда алгоритма, в которой делается выбор, выполнять или не выполнять какую-нибудь группу команд в зависимости от условий.

Ветвление используется в двух случаях:

  1. Когда требуется пропустить определенную команду или группу команд.
  2. Когда нужно записать выбор тех или иных действий в зависимости от условия.

В блок-схеме условие ветвления изображается в ромбе, из которого обязательно выходят ДВЕ стрелки – первая (стрелка «Да») указывает на команды, которые будут выполняться в случае, если условие соблюдено; вторая (стрелка «Нет») – на команды, которые будут выполнены, если условие не соблюдено. Даже если команда, на которую указывает одна из стрелок (Чаще всего «Нет») отсутствует, стрелка все равно имеет место быть.

Алгоритм с ветвлением, представленный в виде блок-схемы.

В словесной формулировке запись ветвления выглядит так:

Реализация ветвления в Паскаль.

Как же реализовать ветвление в Паскаль? Проще, чем вы думаете:
if then else

Запомните! Перед else никогда не ставят точку с запятой!

Давайте поговорим об условии выбора. Понятно, что этологическое выражение. Если оно является правдой, то выполняется главная ветвь, если ложь, то боковая ветвь.

Задачи из блока if.

Рассмотрим несколько задач из сборника М.Э.Абрамяна «1000 задач по программированию».

If1. Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число.

В данной программе даже не надо реализовывать боковую ветвь.

If2. Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае вычесть из него 2. Вывести полученное число.

If3. Дано целое число. Если оно является положительным, то прибавить к нему 1; если отрицательным, то вычесть из него 2; если нулевым, то заменить его на 10. Вывести полученное число.

Для того чтобы решить эту задачу мы должны использовать вложенный if.

Мы работаем в PascalABC.NET. Только в этой СР есть возможность написать а -= 2.

If5. Даны три целых числа. Найти количество положительных и количество отрицательных чисел в исходном наборе.

Длиннющая блок-схема. 🙂

If30. Дано целое число, лежащее в диапазоне 1–999. Вывести его строку-описание вида «четное двузначное число», «нечетное трехзначное число» и т. д.

Вот и все! Не забывайте кликать по кнопочкам и добавлять наш сайт в закладки!

Цель:

  • сформировать знания основных операторов алгоритмической структуры “ветвление”,
  • привить навык программирования с использованием операторов условных переходов для решения конкретных задач.

Учебная – углубление, обобщение и систематизация знаний по программированию.

Развивающая – развитие алгоритмического мышления, памяти, внимательности.

Воспитательная – развитие познавательного интереса, логического мышления.

1. Организационный момент.

Задание 2.1. Найти ошибку в записи программы:

Программа с ошибками Исправленная программа
Programm Задача;

Var R, l, S – real

Write ln (ввести значение R)
Readln (R);
L = 2*Pi*R;
S = Pi * Sqrt (R);
Writeln (‘S=’, S:7);
Writeln (‘l=’, l:7);

End.

Program Zadacha;

Var R, l, S : real;

Writeln (‘ввести значение R’);
Readln (R);
L := 2*Pi*R;
S := Pi * Sqr (R);
Writeln (‘S=’, S:7:2);
Writeln (‘l=’, l:7:2);

3. Введение нового материала

Задание 3.1.Чтобы определить вид алгоритмической структуры, которую мы будем изучать на уроке, необходимо отгадать ребус:

Ответ: вЕТ вЛЕ НиЕ

Разветвляющимся называется алгоритм в котором порядок выполнения действий зависит от некоторого условия.

Общий вид блок-схем алгоритмической структуры “ветвление”

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

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

Ответ: 1 – кислая среда; 2 – щелочная среда; 3- нейтральная среда.

Синтаксис на языке программирования TurboPascal:

Полное ветвление: if then else ;

Неполное ветвление: if then ;

Если истинно (true), то выполняется , в противном случае (false) — .

— логическое выражение типа Boolean;

Если несколько, то они заключаются в скобки и объединяются ключевыми словами: and, or, not.

Математическая запись Запись на языке TurboPascal
=

=

В TurboPascal, если в качестве оператора должны выполняться серия операторов, то они объединяются в операторные скобки Begin – end;

Задание 4.1. Даны два числа А и В. Найти наибольшее из них.

(Задача решается на основе этапов решения задач на ПК)

1. Постановка задачи Дано: А и В – целые

Найти: наибольшее из А или В

2. Математическая постановка задачи Если А>B, то А – наибольшее число, иначе В – наибольшее. 3. Разработка алгоритма

рис. 5.

4. Разработка программы на изучаемом языке программирования Язык программирования TurboPascal:

write (‘а=’); readln (a);

write (‘b=’); readln (b);

writeln (‘а — наибольшее’)
else
writeln (‘b — наибольшее’);

end.

5. Реализация программы на ПК и её отладка. 6. Тестирование
  • a=3 b= 4
  • b – наибольшее
  • a=4 b= 3
  • a — наибольшее

Задание 4.2. Дополним “Задание 4.1.”: найти наибольшее из трех заданных чисел А, В, и С.

Обратим внимание на отличие в записи блок-схемы и программы.

1. Постановка задачи Дано: А, В, С – целые

Найти: наибольшее из трех чисел

2. Математическая постановка задачи Если А>B и А>C, то А – наибольшее число.

Далее можно сравнить только два числа: если В>C, то В – наибольшее, иначе С – наибольшее.

3. Разработка алгоритма

рис. 6.

4. Разработка программы на изучаемом языке программирования Язык программирования TurboPascal:

Var a,b,c : integer;

write (‘а=’); readln (a);

write (‘b=’); readln (b);

write (‘c=’); readln (c);

if (a>b) and (b>c) then

writeln (‘а — наибольшее’)
else
iIf b>c then
writeln (‘b — наибольшее’)
else
writeln (‘c — наибольшее’);

end.

5. Реализация программы на ПК и её отладка. 6. Тестирование
  • a=3 b= 4 c=1
  • b – наибольшее
  • a=4 b= 3 c= 1
  • a – наибольшее
  • а= 3 b = 1 c=4
  • с – наибольшее

5. Подведение итогов.

Задание 5.1. Если а = — 3, то чему будет равно Z после выполнения фрагмента программы:

Команда ветвления в полной и неполной форме (урок 1)

(Данная разработка урока по теме «Команда ветвления в полной и неполной форме» составлена из расчета 1 час в неделю, информатика ведется только в 10 и 11 классах. До изучения этой темы в 10 классе обязательно рассмотрение темы «Алгоритм. Его свойства и способы записи», «Язык программирования Бейсик».)

Цель: рассмотреть команду ветвления в полной и неполной форме; выработать умения и навыки в составлении программ по блок-схемам и блок-схем по программам с командами ветвления

I. Организационный момент

II. Проверка домашнего задания.

Перед вами листочки с таинственными числами. Под каждым числом либо изображена геометрическая фигура, либо написан оператор. Вы должны ответить на вопросы, найти верный ответ и записать числа, соответствующие ответу, в таблицу:

Листочки с геометрическими фигурами и операторами языка программирования Бейсик

PRINT

INPUT

1. Эта геометрическая фигура используется в блок- схемах для обозначения начала и конца алгоритма.

2. Данная геометрическая фигура используется в блок-схемах для обозначения любого вычисления.

3. Для вывода данных на экран в Бейсике используется этот оператор.

4. Этот оператор используется для ввода данных с клавиатуры.

5. Для очистки экрана в Бейсике служит этот оператор.

6. Для проверки условия используется эта фигура

7. Ввод-вывод данных на экран обозначается этой геометрической фигурой.

8. Этим оператором заканчивается любая программа.

Какая последовательность чисел у вас появилась во второй строке? Под этой последовательностью зашифровано одно слово. Попробуйте найти ключ и расшифровать это слово. Дайте определение.

Алгоритм – конечный набор точных и понятных предписаний (правил, инструкций, действий), позволяющих решить любую конкретную задачу из некоторого класса однотипных задач.

III Изучение новой темы.

Вспомним, как называется алгоритм, в результате которого обеспечивается выбор одного из двух возможных действий? Правильно, разветвляющимся. Такой алгоритм обязательно содержит условие и, в зависимости от результата выполнения условия, происходит выбор действия. Например: Если день рабочий, то идем в школу, иначе будем отдыхать. Если родители деньги дадут, то идем на дискотеку, иначе будем смотреть телевизор. Таких примеров мы можем привести много из обычной жизни и наук. К примеру, математика: Если у равностороннего четырехугольника углы прямые, то назовем его квадратом, иначе назовем его ромбом. Физика: Если удар упругий, то масса тела сохраняется, иначе масса изменяется

Давайте теперь определим, что же такое ветвление?

Ветвление – эта такая форма организации действий, при которой в зависимости от выполнения или невыполнения некоторого условия совершается либо одна, либо другая последовательность действий.

Рассмотрим команду ветвления в полной и неполной форме, содержащее одно и несколько действий на алгоритмическом языке, представленную в виде блок-схемы и на языке программирования Бейсик. Оформим в виде таблицы.