Предмет: Информатика, автор: artemkulik04231

Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число – минимальное число, оканчивающееся на 4. Питон не паскаль python

Ответы

Автор ответа: yevinefe
0

Ответ:

n = int(input())

i = 0

while i < n:

 a = int(input())

 if i == 0:

   min = a

 if a < min and a % 4 == 0:

   min = a

 i+=1

print(min)

Объяснение:

Назначаем первое число в последовательности минимальным,а в последующих вводах проверяем является ли число меньше 1 элемента последовательности


KnowsUser1: Если число оканчивается на 4 - не значит, что оно будет делиться на 4 без остатка. Например, 74 / 4 = 18.5. Программа будет работать не корректно. Так же вы переопределили встроенный метод списков min в имя. Так делать нельзя
yevinefe: Насчет деление на 4 согласен..Тупая невнимательность
Автор ответа: KnowsUser1
0

Ответ:

def parse(array:list):

suitable = []

for item in array:

 if str(item)[::-1] == '4':

  suitable.append(item)

return suitable

def main():

nums = [int(i) for i in input().split()]

assert sum(nums) <= 30000

assert len(nums) <= 1000

suitable = parse(nums)  

try:

 print(min(suitable))

except ValueError:

 print('0')

if __name__ == '__main__':

main()

Объяснение:

Сайт гарантированно сломает код, по скриншоту его можно восстановить.

Принцип работы:

Получаем на вход список чисел

Утверждение - сумма всех элементов меньше 30 000

Утверждение - всего в списке не более 1000 элементов

Если одно из утверждений не верно, программа завершает работу с ошибкой AssertionError (Ошибка утверждения)

Прогоняем список через функцию parse, результат сохраняем в переменную suitable (подходящие)

Пытаемся вывести на экран минимальный элемент списка suitable.

Если список пуст, будет возбуждено исключение ValueError, перехватываем его, вместе ошибки выводим в консоль 0

Функция Parse: <= Список

Локальная переменная suitable типа list (список)

Для каждого элемента списка, переданного функции -

Если последний символ в строковом представлении элемента списка есть 4 - добавляем в список suitable, иначе - пропускаем итерацию

Возвращаем список suitable

Приложения:

yevinefe: Слишком громоздкий код
KnowsUser1: 1:1 xd
KnowsUser1: Ну зато тут хоть немного понятно, что происходит)
Похожие вопросы
Предмет: История, автор: maximtop1234