Есть задачи ГИА, решаю их , чтобы разобраться в Python. Вот одна из них. Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают 30000. Программа должна вывести одно число — минимальное число,
оканчивающееся на 4.
На Pascal я смогу ее решить + на сайте есть ответ
Pascal | ||
|
Проблема в том , что не могу понять , чем заменить в Python этот участок кода?
Pascal | ||
|
Ответ:
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
Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся
на 4.
Количество чисел не превышает 1000. Введённые числа не превышают
30 000.
Программа должна вывести одно число − минимальное число, оканчивающееся на 4.
Пример работы программы:
Входные данные |
Выходные данные |
3 |
14 |
Решение.
Это задание ещё не решено, приводим решение прототипа.
Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 3 и оканчивающихся на 8. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 3 и оканчивающееся на 8. Количество чисел не превышает 100. Введённые числа по модулю не превышают 300. Программа должна вывести одно число: сумму чисел, кратных 3 и оканчивающихся на 8.
Пример работы программы:
Входные данные |
Выходные данные |
3 |
66 |
20.2 Решением является программа, записанная на любом языке программирования. Пример верного решения, записанного на языке Паскаль:
var
a, s: integer;
begin
s:= 0;
readln(a);
while a<>0 do begin
if (a mod 3 = 0) and (a mod 10 = 8) then
s := s + a;
readln(a);
end;
writeln(s)
end.
———-
Дублирует задание 764.
20.2. ОГЭ
20.2 Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — минимальное число, оканчивающееся на 4.
Ответ:
n = int(input())
s = 30001
for i in range(n):
k = int(input())
if (k < s) and (k % 10 == 4):
s = k
print(s)
Задача №3477. Улитка
Улитка ползет по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь спускаясь на b метров. На какой де…
-
Дано целое число n. Выведите следующее за ним четное число. Задачу необходимо решить целочисленными операциями без использования условн…
-
Расставьте скобки в выражении a and b or not a and not b в соответствии с порядком вычисления выражения (приоритетом операций…
-
Из передачи “Здоровье” Аня узнала, что рекомендуется спать хотя бы A часов в сутки, но пересыпать тоже вредно и не стоит спать более…
Ученик
(107),
закрыт
6 лет назад
Дополнен 6 лет назад
или на паскале…
Ольга Тукова
Ученик
(170)
6 лет назад
Не вздумай платить «Зотикову» -который тебе ответил, РЕШАЕТ НЕВЕРНО ВСЕМ-будет у тебя деньги выпрашивать за решения–кидает тут всех тупо на бабки! Сидит на даче безработный старпёр беззубый импотент С НЕМЫТЫМИ САЛЬНЫМИ ВОЛОСАМИ и кидает студентов!!! Моего друга обул на 320 руб–денег не вернул!!! У этого мошенника Зотикова есть еще страницы-ИХ УЖЕ ЗАКРЫЛИ ЗА МОШЕННИЧ-ВО-он с трёх страниц кидает одновременно!!! Имя сменил только.