Python program to get input n and calculate the sum of odd numbers till n
Sample Input 1:
5
Sample Output 1:
9[1+3+5]
Program or Solution
n=int[input["Enter n value:"]]
sum=0
for i in range[1,n+1,2]:
sum+=i
print[sum]
Program Explanation
For Statement is used to execute the sequence of instruction repeatedly.
Range[] method gives list of elements, here range[] method gives list which has 1,3,5... to n or n-1. for statement executes the instructions iteratively and for takes the elements one by one as value of i in sequential manner.
so it adds odd numbers.
The following article shows how given an integer list, we can produce the sum of all its odd and even digits.
Input : test_list = [345, 893, 1948, 34, 2346] Output : Odd digit sum : 36 Even digit sum : 40 Explanation : 3 + 5 + 9 + 3 + 1 + 9 + 3 + 3 = 36, odd summation.
Input : test_list = [345, 893] Output : Odd digit sum : 20 Even digit sum : 12 Explanation : 4 + 8 = 12, even summation.
Method 1 : Using loop, str[] and int[]
In this, we first convert each element to string and then iterate for each of its element, and add to respective summation by conversion to integer.
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
print
[
"The original list is : "
+
str
[test_list]]
odd_sum
=
0
even_sum
=
0
for
sub
in
test_list:
for
ele
in
str
[sub]:
if
int
[ele]
%
2
=
=
0
:
even_sum
+
=
int
[ele]
else
:
odd_sum
+
=
int
[ele]
print
[
"Odd digit sum : "
+
str
[odd_sum]]
print
[
"Even digit sum : "
+
str
[even_sum]]
Output
The original list is : [345, 893, 1948, 34, 2346] Odd digit sum : 36 Even digit sum : 40
Method 2: Using loop and sum[]
In this, we perform task of getting summation using sum[], and loop is used to perform the task of iterating through each element.
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
print
[
"The original list is : "
+
str
[test_list]]
odd_sum
=
0
even_sum
=
0
for
sub
in
test_list:
odd_sum
+
=
sum
[[
int
[ele]
for
ele
in
str
[sub]
if
int
[ele]
%
2
=
=
1
]]
even_sum
+
=
sum
[[
int
[ele]
for
ele
in
str
[sub]
if
int
[ele]
%
2
=
=
0
]]
print
[
"Odd digit sum : "
+
str
[odd_sum]]
print
[
"Even digit sum : "
+
str
[even_sum]]
Output
The original list is : [345, 893, 1948, 34, 2346] Odd digit sum : 36 Even digit sum : 40
Method 3: Using list comprehension
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
odd_sum
=
0
even_sum
=
0
odd_sum
+
=
sum
[[
int
[ele]
for
sub
in
test_list
for
ele
in
str
[sub]
if
int
[ele]
%
2
=
=
1
]]
even_sum
+
=
sum
[[
int
[ele]
for
sub
in
test_list
for
ele
in
str
[sub]
if
int
[ele]
%
2
=
=
0
]]
print
[
"Odd digit sum : "
+
str
[odd_sum]]
print
[
"Even digit sum : "
+
str
[even_sum]]
Output
Odd digit sum : 36 Even digit sum : 40
Method 4: Using the enumerate function
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
odd_sum
=
0
even_sum
=
0
odd_sum
+
=
sum
[[
int
[ele]
for
i, sub
in
enumerate
[test_list]
for
ele
in
str
[sub]
if
int
[ele]
%
2
=
=
1
]]
even_sum
+
=
sum
[[
int
[ele]
for
i, sub
in
enumerate
[test_list]
for
ele
in
str
[sub]
if
int
[ele]
%
2
=
=
0
]]
print
[
"Odd digit sum : "
+
str
[odd_sum]]
print
[
"Even digit sum : "
+
str
[even_sum]]
Output
Odd digit sum : 36 Even digit sum : 40