Project Euler #1: Sum of Multiples of 3 and 5 below 1000 Announcing the arrival of Valued...
At the end of Thor: Ragnarok why don't the Asgardians turn and head for the Bifrost as per their original plan?
What is known about the Ubaid lizard-people figurines?
Is the Standard Deduction better than Itemized when both are the same amount?
How to bypass password on Windows XP account?
What is the meaning of the new sigil in Game of Thrones Season 8 intro?
List *all* the tuples!
Seeking colloquialism for “just because”
Using audio cues to encourage good posture
porting install scripts : can rpm replace apt?
What is Arya's weapon design?
Why is my conclusion inconsistent with the van't Hoff equation?
Why am I getting the error "non-boolean type specified in a context where a condition is expected" for this request?
Bete Noir -- no dairy
Using et al. for a last / senior author rather than for a first author
Single word antonym of "flightless"
Why did the Falcon Heavy center core fall off the ASDS OCISLY barge?
Why do people hide their license plates in the EU?
When were vectors invented?
ListPlot join points by nearest neighbor rather than order
String `!23` is replaced with `docker` in command line
Why aren't air breathing engines used as small first stages
How to tell that you are a giant?
How do I name drop voicings
The logistics of corpse disposal
Project Euler #1: Sum of Multiples of 3 and 5 below 1000
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Project Euler Problem 12 in PythonFunction to return the sum of multiples within a rangeProject Euler 78: Coin Partitions in PythonProject Euler #14: Longest Collatz sequenceProject Euler #15 in PythonProject Euler #4 - Largest Palindrome Project - PythonProject Euler problem #1 in Python 3Sum of multiples of 3 or 5 using functional programmingProject Euler 001 in C++Project Euler Problem 37 in Python
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}
$begingroup$
def prob_1():
sum_mult=[] #Create an empty list which will take sum of multiples of 3 and 5
check_sum=0
for i in range(1,1000): #Take numbers till 1000
#if(i)
if( (i%3)==0 or (i%35)==0 ): #divisor condition
sum_mult.append(i)
return sum(sum_mult) #return sum of list
I am just starting out my journey as a programmer, here is my code and I would love to see any critical feedback and other alternative solutions maybe using some clever hack of using lambda function's etc.
python performance python-3.x programming-challenge
New contributor
$endgroup$
add a comment |
$begingroup$
def prob_1():
sum_mult=[] #Create an empty list which will take sum of multiples of 3 and 5
check_sum=0
for i in range(1,1000): #Take numbers till 1000
#if(i)
if( (i%3)==0 or (i%35)==0 ): #divisor condition
sum_mult.append(i)
return sum(sum_mult) #return sum of list
I am just starting out my journey as a programmer, here is my code and I would love to see any critical feedback and other alternative solutions maybe using some clever hack of using lambda function's etc.
python performance python-3.x programming-challenge
New contributor
$endgroup$
add a comment |
$begingroup$
def prob_1():
sum_mult=[] #Create an empty list which will take sum of multiples of 3 and 5
check_sum=0
for i in range(1,1000): #Take numbers till 1000
#if(i)
if( (i%3)==0 or (i%35)==0 ): #divisor condition
sum_mult.append(i)
return sum(sum_mult) #return sum of list
I am just starting out my journey as a programmer, here is my code and I would love to see any critical feedback and other alternative solutions maybe using some clever hack of using lambda function's etc.
python performance python-3.x programming-challenge
New contributor
$endgroup$
def prob_1():
sum_mult=[] #Create an empty list which will take sum of multiples of 3 and 5
check_sum=0
for i in range(1,1000): #Take numbers till 1000
#if(i)
if( (i%3)==0 or (i%35)==0 ): #divisor condition
sum_mult.append(i)
return sum(sum_mult) #return sum of list
I am just starting out my journey as a programmer, here is my code and I would love to see any critical feedback and other alternative solutions maybe using some clever hack of using lambda function's etc.
python performance python-3.x programming-challenge
python performance python-3.x programming-challenge
New contributor
New contributor
edited 4 mins ago
AJNeufeld
6,9641723
6,9641723
New contributor
asked 52 mins ago
DjVasuDjVasu
11
11
New contributor
New contributor
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
I expect you made a typo. You don't want (i%35)==0
, you want (i%5)==0
.
The PEP-8 style guide for Python requires 1 space before and after operators, and after commas. Use PyLint or equivalent tool to ensure you follow all of the PEP-8 guidelines.
check_sum
is unused, and can be omitted.
The brackets around the if( ... ):
condition are unnecessary. This is Python, not C, C++ or Java:
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
There is no need to create a list just to add up all the numbers after the fact. You are only using each value once, so you could simply add the numbers up as you find them:
def prob_1():
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You should add """doc_strings"""
to your functions:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You can use list comprehension and the sum(...)
function to compute the result, without ever creating the list in memory:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
return sum(i for i in range(1000) if i % 3 == 0 or i % 5 == 0)
You can also solve this problem by hand with a pen, a sheet of paper, a calculator and about 1 minute of your time. A program is entirely unnecessary.
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "196"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
DjVasu is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f217598%2fproject-euler-1-sum-of-multiples-of-3-and-5-below-1000%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
I expect you made a typo. You don't want (i%35)==0
, you want (i%5)==0
.
The PEP-8 style guide for Python requires 1 space before and after operators, and after commas. Use PyLint or equivalent tool to ensure you follow all of the PEP-8 guidelines.
check_sum
is unused, and can be omitted.
The brackets around the if( ... ):
condition are unnecessary. This is Python, not C, C++ or Java:
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
There is no need to create a list just to add up all the numbers after the fact. You are only using each value once, so you could simply add the numbers up as you find them:
def prob_1():
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You should add """doc_strings"""
to your functions:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You can use list comprehension and the sum(...)
function to compute the result, without ever creating the list in memory:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
return sum(i for i in range(1000) if i % 3 == 0 or i % 5 == 0)
You can also solve this problem by hand with a pen, a sheet of paper, a calculator and about 1 minute of your time. A program is entirely unnecessary.
$endgroup$
add a comment |
$begingroup$
I expect you made a typo. You don't want (i%35)==0
, you want (i%5)==0
.
The PEP-8 style guide for Python requires 1 space before and after operators, and after commas. Use PyLint or equivalent tool to ensure you follow all of the PEP-8 guidelines.
check_sum
is unused, and can be omitted.
The brackets around the if( ... ):
condition are unnecessary. This is Python, not C, C++ or Java:
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
There is no need to create a list just to add up all the numbers after the fact. You are only using each value once, so you could simply add the numbers up as you find them:
def prob_1():
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You should add """doc_strings"""
to your functions:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You can use list comprehension and the sum(...)
function to compute the result, without ever creating the list in memory:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
return sum(i for i in range(1000) if i % 3 == 0 or i % 5 == 0)
You can also solve this problem by hand with a pen, a sheet of paper, a calculator and about 1 minute of your time. A program is entirely unnecessary.
$endgroup$
add a comment |
$begingroup$
I expect you made a typo. You don't want (i%35)==0
, you want (i%5)==0
.
The PEP-8 style guide for Python requires 1 space before and after operators, and after commas. Use PyLint or equivalent tool to ensure you follow all of the PEP-8 guidelines.
check_sum
is unused, and can be omitted.
The brackets around the if( ... ):
condition are unnecessary. This is Python, not C, C++ or Java:
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
There is no need to create a list just to add up all the numbers after the fact. You are only using each value once, so you could simply add the numbers up as you find them:
def prob_1():
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You should add """doc_strings"""
to your functions:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You can use list comprehension and the sum(...)
function to compute the result, without ever creating the list in memory:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
return sum(i for i in range(1000) if i % 3 == 0 or i % 5 == 0)
You can also solve this problem by hand with a pen, a sheet of paper, a calculator and about 1 minute of your time. A program is entirely unnecessary.
$endgroup$
I expect you made a typo. You don't want (i%35)==0
, you want (i%5)==0
.
The PEP-8 style guide for Python requires 1 space before and after operators, and after commas. Use PyLint or equivalent tool to ensure you follow all of the PEP-8 guidelines.
check_sum
is unused, and can be omitted.
The brackets around the if( ... ):
condition are unnecessary. This is Python, not C, C++ or Java:
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
There is no need to create a list just to add up all the numbers after the fact. You are only using each value once, so you could simply add the numbers up as you find them:
def prob_1():
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You should add """doc_strings"""
to your functions:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
sum_of_multiples = 0
for i in range(1, 1000): # Take numbers up to but not including 1000
if (i % 3) == 0 or (i % 5) == 0: #divisor condition
sum_of_multiples += i
return sum_of_multiples
You can use list comprehension and the sum(...)
function to compute the result, without ever creating the list in memory:
def prob_1():
"""
Compute the sum of all the multiples of 3 or 5 below 1000.
Returns:
The sum of the multiples of 3 or 5, below 1000.
"""
return sum(i for i in range(1000) if i % 3 == 0 or i % 5 == 0)
You can also solve this problem by hand with a pen, a sheet of paper, a calculator and about 1 minute of your time. A program is entirely unnecessary.
edited 1 min ago
answered 7 mins ago
AJNeufeldAJNeufeld
6,9641723
6,9641723
add a comment |
add a comment |
DjVasu is a new contributor. Be nice, and check out our Code of Conduct.
DjVasu is a new contributor. Be nice, and check out our Code of Conduct.
DjVasu is a new contributor. Be nice, and check out our Code of Conduct.
DjVasu is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Code Review Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f217598%2fproject-euler-1-sum-of-multiples-of-3-and-5-below-1000%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown