标签:一个 while 文字 str bre int 算法 不能 test
算法典型算法
计算不能自发地思考。因此计算机所执行的由程序表示的算法必须是由机械的步骤所构成。所谓“机械的步骤”,就是不用动任何脑筋,只要按照这个步骤做就一定能完成的意思。众多的学者和前辈程序员们已经发明创造出了很多机械地解决问题的步骤,这些步骤并不依赖人类的直觉。由此所构成的算法被称为“典型算法”。
辗转相除法
辗转相除法(又称欧几里得算法)就是一个机械地求解最大公约数问题的算法。
辗转相除法可以求两个数的最大公约数,两个数相乘除以最大公约数可以得两个数的最小公倍数。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# minyt 2020.8.25
a = input("Please input num a: ")
b = input("Please input num b: ")
aa = a
bb = b
while a != b:
if a > b:
a = a - b
else:
b = b -a
else:
print "the greatest common divisor is : " ,a
print "the least common multiple is : " ,aa*bb/a
埃拉托斯特尼筛法
判断一个数是不是素数,用这个数分别除以比它小的所有正整数,如果没有找到能够整除的数,那么这个数就是素数。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# minyt 2020.8.25
a = input("Please input num a: ")
if a > 1:
for i in range(2,a-1):
if (a % i ) == 0:
print a, " is not primer."
break
else:
print a, " is primer."
else:
print a, " is not primer."
标签:一个 while 文字 str bre int 算法 不能 test
原文地址:https://blog.51cto.com/jerrymin/2523985