• python练习题集锦之一


    python练习题集锦之一

    python练习题集锦之一,包括:1.限制输入的整数范围1到10之间、2.输出100以内素数(质数)及其和、3.求两个数最大公约数、最小公倍数

    1.限制输入的整数范围1到10之间

    源码如下:

    1. 提示 = '输入错误,请重新输入!'
    2. while True:
    3. try:
    4. n = int(input('请输入一个正整数n(1≤n≤10):'))
    5. except:
    6. print(Error)
    7. continue
    8. if 1<=n<=10:
    9. break
    10. else:
    11. print(提示)

    2.输出100以内素数(质数)及其和

    素数(质数)就是除了1和它本身外不存在任何因子的数。

    素数(质数)算法

    思路1):因此判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数。

    思路2):另外判断方法还可以简化。m 不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~  之间的每一个整数去除就可以了。如果 m 不能被 2 ~ 间任一整数整除,m 必定是素数。原因:因为如果 m 能被 2 ~ m-1 之间任一整数整除,其二个因子必定有一个小于或等于,另一个大于或等于。例如 16 能被 2、4、8 整除,16=2*8,2 小于 4,8 大于 4,16=4*4,4=,因此只需判定在 2~4 之间有无因子即可。

    思路一源码如下:

    1. sum = 0
    2. for i in range(2,100):
    3. for j in range(2,i):
    4. if (i%j == 0):
    5. break
    6. else:
    7. print(i,end=" ")
    8. sum += i
    9. print("和="+str(sum))

    运行效果:

    2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 =1060

    思路二源码如下:

    1. sum = 0
    2. for i in range(2,100):
    3. for j in range(2,int(i ** 0.5)+1): # 求根,向下取整再+1
    4. if (i%j == 0):
    5. break
    6. else:
    7. print(i,end=" ")
    8. sum += i
    9. print("和="+str(sum))

    3. 求两个数最大公约数、最小公倍数

    辗转相除法求最大公约数算法:

    ① 整数A对整数B进行取整, 余数用整数C来表示    举例: C = A % B

    ② 如果C等于0,则C就是整数A和整数B的最大公约数

    ③ 如果C不等于0, 将B赋值给A, 将C赋值给B ,然后进行 1, 2 两步,直到余数为0, 则可以得知最大公约数

    最小公倍数  =  两个整数的乘积 /  最大公约数

    源码如下:

    1. #辗转相除法求两个数的最大公约(GreatestCommonDivisor)
    2. def GCD(a, b):
    3. # 如果最终余数为0 公约数就计算出来了
    4. while(b!=0):
    5. temp = a % b
    6. a = b
    7. b = temp
    8. return a
    9. # 求两个数的最小公倍数(LeastCommonMultiple)
    10. def LCM(a,b):
    11. return a * b / GCD(a, b)
    12. print("最大公约数为:%d" % GCD(6,9)) # 输出
    13. print("最小公倍数:%d" % LCM(6,9)) # 输出

    运行效果:

    最大公约数为:3
    最小公倍数:18

    OK!

  • 相关阅读:
    攻防世界-pwnCTFM-Off_By_one漏洞与Tcachebin绕过
    SCI英语论文长难句攻略
    【网络层】IP因特网协议解析
    Android学习从入门到放弃(文末有福利)
    2022蓝队HW初级面试题总结
    mybatisplus Lambda函数转属性名
    码蹄杯 2024 初赛第一场
    分支预测机制
    探索在Apache SeaTunnel上使用Hudi连接器,高效管理大数据的技术
    Linux 基础入门
  • 原文地址:https://blog.csdn.net/cnds123/article/details/128159963