Python Forum
Multiples of 3 and 5 - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: General Coding Help (https://python-forum.io/forum-8.html)
+--- Thread: Multiples of 3 and 5 (/thread-5413.html)



Multiples of 3 and 5 - rachelrosemond - Oct-02-2017

I was attempting to solve a problem on this site

Quote:If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.

My attempt:
answer = 0
for num in (range(1, 1000)):
    if ((num % 3 == 0) or (num % 5 == 0)):
        print(num)
        answer += num

print("Answer is " + str(answer))
I googled, and found the same logic on the Wikipedia page. They give a more complex solution for larger numbers. I'm unable to understand how to implement that complex formula in Python. For learning purposes, how would you implement it? My problem is more math related than programming related.


RE: Multiples of 3 and 5 - ichabod801 - Oct-02-2017

Do you not understand sigma notation? (sigma is that big weird e-looking thing.) It's just math for loops. Call what is under the sigma start, call what is under the sigma end, and define a function called f for what is to the right of the sigma. The sigma is equivalent to:

total = 0
for i in range(start, end + 1):
    total += f(i)
So the first sigma is the same as:

total = 0
for i in range(1, int((n - 1) / k) + 1):
   total += k * i