1.可否定义一个sum函数呢?返回指定区间的值的和?例如,区间[1,4]的和为1+2+3+4=10返回指定区间值的平方的和呢?立方呢?
代码:
# 计算从start到end(包括end)的所有整数的和。
def sum_range(start, end):
total = 0
for i in range(start, end + 1):
total += i
return total
# 计算从start到end(包括end)的所有整数的平方和。
def sum_of_squares(start, end):
total = 0
for i in range(start, end + 1):
total += i ** 2
return total
# 计算从start到end(包括end)的所有整数的立方和。
def sum_of_cubes(start, end):
total = 0
for i in range(start, end + 1):
total += i ** 3
return total
# 计算区间[1, 4]的和
print("Sum of range [1, 4]:", sum_range(1, 4))
# 计算区间[1, 4]的平方和
print("Sum of squares of range [1, 4]:", sum_of_squares(1, 4))
# 计算区间[1, 4]的立方和
print("Sum of cubes of range [1, 4]:", sum_of_cubes(1, 4))
运行结果:
Sum of range [1, 4]: 10
Sum of squares of range [1, 4]: 30
Sum of cubes of range [1, 4]: 100
2.定义一个gcd函数,计算两个数的最大公因数
代码:
def gcd(a,b):
while b:
a,b=b,a%b
return a
print(gcd(28,12))
运行结果:
4
3.求出1-100之间的奇数之和
代码:
sumjs=0
for i in range(1,101):
if(i%2!=0):
sumjs+=i
print(sumjs)
运行结果:
2500
4.定义一个int类型变量接收一个大于100的三位数,求出100到该数字之间满足如下要求的数字之和:
1.数字的个位数不为7;
2.数字的十位数不为5;
3.数字的百位数不为3;
代码:
a=int(input("输入一个大于100的整数:"))
sum1=0
for i in range(100,a+1) :
if(i%10!=7 and i//10%10!=5 and i//100!=3):
sum1+=i
print(sum1)
运行结果:
输入一个大于100的整数:243
20900