В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
SabrinaSirotina
SabrinaSirotina
17.12.2021 19:13 •  Информатика

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, оканчивающихся на 3. НА ПИТОНЕ

Показать ответ
Ответ:
nastiasavchak11
nastiasavchak11
15.10.2020 16:16

print("Введите n: ")

n = input() #берем от пользователя n

k = 0 #это счетчик

#Пробегаем в цикле n раз и берем следующие числа, которые введет пользователь

for i in range(int(n)):

   a = input() #Берем очередное число

   if int(a) % 10 == 3: #если число оканчивается на 3

       k += 1 #увеличиваем счетчик

#В конце выводим результат        

print("Количество: ", k)

наверно так

0,0(0 оценок)
Ответ:
overmaker
overmaker
15.10.2020 16:16

В задаче нам гарантируется, что на ввод подаются исключительно числа. При чем даже заданы ограничения с которыми они подаются, так что мы можем избавить себя от их валидации и сразу приступить к обработке.

Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (1 строка кода).

Затем, нам надо получить все элементы последовательности. Но нам не обязательно работать с ними, как с числами, так как с нас не требуют математических операций. Так что просто оставляем их в виде строк (2 строка кода).

Далее, необходимо убрать все лишние значения (не оканчивающиеся на 3) и оставить только нужные. Для этого используем стандартную функцию filter, в которой проверяем последние символы строк на соответствие "3" (строка кода 3).

Осталось только посчитать количество оставшихся строк и вывести результат (строка кода 4).

Код:

N = int(input())

sequence = [input() for _ in range(N)]  # Вводим числа

sequence = list(filter(lambda x: x[-1] == "3", sequence))   # Отсеиваем лишние

print(len(sequence))  # Сколько осталось?

Если ответ устроил, не забудь отметить его как "Лучший".

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота