Ниже приведена программа, записанная на пяти языках программирования.
| Бейсик | Python |
|---|---|
DIM s, t AS INTEGER INPUT s INPUT t IF s > -3 AND NOT t > 5 THEN PRINT ‘YES’ ELSE PRINT ‘NO’ ENDIF | s = int(input()) t = int(input()) if s > -3 and not t > 5: print("YES") else: print("NO")
|
| Паскаль | Алгоритмический язык |
var s, t: integer; begin readln(s); readln(t); if (s > -3) and not (t > 5) then writeln('YES') else writeln('NO') end.
| алг нач цел s, t ввод s ввод t если s > -3 и не t > 5 то вывод "YES" иначе вывод "NO" все кон |
| С++ | |
#include <iostream> using namespace std; int main() { int s, t; cin >> s; cin >> t; if (s > -3 && ! (t > 5)) cout << "YES" << endl; else cout << "NO" << endl; return 0; } | |
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(–3, 5); (–2, 2); (–1, –3); (1, 0); (–4, –7); (2, 3); (3, 5); (5, –3); (6, –7).
Сколько было запусков, при которых программа напечатала «NO»?
Заметим, что в условии перед переменной t стоит логическое отрицание, значит, программа напечатает «YES», если переменная s будет больше −3 и переменная t будет меньше или равна 5, в остальных случаях программа напечатает «NO» Значит, было 2 запуска, при которых программа напечатала «NO». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел:
(-3, 5);
(-4, -7).
Ответ: 2.
Приведем другое решение на языке Python.
def f(s, t):
if s > -3 and t <= 5:
return 0
else:
return 1
a = ((-3, 5), (-2, 2), (-1, -3), (1, 0), (-4, -7), (2, 3), (3, 5), (5, -3), (6, -7))
kol = 0
for i in range(9):
kol += f(a[i][0], a[i][1])
print(kol)



