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