Урок 11
Тема Самостоятельная работа. Разбор и решение задач с использованием алгоритмической структуры «ветвление».
Задания для самостоятельной работы
Составление разветвляющихся алгоритмов
|
|
|
|||||
|
|
|
|||||
|
|
|
|
|
|
|||||
|
|
|
|||||
|
|
|
Пример 1. Вычислить значение функции
|
1. Ввести x. 2. Если x£–12, то y:=–x2 3. Если x<0, то y:=x4 4. y := x–2 5. Вывести y 6. Конец |
При тестировании алгоритмов с развилкой необходимо подбирать такие исходные данные, чтобы можно было проверить все ветви. В приведенном выше примере должно быть по крайней мере три тестовых набора.
Пример 2. Дано натуральное число n. Если число нечётное и его удвоение не приведет к выходу за 32767 (двухбайтовое целое число со знаком), удвоить его, иначе — оставить без изменения.
Чтобы удовлетворить условию удвоения, число n должно быть нечетным и меньше 16384.
|
1. Ввести число n 2. Если число n нечетное и меньше 16384, то n := n * 2 3. Вывод n 4. Конец |
Рассмотренный пример иллюстрирует неполную развилку. Также следует отметить, здесь логическое выражение, являющееся условием, содержит 2 операнда.
Пример 3 Составьте алгоритмы решения задач линейной структуры (условия этих задач заимствены из учебного пособия В.М. Заварыкина, В.Г. Житомирского и М.П. Лапчика "Основы информатики и вычислительной техники", 1989):
а) в треугольнике известны три стороны a, b и c; найти (в градусах) углы этого треугольника, используя формулы:
С=180o-(А+В). |
Пояснение. Обратите внимание на то, что стандартные тригонометрические функции arccos и arcsin возвращают вычисленное значение в радианной мере.
Решение:
алг Углы треугольника(арг вещ a,b,c, рез вещ UgolA,UgolB,UgolC)
нач вещ RadGr,UgolARad
| RadGr — коэф. перевода угла из радианной меры в градусную
| UgolARad — угол A (в радианах)
RadGr:=180/3.14
UgolARad:=ArcCos((b*b+c*c-a*a)/(2*b*c))
UgolA:=UgolARad*RadGr
UgolB:=ArcSin(b*sin(UgolARad)/a)*RadGr
UgolC:=180-(UgolA+UgolB)
кон
Задачи для самостоятельной работы
б) в треугольнике известны две стороны a, b и угол C (в радианах) между ними; найти сторону c, углы A и B (в радианнах) и площадь треугольника, используя формулы:
с2
= a2 + b2 - 2ab cos C.
Пояснение. Сначала нужно найти сторону c, а затем остальные требуемые значения;
в) в треугольнике известны три стороны a, b и c; найти радиус описанной окружности и угол A (в градусах), используя формулы:
где
г) в правильной треугольной пирамиде известны сторона основания a и угол A (в градусах) наклона боковой грани к плоскости основания; найти объем и площадь полной поверхности пирамиды, используя формулы:
V=Socн· H/2; |
||
где |
||
д) в усеченном конусе известны радиус оснований R и r и угол A (в радианах) наклона образующей к поверхности большого основания; найти объем и площадь боковой поверхности конуса, используя формулы:
где |
||
e) в правильной четырехугольной пирамиде сторона основания равна a, а боковое ребро наклонено к плоскости основания под углом A; найти объем и площадь полной поверхности пирамиды и площадь сечения, проходящего через вершину пирамиды и диагональ основания d; использовать формулы:
Задайте с помощью команд если или выбор вычисления по формулам:
a) |
||
б) |
||
в) |
|
|
г) |
||
д) |
||
е) |
||
ж) |
если точка лежит внутри круга радиусом r (r>0) с центром в точке (a,b) в противном случае |
1. Когда возникает необходимость в организации развилки?
2. Какая развилка называется полной? неполной?
3. Выражение какого типа может выступать в качестве условия при организации развилки? Какие значения принимают такие выражения?
4. Могут ли в полной развилке не выполниться операторы ни по одной из ветвей? выполниться по обеим ветвям?
5. Записать примеры 1-3 по теме "Оператор выбора" с помощью условного оператора. Сколько развилок понадобилось в каждом из случаев?
6. В каком случае целесообразно использовать оператор выбора?
7. Какого типа может быть выражение, являющееся селектором выбора? Приведите примеры.
8. Используя оператор выбора решить задачу: "Определить знак заданного целого числа".
9. Приведите пример оператора выбора, где выражение-селектор выбора имеет перечислимый тип.