Задача 9 Урок 9
Primary tabs
Есть программа, где стоит проверка на ввод пользователем числа 1 или числа 5:
var s:integer; begin writeln('Vvedite chislo 1 ili 5'); readln(s); if (s = 1) then writeln('soobchenie 1'); if (s = 5) then writeln('soobchenie 2'); readln(); end;-- но сейчас код написан неоптимально и при каждом запуске выполняется 2 сравнения, при этом код можно переписать так, что при вводе одного из двух значений, которые приводят к выводу сообщения, сравнение будет выполняться только один раз.
Перепишите программу оптимальным образом.
var s:integer; begin writeln('Введите число 1 или 5: '); readln(s); if (s = 1) then writeln('Сообщение 1') else if (s = 5) then writeln('Сообщение 2') else writeln('Сообщение 3'); writeln('==============='); if ((s = 1) or (s = 5)) then if (s = 1) then writeln('Сообщение 1') else writeln('Сообщение 2') else writeln('Сообщение 3'); readln(); end.
Консоль:
Введите число 1 или 5: 1 Сообщение 1 =============== Сообщение 1 Введите число 1 или 5: 5 Сообщение 2 =============== Сообщение 2 Введите число 1 или 5: 0 Сообщение 3 =============== Сообщение 3
- Log in to post comments
- 431 reads