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