heisnberg Ответов: 2

Напишите функцию, которая возвращает сумму кратных 3 и 5 между 0 и пределом (параметр)


Напишите функцию, которая возвращает сумму кратных 3 и 5 между 0 и пределом (параметром). Например, если лимит равен 20, то он должен возвращать сумму 3, 5, 6, 9, 10, 12, 15, 18, 20.

Что я уже пробовал:

я не знаю, какая логика стоит за этим вопросом.пожалуйста, помогите мне

Patrice T

Какую часть проблемы вы не понимаете ?

2 Ответов

Рейтинг:
2

Member 14963273

def calculate_sum(a, N): 
  
    # Number of multiples 
    m = N / a 
  
    # sum of first m natural numbers 
    sum = m * (m + 1) / 2
  
    # sum of multiples 
    ans = a * sum
  
    print("Sum of multiples of ", a, 
          " up to ", N, " = ", ans) 
  
# Driver Code 
calculate_sum(7, 49)


CPallini

Мой 5.
Это умный код, хотя и неверный: вы должны заменить оператор деления ('/') на интегральное деление ('//').
Более того, он прямо не отвечает на вопрос OP.

Dave Kreskowiak

Э-э-э, это не очень хорошая идея делать за кого-то домашнее задание. ОП ничего не узнает о решении проблем, когда вы это делаете.

Рейтинг:
13

OriginalGriff

Это довольно просто:
1) Создайте функцию, которая принимает целочисленный параметр, называемый limit
2) внутри функции:
2.1) создайте переменную с именем sum и установите его на ноль.
2.2) выполнить цикл от 0 до limit включительно.
2.3) внутри петли:
2.3.1) Если переменная цикла кратна 3, добавьте ее в sum
2.3.2) в противном случае, если он кратен 5, добавьте его к sum
2.4) после завершения цикла вернитесь sum

Подсказка: вы можете использовать оператор модуля для проверки кратности n

Попробуйте, это довольно простая задача!


Anurag Gandhi

Отлично!! Кто-то пытается сделать свою домашнюю работу здесь. Но мне нравится, как ты мне помог. :)

CPallini

5.