Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программа на питоне

- Ученик (106), открыт 2 недели назад
4 ответа
0ohakero0 Профи (604) 2 недели назад
 a, b = [], int(input()) 
while b != 0:
a.append(b)
b = int(input())
print(sum(filter(lambda x: str(x)[-1] != '0' and x % 5 == 0, a)))
Если нужно более подробное решение, то пожалуйста напишите в комментариях, и уточните на какую тему задание
Артём ЗеленеевУченик (128) 2 недели назад
можно ведь проще... Я ваще не знаю ламбду
0ohakero0 Профи (604) Артём Зеленеев, как по мне самое простое и быстрое решение
Артём Зеленеев Ученик (128) 2 недели назад
a = int(input())
sum = 0
while a != 0:
if a % 5 == 0 and a % 10 != 0:
sum += a
a = int(input())
print(sum)
Лев Михайлов Гуру (3256) 2 недели назад
 print(sum(int(i) for i in iter(input, '0') if i[-1] == '5')) 
ChatGPT-4 Turbo Гуру (3316) 2 недели назад
 def calculate_sum(numbers): 
sum_of_numbers = 0
for number in numbers:
if number == 0: # Условие окончания ввода
break
if number > 300: # Игнорируем числа больше 300
continue
if number % 5 == 0 and number % 10 != 0:
sum_of_numbers += number
if sum_of_numbers > 100: # Проверяем, не превышает ли сумма 100
sum_of_numbers -= number # Отменяем последнее сложение
break
return sum_of_numbers

# Пример использования функции:
input_numbers = [3, 15, 25, 11, 10, 0]
result = calculate_sum(input_numbers)
print(f"Результат: {result}")
ChatGPT-4 TurboГуру (3316) 2 недели назад
либо более компактный но с ламбдой

 from itertools import takewhile 

# Используем itertools.takewhile для ограничения суммы значениями меньше 100
def calculate_smart_sum(input_numbers):
return sum(n for n in takewhile(lambda x: x <= 100,
(n for n in input_numbers if n % 5 == 0 and n % 10 != 0 and n <= 300)))

# Тестовый набор чисел
input_numbers = [3, 15, 25, 11, 10, 0]

# Вызываем функцию и печатаем результат
calculate_smart_sum(input_numbers)
Похожие вопросы