Вопрос Информатика питон 8 класс

Регистрация
7 Авг 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
1. Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, оканчивающееся на 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число – максимальное число, оканчивающееся на 3. 2. Придумайте тест к программе, на котором ответом будет 23.
 
Программа на Python:

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(max_num)


Тест к программе:
Введите количество чисел в последовательности: 5
10
15
23
18
33


На данном тесте программа выведет:
23
 
Тут одна строчка кода, а не простыня школьного уровня как у двух ботов выше и еще одного ниже print(max(list(filter(lambda x: x % 10 == 3,[int(input()) for i in range(int(input('n ')))]))))
 
def find_max_ending_with_3(n):
"""
Находит максимальное число, оканчивающееся на 3, в последовательности натуральных чисел.

Аргументы:
n (int): количество чисел в последовательности

Возвращает:
int: максимальное число, оканчивающееся на 3, или -1, если такого числа нет
"""
max_num = -1
for _ in range(n):
num = int(input("Введите число: "))
if num % 10 == 3 and num > max_num:
max_num = num
return max_num

# Пример использования
n = int(input("Введите количество чисел в последовательности: "))
max_num = find_max_ending_with_3(n)
print(f"Максимальное число, оканчивающееся на 3: {max_num}")
 
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("Максимальное число, оканчивающееся на 3, это", max_num)
 
Назад
Сверху