|
|||
Бейсик, Паскаль ⇐ ПредыдущаяСтр 2 из 2 Бейсик, Паскаль if <ЛВ> then < серия команд 1> else < серия команд 2> Си if (<ЛВ>) <серия команд 1>; else <серия команд 2> Для получения неполного ветвления ветвь else разрешается опускать. Приведем пример алгоритма с использованием ветвления. Задача. Из трех предложенных чисел А, В и С выбрать и вывести максимальное. Решение: Идея алгоритма решения задачи несложная. Сначала сравним между собой А с В И наибольшее значение сохраним во вспомогательную переменную М. Затем, если окажется, что С > М, то заменим значение М; в противном случае никаких действий предпринимать не нужно. Данная задача интересна тем, что в ней одновременно используются оба варианта развилки — полный и неполный. Блок-схема решения выглядит следующим образом.
Здесь на схеме А изображен общий стратегический при решения задачи, а на схеме Б — его развернутая реализация. Если не конкретизировать деталей анализа исходных чисел, то алгоритм на схеме А получается линейным, а вовсе не разветвляющимся, как следует из схемы Б. Практический вывод из этого факта такой: поскольку в чистом виде разветвляющийся алгоритм практически никогда не встречается, то лучше говорить не о типе всего алгоритма в целом, а о типе его отдельных элементов (Частей). А вот как выглядит решение этой задачи на языке Паскаль: program maximum_3x (input, output); var a,b,с,m:real; begin readln(a,b,c); if a > b then m := a else m := b; if с > m then m := c; writeln (‘axlmum=', m: 9: 4) end.
|
|||
|