
(№ 1041) Напишите программу, которая в последовательности натуральных чисел определяет максимальное
число, оканчивающееся на 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число – максимальное число, оканчивающееся на 3. Пример работы программы: (№ 987) Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое чисел, кратных 8, или сообщает, что таких чисел нет (выводит «NO»). Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести среднее арифметическое чисел, кратных 8, или вывести «NO», если таких чисел нет. Значение выводить с точностью до десятых. Пример работы программы: ЗАДАНИЕ НУЖНО ВЫПОЛНИТЬ В PYTHON

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

def f_1041():
total_numbers = int(input())
numbers = [int(input()) for num in range(total_numbers)]
return max(filter(lambda x: x % 10 == 3, numbers))
def f_987():
numbers = []
while True:
num = int(input())
if num == 0:
break
numbers.append(num)
numbers = list(filter(lambda x: x % 8 == 0, numbers))
return sum(numbers) / len(numbers) if len(numbers) != 0 else "NO"



Для решения обеих задач в Python, можно использовать следующие программы:
- Программа для поиска максимального числа, оканчивающегося на 3:
pythondef find_max_ending_with_3():
n = int(input("Введите количество чисел в последовательности: "))
max_num = 0
for _ in range(n):
num = int(input())
if num % 10 == 3 and num > max_num:
max_num = num
print(f"Максимальное число, оканчивающееся на 3: {max_num}")
find_max_ending_with_3()
- Программа для нахождения среднего арифметического чисел, кратных 8:
pythondef find_avg_multiple_of_8():
numbers = []
while True:
num = int(input("Введите число (для завершения ввода введите 0): "))
if num == 0:
break
numbers.append(num)
multiple_of_8 = [num for num in numbers if num % 8 == 0]
if not multiple_of_8:
print("NO")
else:
avg = sum(multiple_of_8) / len(multiple_of_8)
print(f"Среднее арифметическое чисел, кратных 8: {avg:.1f}")
find_avg_multiple_of_8()
Обе программы будут выполняться в бесконечном цикле, пока пользователь не введет число 0, что позволит задать произвольное количество чисел в последовательности. Затем программы находят максимальное число, оканчивающееся на 3, или вычисляют среднее арифметическое чисел, кратных 8, в зависимости от заданной задачи.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







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