Нахождение наибольшего числа из двух
[к списку
задач]
Найти наибольшее число из двух. Если числа равны, то вывести
любое из них.
Входные данные
В единственной строке входного файла INPUT.TXT записано 2
числа через пробел. Оба числа целые, не меньше -10000 и не
больше 10000.
Выходные данные
В файл OUTPUT.TXT выведите единственное число.
Пример
INPUT.TXT |
OUTPUT.TXT |
4 7
-10 -1000
8 8 |
7
-10
8 |
Решение
Задача максимально упрощена за счет того, что при равенстве
чисел можно вывести любое из них. Надо заметить, что даже в
самой простой задаче, подобной этой, можно получить правильный
результат несколькими способами. Сейчас мы рассмотри два
варианта решения.
Вариант 1.
Как видно из приведенной блок-схемы (см. рис), можно обойтись
неполным ветвлением. Наибольшее значение можно получить в
переменной "х", и затем вывести ее на экран или в файл.
Текст программы на Паскале.
var
x,y:integer;
begin
read(x,y);
if x < y then
x:=y;
write(x);
end.
Вариант 2.
Работоспособен и алгоритм, блок-схему которого вы видите
ниже.
Обратите внимание, что согласно блок схемы, мы вроде никак
явно не учитываем вариант равности чисел и просто выводим
наибольшее из них. Тем не менее, алгоритм вполне рабочий, т.к. в
том случае, когда условие x > y
является ложным, истинным является либо то, что
y > x или, что y =
x, т.е. в любом случае, верный результат окажется в
переменной y.
Текст программы на Паскале.
var
x,y:integer;
begin
read(x,y);
if x > y then
write(x)
else
write(y);
end.
[к списку
задач]
|