Найти - Пользователи
Полная версия: sum
Начало » Python для новичков » sum
1
AleksandrM
Здравствуйте.
Есть такая задачка:
Напишите следующую программу. Пользователь вводит список целочисленных значений, а также верхнюю границу для вычисления суммы.
Программа вычисляет сумму натуральных чисел, но за исключением тех, которые входят в список. Например, если пользователь ввел список: 2,5,6 и 10 в качестве верхней границы суммы, то программа должна
вычислить сумму чисел от 1 до 10, но без учета чисел 2, 5 и 6.

Помогите разобраться, не могу понять. Основное все работает, а вот сумму чисел не получается вывести.
Вот мой код:
sp = eval(input('введите список целочисленных значений: ‘))
gr = eval(input(’введите границу списка: ‘))
for i in range(gr):
k = set(str(i)) - set(str(sp))
for s in k:
print(’'.join(s), end=', ')
py.user.next
  
>>> def f():
...     numbers = set(map(int, input('numbers: ').split()))
...     maximum = int(input('maximum: '))
...     out = 0
...     for i in range(1, maximum + 1):
...         if i not in numbers:
...             out += i
...     print(out)
... 
>>> f()
numbers: 2 5 6
maximum: 10
42
>>>

  
>>> def f():
...     numbers = set(map(int, input('numbers: ').split()))
...     maximum = int(input('maximum: '))
...     out = sum(i for i in range(1, maximum + 1)
...               if i not in numbers)
...     print(out)
... 
>>> f()
numbers: 2 5 6
maximum: 10
42
>>>
AleksandrM
У меня почему то Ваш код выдает ошибку.

AleksandrM
Спасибо, разобрался.
Не надо ставить запятые.
А как написать этот код попроще:
 out = sum(i for i in range(1, maximum + 1)
              if i not in numbers)
Yurii_Mikhailovich
Я нашёл варинат, при котором пользователь может вводить числа без пробела:
numbers = list(input(“Введите числа: ”))
numbers_str = ‘ ’.join(number)
maximum = int(input(“Введите максимум: ”))
number_list = list(map(int, number_str.split()))
ans = 0
for i in range(1, maximum + 1):
if i not in number_list:
ans += i
else:
ans += 0

print(ans)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB