К оглавлению

 

Урок 11

Тема Самостоятельная работа. Разбор и решение задач с использованием алгоритмической структуры «ветвление».

Задача 1    Задача 2

Пример 1    Пример 2    Пример 3

Задания для самостоятельной работы

Задачи на дом

Вопросы для закрепления

 

В начало

 

Составление разветвляющихся алгоритмов

 

Задача 1. Определить Y = max {a, b}

Решение
1. Исходные данные: a, b. Результат: Y.
1. Метод решения.
Ввод данных. Сравниваем значения a и b. Большее значение присваиваем Y.

Алгоритмический язык:

Блок-схема алгоритма:

алг MAX
арг a, b
рез Y
нач
если a > b то Y := a
иначе Y := b
все
кон

 

Для отладки выберем два набора данных данных:
a = 3, b = 5 и a = 5, b = 3.
Первый набор данных: a = 3, b = 5.
1. a > b? — 3 > 5 — Нет.
2. Вывод: Y = 5.
3. Конец
Второй набор данных: a = 5, b = 3.
1. a > b? — 5 > 3 — Да.
2. Вывод: Y = 7.
3. Конец

 

 

 

 

 

Задача 2. Вычислить значение Y по одной из формул

Решение
1. Исходные данные: X, a, b. Результат Y.
2. Метод решения.
Ввод данных. Диапазон значений разбит на три области
(- , 10); [10, 23]; (23, +).

Алгоритмический язык:

Блок-схема алгоритма:

алг ВЗВ
арг X, a, b
рез Y
нач
если X < 10 то Y := X + a
иначе если X 23 то Y := X + b
иначе Y := X + a2
все
все
кон

 

Для отладки алгоритма выберем такие данные:
X = 5, X = 15, X = 25 — внутренние точки областей; X = 10, X = 23 — границы областей. Значения a и b выбираем постоянными. Таким образом, мы имеем 5 наборов данных. Для каждого набора необходимо исполнить алгоритм.

Первый набор данных: X = 5, a = 2, b = 3.
1. X < 10? — 5 < 10 — Да.
2. Y = X + a = 5 + 2 = 7.
3. Вывод: Y = 7.
4. Конец

 

 

 

 

 

Пример 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.      Приведите пример оператора выбора, где выражение-селектор выбора имеет перечислимый тип.

 

В начало

 

   К оглавлению 

Сайт управляется системой uCoz