Задача 8 Урок 9
Primary tabs
Пользователь вводит три числа, найдите из них максимальное.
Решите тремя способами:
1 способ: С использованием логической операции and.
var a, b, c: integer; begin write('Введите число a: '); read(a); write('Введите число b: '); read(b); write('Введите число c: '); read(c); write('Максимальное число: '); if (a > b) and (a > c) then writeln(a); if (b > a) and (b > c) then writeln(b); if (c > b) and (c > b) then writeln(c); readln(); end.
2 способ: С вложенными блоками (без and, все опараторы if должны быть в полной форме).
var a, b, c: integer; begin write('Введите число a: '); read(a); write('Введите число b: '); read(b); write('Введите число c: '); read(c); write('Максимальное число: '); if (a > b) then if (a > c) then writeln(a) else writeln(c) else if (b > c) then writeln(b) else writeln(c); readln(); end.
3 способ: Без вложенных блоков (без and) -- запомнив максимум из первых двух чисел в специальной переменной.
var a, b, c, max: integer; begin write('Введите число a: '); read(a); write('Введите число b: '); read(b); write('Введите число c: '); read(c); if (a > b) then max := a else max := b; if (max < c) then max := c; write('Максимальное число: ', max); readln(); end.
- Log in to post comments
- 666 reads
vedro-compota
Wed, 05/11/2022 - 18:36
Permalink
if (a > b) and (a > c) then
1) Проверить случай равенства всех или некоторых элементов
2) Лишние проверки - если максимум уже найден, то далее сравнения делать не нужно
_____________
матфак вгу и остальная классика =)
studentmedic
Fri, 05/13/2022 - 18:58
Permalink
cпособ 1 исправлен
cпособ 1 исправлен
способ 2 исправлен
cпособ 3 исправлен
vedro-compota
Wed, 05/18/2022 - 20:14
Permalink
if (a >= b) and (a >= c) then
-- исправить форматирование + есть подозрение, Что код не запустится вообще
_____________
матфак вгу и остальная классика =)