1. 求1到100之间所有数的和、平均值
#for循环
sum1 = 0
average1 = 0
for x in range(1,101):
sum1 += x
average1 = sum1/100
print(sum1,average1)
# while循环
i = 0;sum2 = 0;average2 = 0
while i<=100:
sum2 += i
i += 1
average2 = sum2/100
print(sum2,average2)
输出结果:
5050 50.5
5050 50.5
2. 计算1-100之间能3整除的数的和
# for循环
sum1 = 0
for x in range(1,101):
if x%3 == 0:
sum1 += x
print(sum1)
# while循环
sum2 = 0
i = 0
while i<=100:
if i%3 == 0:
sum2 += i
i += 1
print(sum2)
输出结果:
1683
1683
#####3. 计算1-100之间不不能被7整除的数的和
“`Python
for循环
sum1 = 0
for x in range(1,101):
if x%7:
sum1 += x
print(sum1)
while循环
sum2 = 0
i = 0
while i<=100:
if i%7:
sum2 += i
i += 1
print(sum2)
输出结果:
4315
4315
##### 有一对兔子,从出生后第3个月起,每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第n个月的兔子总共有多少
```Python
import random
n = 1
i=2
num_month = [1,1]
num_month1 =1
month = random.randint(0,36)
if month<3:
print('第%s个月共有1只兔子' %(month))
else:
while i<month:
num_month.append(num_month[i-2]+num_month[i-1])
i += 1
print('第%s个月共有%s只兔子' % (month,num_month[-1]))
输出结果:
第6个月共有8只兔子
<div class="se-preview-section-delimiter"></div>
判断101-200之间有多少个素数,并输出所有素数。判断素数的⽅方法:⽤用⼀一个数分别除2到sqrt(这个数),如果能被整除,则表明此数不不是素数,反之是素数
“`Python
import math
list1=[]
i=2
for i in range (101,201):
for j in range(2,int(math.sqrt(i))+1):
if(i%j==0):
break
else:
list1.append(i)
print(list1)
输出结果:
[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]
<div class="se-preview-section-delimiter"></div>
##### 打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153 = 1^3 + 5^3 + 3^3
```Python
list1 = []
for x in range(100,1000):
if (x == (x//100)**3 + (x//10%10)**3 +(x%10)**3):
list1.append(x)
print(list1)
输出结果:
[153, 370, 371, 407]
<div class="se-preview-section-delimiter"></div>
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的第20个分数1 2 1 2 3 2 3 5 3 4 8 5 分子:上一个分数的分⼦子加分母 分母: 上一个分数的分子 fz = 2 fm = 1 fz+fm / fz
“`Python
list_up = [2]
list_down = [1]
number = 0
k = 20
m = 0
for x in range(1,k):
list_down.append(list_up[x-1])
list_up.append(list_up[x-1]+list_down[x-1])
m = list_up[-1]/list_down[-1]
print(m)
输出结果:
1.618033985017358
##### 给一个正整数,要求:1、求它是几位数 2.逆序打印出各位数字
```Python
import random
n = random.randint(0,1000001)
str1 = str(n)
print(n,len(str1),str1[::-1])
输出结果:
826418 6 814628