"""
Demo 37
数据:电脑产生随机数字 com,用户输入数字user
步骤:
1、电脑随机生成一个数字(0-100)
2、提示用户输入一个数字
3、对数字进行比较
当com>user,提示数字太高
当com<user,提示数字太低
当com=user,提示猜对了输出数字,程序结束
"""
import random
com = random.randint(0,100)
while True :
user = int(input("Enter your guess:"))
if com < user :
print("Your guess is too high!")
elif com == user :
print("Yes,the number is ",com)
break
elif com > user:
print("Your guess is too low!")
测试结果:
"""
Demo 38
数据:两个整数num1和num2,最大公约数gcd,数字k(2-min(num1,num2)
步骤:
1、提示用户输入两个整数
2、从数字2开始到min(num1,num2)找两数的公约数
若num1 % k==0 and num2 % k ==0 则gcd=k
当找完所有可能公约数后,最后的gcd为两者的最大公约数
"""
num1,num2 = eval(input("请输入两个整数:"))
gcd = 1
for k in range(2,min(num1, num2) +1 ):
if num1 % k == 0 and num2 % k == 0 :
gcd = k
print("%d和%d的最大公约数是:%d" %(num1,num2,gcd))
测试结果:
"""
Demo 39
数据:1000000个点total,落入圆内点数sum
步骤:
1、每次循环先随机生成一个坐标x∈[-1,1],y∈[-1,1]
2、点落入圆内sum+1
3、循环结束后,计算sum/total*4
"""
import random
sum = 0
total = 1000000
for i in range(0,total):
x = random.random() * 2 - 1
y = random.random() * 2 - 1
distance = (x**2 + y**2) ** 0.5
if distance <= 1:
sum += 1
pi = sum / total * 4
print(pi)
测试结果:
"""
Demo 40
数据:正数positives,负数negatives,总和sum,平均值average,正数个数total
步骤:
1、提示用户输入一个数字
2、对数字进行判断
如果该数字为0 则循环结束
如果该数字 > 0 positives += 1 sum += 数字 继续1
如果该数字 &l