Задание 16 ОГЭ по информатике · F1B54B

ПовышеннаяКЭС 3.2
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с основанием 7 оканчивается цифрой 1. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход в первой строке натуральное число – количество чисел N (3 ≤ N ≤ 10 000), затем N натуральных чисел, не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно число – количество десятичных чисел (элементов последовательности), запись которых в 7-ричной системе счисления оканчивается цифрой 1, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Входные данныеВыходные данные
6 12 15 10 71 50 113
Показать ответ
n = int(input()); count = 0; for _ in range(n):; x = int(input()); if x % 7 == 1:; count += 1; if count == 0:; print('NO'); else:; print(count)
Подсказки (3)
  1. Как определить последнюю цифру числа в системе счисления с основанием 7, не переводя число полностью?
  2. Последняя цифра записи числа в системе счисления с основанием 7 равна остатку от деления этого числа на 7.
  3. Поддерживайте счётчик: если очередное число даёт остаток 1 при делении на 7, увеличьте его на единицу. После обработки всех чисел выведите счётчик или «NO», если он равен нулю.
Решение
1. Считываем количество чисел N и вводим последовательность.

2. Последняя цифра записи натурального числа в системе счисления с основанием 7 определяется остатком от деления этого числа на 7. Поэтому проверяем условие x mod 7=1.
x mod 7=1

3. Для каждого подходящего числа увеличиваем счётчик. Если после обработки всех чисел счётчик равен нулю, выводим «NO», иначе выводим его значение.

4. Один из вариантов программы на Python:
n = int(input())
count = 0
for _ in range(n):
x = int(input())
if x % 7 == 1:
count += 1

if count == 0:
print('NO')
else:
print(count)
Частые ошибки
  • Пытаться сравнивать число с его полной записью в семеричной системе вместо проверки остатка от деления на 7.
  • Проверять остаток 0 или 7 вместо остатка 1.
  • Выводить 0, когда подходящих чисел нет, хотя по условию требуется вывести «NO».
  • Обработать не все N чисел или ошибочно включить первое число N в последовательность.

Источник: Открытый банк ФИПИ

Похожие задания

16Напишите программу, которая в последовательности натуральных чисел определяет сумму всех таких чисел, которые…Задания открытого банка ФИПИ · EB771C16Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 6.…Задания открытого банка ФИПИ · EE667E16Напишите программу, которая в последовательности натуральных десятичных чисел определяет сумму элементов…Задания открытого банка ФИПИ · EF233116Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · F0542E16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · F234E816Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · F3391416Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · F437DE16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · F567B9

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ОГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.