Задание №16 — Алгоритмы и программирование
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых
в системе счисления с основанием 7 оканчивается цифрой 1. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход в первой строке натуральное число – количество чисел N (3 ≤ N ≤ 10000), затем N натуральных чисел,
не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно число – количество десятичных чисел (элементов последовательности), запись которых в 7-ричной системе счисления оканчивается цифрой 1, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Входные данные | Выходные данные |
6 12 15 10 71 50 11 | 3 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо проанализировать каждое число из последовательности и проверить условие, связанное с его записью в системе счисления с основанием 7.
Шаг 1. Понимание условия.
Число в любой системе счисления оканчивается на определённую цифру тогда, когда остаток от деления этого числа на основание системы счисления равен этой цифре. В нашем случае число в 7-ричной системе счисления оканчивается на , если остаток от деления этого числа на равен .
Математически это записывается так: .
Шаг 2. Алгоритм решения.
1. Сначала мы считываем количество чисел .
2. Создаём переменную-счётчик (например, ), которую изначально приравниваем к .
3. В цикле от до считываем очередное число последовательности.
4. Для каждого считанного числа проверяем условие: если остаток от деления числа на равен , то увеличиваем наш счётчик на единицу.
5. После завершения цикла проверяем значение счётчика. Если он больше нуля, выводим его значение. Если же счётчик остался равен нулю (значит, подходящих чисел не нашлось), выводим «NO».
Шаг 3. Пример реализации на языке Python:
n = int(input())
count = 0
for i in range(n):
num = int(input())
if num % 7 == 1:
count += 1
if count > 0:
print(count)
else:
print("NO")
Шаг 4. Проверка на примере.
Даны числа: .
1. (не подходит)
2. (подходит, )
3. (не подходит)
4. (подходит, )
5. (подходит, )
6. (не подходит)
Итоговое значение счётчика: .
Ответ: 3
Источник: ФИПИ