作业1、判断以下哪些不能作为标识符 BDF
A、a
B、¥a
C、_12
D、$a@12
E、false
F、False
作业2:
输入数,判断这个数是否是质数(要求使用函数 + for循环)
def zhishu(num): for i in range(2,num): if num%i==0: print("不是质数") break else: i+=1 else: print("是质数") zhishu(int(input("请输入一个数:")))
作业3:求50~150之间的质数是那些?
def zhishu(): for i in range(50,101): for j in range(2,i+1): if i%j==0: break else: j+=1 if j==i: print(i) i+=1 zhishu()
作业4:打印输出标准水仙花数,输出这些水仙花数
def shuixianhua(): for num in range(100,1000): a=num//100 b=num//10%10 c=num%10 if(a*a*a+b*b*b+c*c*c==num): print(num) shuixianhua()
作业5:验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
def check(num): """ 验证:任意一个大于9的整数 减去它的各位数字之和所得的差, 一定能被9整除. """ i=0 start_num=num while num!=0: i+=num%10 num//=10 if((start_num-i)%9==0): return True else: return False num = int(input("请输入一个大于9的整数:")) while num < 10: num = int(input("对不起,输入的数必须大于9:")) if check(num): print("符合规律") else: print("不符合规律")
作业6:一个五位数,若在它的后面写上一个7,得到一个六位数A,
若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此
五位数.
def wuweishu(): for a in range(1,10): for b in range(0,10): for c in range(0,10): for d in range(0,10): for e in range(0,10): if ((a*100000+b*10000+c*1000+d*100+e*10+7)*5==700000+a*10000+b*1000+c*100+d*10+e): return a*1000+b*1000+c*100+d*10+e num=wuweishu() print(num)
作业7:有一种最简真分数,它们的分子与分母的乘积都是140,把
所有这样的真分数从小到大打印出来
""" 有一种最简真分数,它们的分子与分母的乘积都是140,把 所有这样的真分数从小到大打印出来 """ for i in range(1, 12): for j in range(2, 141): if (i < j) and (i * j == 140): print(f"{i} / {j}")
作业8:某数被80除所得的商,不但是7的倍数,而且用2,3,4,5,6去
除余数都是1,求这 个自然数.
def get_num(): """ 某数被80除所得的商,不但是7的倍数,而且用2,3,4,5,6去 除余数都是1,求这个自然数 """ index = 560 while True: if (index % 7 == 0) and (index % 2 == 1) and (index % 3 == 1) and (index % 4 == 1) and (index % 5 == 1) and (index % 6 == 1): return index index += 1 print(get_num())
作业9:编程求出满足以下条件的三位数:它除以11所得的商等于它各位数字之和
def sanweishu(): """ 编程求出满足以下条件的三位数: 它除以11所得的商等于它各位数字之和 """ for num in range(100,1000): a=num//100 b=num//10%10 c=num%10 if num//11==a+b+c: return num num=sanweishu() print(num)
作业10:有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币
[10, 8, 5, 3, 27, 99]
def get_cron(ls): """ 有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币 """ count = 0 for i in ls: if i & 1 == 0: count += i // 2 else: count += i // 2 + 1 return count if __name__ == '__main__': data = [10, 8, 5, 3, 27, 99] count = get_cron(data) print(f"最少需要{count}次才可以拿完硬币")
作业11:求1~100之间不能被3整除的数之和
def sum(): sum=0 for num in range(1,101): if num%3!=0: sum+=num return sum print(sum())
作业12:给定一个正整数N,找出1到N(含)之间所有质数的总和
def zhishu(N): sum=3 for i in range(3,N+1): for j in range(2,i): if i%j==0: break else: j+=1 if j==i: print(i) sum+=i i+=1 return sum sum=zhishu(int(input("请输入一个数:"))) print(sum)
作业13:计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)
def PI(): pi=1 i=1 sign=1 while True: sign = sign * (-1) pi = pi + sign*1/(2*i+1) if(1/(2*i+1) < 0.00000001): break i+=1 return pi*4 PI=PI() print(PI)