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

ПовышеннаяКЭС 3.2
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру 4. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данныеВыходные данные
5 164 276 884 948 41163
Показать ответ
n = int(input()); count = 0; for _ in range(n):; x = int(input()); s = hex(x)[2:]; if len(s) == 3 and s[-1] == '4':; count += 1; print(count)
Подсказки (3)
  1. Как определить количество цифр в шестнадцатеричной записи числа и её последнюю цифру?
  2. Для перевода числа в шестнадцатеричную систему можно использовать функцию `hex()`. Трёхзначная запись имеет длину 3, а последняя цифра должна быть равна `4`.
  3. Для каждого числа получите строку `s = hex(x)[2:]` и увеличьте счётчик, если `len(s) == 3 and s[-1] == '4'`.
Решение
1. Считываем количество элементов последовательности и устанавливаем счётчик подходящих чисел равным нулю.
count=0

2. Каждое число переводим в шестнадцатеричную систему. Префикс `0x` удаляем с помощью среза `[2:]`.
s=hex(x)[2:]

3. Проверяем два условия: длина записи равна 3, а последний символ записи равен `4`. Если оба условия выполнены, увеличиваем счётчик.
len(s)=3∧s[−1]=′4′

4. После обработки всех чисел выводим значение счётчика.
print(count)

5. Один из корректных вариантов программы:
n = int(input())
count = 0
for _ in range(n):
x = int(input())
s = hex(x)[2:]
if len(s) == 3 and s[-1] == '4':
count += 1
print(count)
Частые ошибки
  • Проверяют количество цифр в десятичной записи вместо шестнадцатеричной.
  • Забывают удалить префикс `0x` после использования функции `hex()`.
  • Сравнивают последний символ с числом 4 вместо строки `'4'`.
  • Считают подходящими записи длиной не ровно 3, а не менее 3 символов.

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

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

16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 10198C16Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество…Задания открытого банка ФИПИ · 11484C16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 12350E16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 1670DB16Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 5.…Задания открытого банка ФИПИ · 17BAFA16Напишите программу, которая в последовательности натуральных чисел вычисляет сумму трёхзначных чисел, кратных…Задания открытого банка ФИПИ · 17F60116Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 1899DF16Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 3 и…Задания открытого банка ФИПИ · 18BEB8

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

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

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

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

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

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

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