Оператор ветвления (условный оператор)

Содержание

Слайд 2

Разветвляющийся алгоритм (ветвление, с выбором действия) – это алгоритм, в котором

Разветвляющийся алгоритм (ветвление, с выбором действия) – это алгоритм, в котором

в зависимости от условия выполняется либо одна, либо другая последовательность действий.
Слайд 3

Основные варианты структуры ветвления: если - то; если – то - иначе; Полная форма Неполная форма

Основные варианты структуры ветвления:
если - то; если – то -

иначе;

Полная форма

Неполная форма

Слайд 4

Рассмотрим несколько задач, решение которых на компьютере получается с помощью ветвящихся

Рассмотрим несколько задач, решение которых на компьютере получается с помощью ветвящихся

алгоритмов.
Первая задача: даны два числа; выбрать большее из них.
Пусть исходными данными являются переменные А и В. Их значения будут задаваться вводом. Значение большего из них должно быть присвоено переменной С и выведено на экран компьютера. Например, если А = 5, В = 8, то должно получиться: С = 8.

Алгоритмы с ветвящейся структурой
Представление ветвлений на АЯ. Трассировка ветвящихся алгоритмов

Слайд 5

Блок-схема алгоритма решения этой задачи изображена на рис. 3.6. Блок-схема алгоритма

Блок-схема алгоритма решения этой задачи изображена на рис. 3.6.

Блок-схема алгоритма решения

этой задачи изображена на рис. 3.6.

Блок-схема алгоритма решения этой задачи изображена на рис. 3.6.

Блок-схема алгоритма решения этой задачи изображена на рис. 3.6.

Блок-схема алгоритма решения этой задачи изображена на рис. 3.6

Блок-схема алгоритма решения этой задачи изображена на рис. 3.6.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Если значение переменной А больше, чем В, то переменной С присвоится значение А. В противном случае, когда А < В, переменной С присвоится значение В.

Слайд 6

До выполнения на компьютере правильность алгоритма можно проверить путем заполнения трассировочной

До выполнения на компьютере правильность алгоритма можно проверить путем заполнения трассировочной

таблицы. Вот как будет выглядеть трассировка нашего алгоритма для исходных значений А = 5, В = 8.

До выполнения на компьютере правильность алгоритма можно проверить путем заполнения трассировочной таблицы. Вот как будет выглядеть трассировка нашего алгоритма для исходных значений А = 5, В = 8.

Слайд 7

Ветвление является структурной командой. Его исполнение происходит в несколько шагов: проверка

Ветвление является структурной командой. Его исполнение происходит в несколько шагов: проверка

условия (выполнение логического выражения) и выполнение команд на одной из ветвей "да" или "нет". Поэтому в трассировочной таблице записываются не команды алгоритма, а отдельные операции, выполняемые компьютером на каждом шаге.

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

Слайд 8

Да Нет A > B ? B:=B*2 Оператор ветвления в неполной форме Задача.

Да

Нет

A > B ?

B:=B*2

Оператор ветвления в неполной форме

Задача.

Слайд 9

IF (условие) THEN (операторы); Если (условие) то (операторы) IF A>B THEN B:=В*2;


IF (условие)
THEN (операторы);
Если (условие) то (операторы)

IF A>B THEN B:=В*2;
Слайд 10

Выполните самостоятельно трассировку этого алгоритма для вариантов 1) А = 0,2,

Выполните самостоятельно трассировку этого алгоритма для вариантов 1) А = 0,2,

В = 0,3; 2) А = 7, В = 4; 3) А = 5, В = 5. Если вы все проделаете правильно, то убедитесь, что алгоритм верный.

Рис. 3.7. Алгоритм выбора большего из двух значений (с неполным ветвлением

Слайд 11

Оператор ветвления в полной форме Задача. Из двух чисел найти максимальное.

Оператор ветвления в полной форме

Задача. Из двух чисел найти максимальное.

Слайд 12

IF (условие) THEN (операторы) ELSE (операторы); Если (условие) то (операторы) иначе


IF (условие)
THEN (операторы) ELSE (операторы);
Если (условие)

то (операторы)
иначе (операторы)
Все (кв)

условие

записывается с помощью знаков сравнения
и принимает два значения: да или нет

IF A>B
THEN max:=A ELSE max:=B;

Слайд 13

Запишем решение этой задачи на Паскале program maximym; var A, B,

Запишем решение этой задачи на Паскале

program maximym;
var A, B, max: integer;

begin
writeln (‘введите любые два числа’);
readln (A,B);
if A>B
then max:=A
else max:=B;
writeln (‘ максимальное число‘, max);
end.
Слайд 14

А теперь запишем рассмотренные алгоритмы на Алгоритмическом языке (АЯ). Переменные А,

А теперь запишем рассмотренные алгоритмы на Алгоритмическом языке (АЯ).

Переменные

А, В, С - числовые величины. В этой задаче они могут принимать любые значения. В программировании числовые величины, которые могут иметь любые значения - целые, дробные, - называются вещественными. Им ставится в соответствие вещественный тип. На Алгоритмическом языке этот тип указывается служебным словом вещ.
Слайд 15

Как выглядит команда ветвления, вы уже знаете. Вот два алгоритма на

Как выглядит команда ветвления, вы уже знаете. Вот два алгоритма на

АЯ, соответствующие блок-схемам на рис. 3.6 и 3.7:
Слайд 16

Сложные ветвящиеся алгоритмы Получим алгоритм решения еще одной задачи: найти наибольшее

Сложные ветвящиеся алгоритмы Получим алгоритм решения еще одной задачи: найти наибольшее значение среди

трех величин: А, В, С.
Слайд 17

Задача № 1: Ввести число. Если оно неотрицательно, вычесть из него

Задача № 1: Ввести число. Если оно неотрицательно,
вычесть из

него 50, в противном случае
прибавить к нему 100.
Задача № 2: Ввести 2 числа. Если их произведение
отрицательно, умножить его на –2 и
вывести на экран, в противном случае
увеличить его в 3 раза и вывести на экран.
Задача № 3: Ввести 2 числа. Вычесть из большего
меньшее.
Задача № 4: Ввести число. Если оно больше 8, разделить
его на 4, если меньше или равно 8, то
умножить на 5.

If x>0 then y:=x-50 else y:=x+100;

If a*b<0 then y:=a*b*(-2) else y:=a*b*3;

If A>B then C:=A-B;

If x>8 then y:=x/4 else y:=x*5;

Слайд 18

Практическая работа в среде PascalABC program maximym; var A, B, max:

Практическая работа в среде PascalABC

program maximym;
var A, B, max: integer;
begin

writeln (‘введите любые два числа’);
readln (A,B);
if A>B then max:=A
else max:=B;
writeln (‘ максимальное число‘, max);
end.

1. Проверить работу программы

2. Записать программу для любой задачи (задачи из карточки), используя составленные конструкции оператора ветвления
и проверить в среде TP.

Слайд 19

§ 36-37 Домашнее задание Написать программы для любых двух задач из

§ 36-37

Домашнее задание

Написать программы
для любых двух задач
из карточки.

Задача. Ввести

два числа.
Если их сумма больше 100, то сумму
уменьшить в 2 раза, в противном случае
увеличить в 2 раза.

или