Задание №6 — Алгоритмы и программирование
Ниже приведена программа, записанная на пяти языках программирования.
Алгоритмический язык | Паскаль |
алг нач цел s, k ввод s ввод k если s > 6 и k > 6 то вывод "YES" иначе вывод "NO" все кон | var s, k: integer; begin readln(s); readln(k); if (s > 6) and (k > 6) then writeln('YES') else writeln('NO') end. |
Бейсик | Python |
DIM k, s AS INTEGER INPUT s INPUT k IF s > 6 AND k > 6 THEN PRINT "YES" ELSE PRINT "NO" END IF | s = int(input()) k = int(input()) if s > 6 and k > 6: print("YES") else: print("NO") |
C++ | |
#include <iostream> using namespace std; int main() { int s, k; cin >> s; cin >> k; if (s > 6 && k > 6) cout << "YES" << endl; else cout << "NO" << endl; return 0; } | |
Было проведено 9 запусков программы, при которых в качестве значений переменных s и k вводились следующие пары чисел:
(1, 1); (7, 9); (8, –12); (6, 6); (8, 11); (–10, -12); (–10, 11); (7, 1); (12, 7).
Сколько было запусков, при которых программа напечатала «YES»?
Правильный ответ
3
Пояснение
Решение.
Для начала проанализируем условие, записанное в программе. Нам даны две переменные и . Программа выводит «YES», если выполняется логическое условие: (s > 6) AND (k > 6).
Союз AND (И) означает, что для получения ответа «YES» должны быть истинными сразу оба условия одновременно: и первое число в паре должно быть строго больше 6, и второе число в паре должно быть строго больше 6.
Разберём каждую из 9 пар чисел по порядку:
1) : — ложно. Условие не выполняется.
2) : — истинно, — истинно. Подходит.
3) : — истинно, но — ложно. Условие не выполняется.
4) : — ложно (так как 6 не больше 6, они равны). Условие не выполняется.
5) : — истинно, — истинно. Подходит.
6) : — ложно. Условие не выполняется.
7) : — ложно. Условие не выполняется.
8) : — истинно, но — ложно. Условие не выполняется.
9) : — истинно, — истинно. Подходит.
Таким образом, условие и выполнилось для трёх пар: , и .
Ответ: 3
Источник: ФИПИ