Есть ответ 👍

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

237
488
Посмотреть ответы 3

Ответы на вопрос:

Kyivua777
4,7(77 оценок)

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)

наверно так


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

Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (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))  # Сколько осталось?

=========================

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


Команды: a,v,b,n,d,s av, ab, an, ad, as va,vb,vn,vd,va ba,bv,bn,bd,bs na,nv,nb,nd,ns da,dv,db,dn,ds sa,sv,sb,sn,sd 30 игр. если правильно всё поняла.

Популярно: Информатика