编程实现(for和while各写⼀一遍):
- 求1到100之间所有数的和、平均值
sum1 = 0
for num in range(1, 101):
sum1 += num
print(sum1, sum1/100)
num = 1
sum1 = 0
while True:
if num > 100:
break
sum1 += num
num += 1
print(sum1, sum1/100)
- 计算1-100之间能3整除的数的和
sum1 = 0
for num in range(0, 101, 3):
sum1 += num
print('和', sum1)
num = 0
sum1 = 0
while num <= 100:
sum1 += num
num += 3
print('和', sum1)
- 计算1-100之间不不能被7整除的数的和
sum1 = 0
for num in range(0, 101):
if num % 7 != 0:
sum1 += num
print(sum1)
num = 0
count = 0
num1 = 0
while True:
if count == 101:
break
elif num % 7 != 0:
num1 += num
count += 1
num += 1
print(num1)
求斐波那契数列列中第n个数的值:1,1,2,3,5,8,13,21,34....
pre_1 = 1 # 前第一个数
pre_2 = 1 # 前第二个数
n = 6 # 第n个数
current = pre_1 + pre_2
if n == 1 or n == 2:
current = 1
for x in range(n-2):
# 求和
current = pre_1 + pre_2
# 交换位置
# pre_2 = pre_1
# pre_1 = current
pre_1, pre_2 = current, pre_1
print(current)
判断101-200之间有多少个素数,并输出所有素数。判断素数的⽅方法:⽤一个数分别除2到sqrt(这个 数),如果能被整除,则表明此数不是素数,反之是素数
count = 0
for num in range(101, 201):
# print(num)
# 判断取出来的数是否是素数
for x in range(2, num):
if num % x == 0:
# print(num, '不是素数')
break
else:
print(num, '是素数')
count += 1
print(count)
打印出所有的⽔水仙花数,所谓⽔水仙花数是指⼀一个三位数,其各位数字⽴方和等于该数本身。例例如:153是
一个水仙花数,因为153 = 1^3 + 5^3 + 3^3
for num in range(100, 1000):
ge = num % 10
shi = num // 10 % 10
bai = num // 100
if num == ge**3 + shi**3 + bai**3: print(num, '是水仙花数')
有分数序列:(1/1),2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列列的第20个分数
分子:上一个分数的分子加分母 分母: 上一个分数的分子 fz = 2 fm = 1 fz+fm / fz
补充,python交换两个数的值: a, b = b, a
分子 : 下一个分子 == 上一个分数的分子+分母
分母 : 下一个分母 == 上一个分数的分子
fz = 1
fm = 1
for x in range(20):
fz, fm = fz + fm, fz
print(fz, '/', fm)
给个正整数,要求:1、求它是几位数 2.逆序打印出各位数字
num = 35543
count = 0
while True:
print(num % 10)
num //= 10
count += 1
if num == 0:
break
print()
print(count)
求1+2!+3!+...+20!的和 1.程序分析:此程序只是把累加变成了累乘。
sum1 = 0 # 保存最后的和
for num in range(1, 21):
sum2 = 1 # 保存当前取出来的数的阶乘
for x in range(1, num+1):
sum2 *= x
sum1 += sum2
print(sum1)
循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。
sum1 = 0
while True:
num = int(input('请输入数字:'))
sum1 += num
if num == 0:
break
print(sum1)
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。
num = 4
n = 6
sum1 = 0
num1 = num
for x in range(n):
print(num)
sum1 += num
num = num*10 + num1
print(sum1)
求1+12+123+1234++++++++123456789 = ?
n = 9
num = 0
sum1 = 0
for x in range(1, 10):
num = num*10 + x
sum1 += num
print(sum1)
输入三个整数x,y,z,请把这三个数由小到大输出。
x = 2
y = 5
z = 6
max1 = x
if y > max1:
max1 = y
if z > max1:
max1 = z
print(max1)
min1 = x
if y < min1:
min1 = y
if z < min1:
min1 = z
print(min1)
print('中间:')
这是经典的"百马百担"问题,有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担,问有大,中,小马各几匹?
for big in range(1, 100//3):
for mid in range(1, 100//2):
for small in range(2, 100, 2):
if big+mid+small == 100 and big*3 + mid*2 + small/2 == 100:
print('大马:', big, '中马:', mid, '小马:', small)
我国古代数学家张邱建在《算经》:中出了一道“百钱买百鸡”的问题,题意是这样的
5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡 。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。
for x in range(1, 100//5):
for y in range(1, 100//3):
for z in range(1, 100):
if x+y+z == 100 and x*5 + y*3 + z/3 == 100:
print('公鸡:', x, '母鸡:', y, '小鸡:', z)
12.小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。 要把100元整好花掉,可如有哪些购买结合?
for a in range(1, 100//15):
for b in range(1, 100//2):
for c in range(1, 100//5):
if 15*a + 2*b + 5*c == 100:
print('洗发水:', a, '香皂:', b, '牙刷:', c )