МОУ СОШ № 154
Изучаем разветвляющиеся алгоритмы и программы
Составила: учитель информатики Перова Алина Львовна
Нижний Новгород
2010г .
Изучаем разветвляющиеся алгоритмы и программы
Повторяем
Какой алгоритм называется разветвляющимся?
Какая форма организа-ции действий называет-ся ветвлением ?
Форма организации действий, при которой в зависимости от выполнения некоторого условия совершается одна или другая последовательность действий, называется ветвлением
Алгоритм называется разветвляющимся , если порядок выполнения шагов алгоритма изменяется в зависимости от заданных условий
Изучаем разветвляющиеся алгоритмы и программы
Полная команда ветвления
начало
ввод исходных данных
Да
Нет
условие
оператор 2
оператор 1
вывод результатов
конец
3
Изучаем разветвляющиеся алгоритмы и программы
Неполная команда ветвления
начало
ввод исходных данных
Да
Нет
условие
оператор 1
вывод результатов
конец
4
Изучаем разветвляющиеся алгоритмы и программы
Многовариантная команда ветвления
начало
ввод исходных данных
Да
Нет
условие 1
оператор 1
Да
Нет
условие 2
Да
Нет
оператор 2
условие 3
оператор 4
оператор 3
вывод результатов
5
Изучаем разветвляющиеся алгоритмы и программы
конец
Учимся решать задачи
1. Для заданного значения Х составить блок-схему и программу вычисления У по формуле:
начало
ввод: x
x при x ≥ 0
y = |x| =
Да
Нет
x
-x при x 0
y = x
y = - x
вывод: y
Проверь себя
6
Изучаем разветвляющиеся алгоритмы и программы
конец
З.№ 1. 1 способ
2 способ
CLS
INPUT “X=”;X
IF X
Y= -X
ELSE
Y= X
END IF
PRINT “X=”;X
END
?
6
Изучаем разветвляющиеся алгоритмы и программы
Учимся решать задачи
2. Для заданного значения а составить блок-схему и программу вычисления У по формуле:
начало
y =
ввод: a
Да
Нет
a = 9
y = 5 / a * (a – 9)
вывод : «выражение не имеет смысла»
вывод: y
Проверь себя
конец
8
Изучаем разветвляющиеся алгоритмы и программы
=0 THEN ELSE X1=(-B+SQR(D))/(2*A) X2=(-B-SQR(D))/(2*A) Y= 5/А+(А-9) PRINT “корни уравнения:”;X1,X2 END IF ELSE PRINT “Y =”; Y END PRINT “дейст. корней нет ” END IF END 8 Изучаем разветвляющиеся алгоритмы и программы " width="640"
Ответ З. № 2
Ответ З. № 4
CLS
CLS
INPUT “А=”;А
INPUT “А,B,C”;А,B,C
D=B^2-4*A*C
IF А=9 THEN
PRINT “выражение не имеет смысла”
IF D=0 THEN
ELSE
X1=(-B+SQR(D))/(2*A)
X2=(-B-SQR(D))/(2*A)
Y= 5/А+(А-9)
PRINT “корни уравнения:”;X1,X2
END IF
ELSE
PRINT “Y =”; Y
END
PRINT “дейст. корней нет ”
END IF
END
8
Изучаем разветвляющиеся алгоритмы и программы
c и a+cb и b+ca НЕТ ДА ВЫВОД: не существует ВЫВОД: существует КОНЕЦ 10 Изучаем разветвляющиеся алгоритмы и программы " width="640"
Решаем самостоятельно
3. Составить программу проверки существования треуголь-ника с заданными сторонами
НАЧАЛО
ВВОД: a,b,c
a+bc и a+cb и b+ca
НЕТ
ДА
ВЫВОД: не существует
ВЫВОД: существует
КОНЕЦ
10
Изучаем разветвляющиеся алгоритмы и программы
Учимся решать задачи
4. Составить программу для вычисления корней квадратного уравнения
Квадратное уравнение вида
Ax 2 + Bx + C = 0
Начало
Ввод A, B, C
D = B 2 - 4 A C
Нет
Да
D ≥ 0
X1 = (- B - ) / 2 A
Вывод:
Действительных
корней нет
X2 = (- B + ) / 2 A
Вывод X1, X2
Проверь себя
Конец
11
Изучаем разветвляющиеся алгоритмы и программы
Решаем самостоятельно
5. Составить программу для определения вида треугольника (равнобедренный, равносторонний, разносторонний) по трем сторонам
НАЧАЛО
ВВОД: a, b, c
a=b или b=c или c =a
НЕТ
ДА
a=b и b=c и c =a
ДА
НЕТ
ВЫВОД: равнобедренный
ВЫВОД: разносторонний
ВЫВОД: равносторонний
КОНЕЦ
12
Изучаем разветвляющиеся алгоритмы и программы
23 . Проверь себя 12 Изучаем разветвляющиеся алгоритмы и программы " width="640"
Решаем самостоятельно
6. Для заданного значения Х составить блок-схему вычисления У по формуле:
x + a при x ;
y = x + b при 10 ≤ x ≤ 23 ;
x + a 2 при x 23 .
Проверь себя
12
Изучаем разветвляющиеся алгоритмы и программы
23 y = x + a y = x + b y = x + a 2 ВЫВОД: y КОНЕЦ 14 Изучаем разветвляющиеся алгоритмы и программы " width="640"
Ответ З. № 6
НАЧАЛО
ВВОД: x, a,b
ДА
НЕТ
x
ДА
НЕТ
x 23
y = x + a
y = x + b
y = x + a 2
ВЫВОД: y
КОНЕЦ
14
Изучаем разветвляющиеся алгоритмы и программы
0 z = 0 Нет y 0 Да x 1 y 1 z 1 -1 -1 1 z = 2 z = 1 вывод: z Проверь себя конец Изучаем разветвляющиеся алгоритмы и программы " width="640"
Решаем самостоятельно
7. Какое значение будет иметь переменная z после выполнения данного алгоритма, изображенного блок-схемой? Выполнить алгоритм при различных значениях x и y, полученные результаты занести в таблицу.
начало
ввод: x, y
Да
Нет
x 0
z = 0
Нет
y 0
Да
x
1
y
1
z
1
-1
-1
1
z = 2
z = 1
вывод: z
Проверь себя
конец
Изучаем разветвляющиеся алгоритмы и программы
Ответ З. № 7
Ответ З. № 8
x
1
y
1
z
a
1
-1
-1
0
1
x
1
-5
2
2
0
4
-1
3
6
8
18
22
Изучаем разветвляющиеся алгоритмы и программы
Решаем самостоятельно
начало
8. Вычислить алгоритм разветвленной структуры, представленный в виде блок-схемы, при заданных входных данных.
ввод: a
x = a * 2
Да
Нет
x
x = x + 6
x = x - 5
a
x
0
2
4
6
8
вывод : x
конец
Проверь себя
Изучаем разветвляющиеся алгоритмы и программы
Желаю удачи!
Изучаем разветвляющиеся алгоритмы и программы