deftest3(): result = [] for i inrange(1, 1000): s = 0 for j inrange(1, i): if i % j == 0: s += j if s == i: result.append(str(i)) return" ".join(result)
print("1000以内的完全数有:{}".format(test3()))
结果:
任务四
任务说明:无穷级数 4/1-4/3+4/5-4/7+….的和是圆周率π。
(1)请写一个程序计算出这一级前n项的和。
(2)请利用该多项式求出误差小于10-6的圆周率π,真实值π可以使用math.PI。
1 2 3 4 5 6 7 8 9 10 11 12 13 14
deftest4(): n = int(input("输入一个n值:")) pi = 0.0 fuhao = 1; for i inrange(1, n): if fuhao == 1: pi += (1 / ((i * 2) - 1)) else: pi -= (1 / ((i * 2) - 1)) #print(4 * pi) PI = 4 * pi fuhao = fuhao * -1 print (PI) test4()
结果:
任务五
素数求和
任务说明:找出300以内的所有素数,并对它们求和。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
deftest5(): sum = 0 value = 0 for i inrange(0, 300): if i == 1: continue v = True for j inrange(2, i): if i % j == 0: v = False break if v: sum += i value += 1 print(value, sum) test5()
import random deftest7(): i = 1 a = random.randrange(10) whileTrue: b = int(input("输入所猜的数:")) if a > b: print("遗憾,太大了") elif a < b: print("遗憾,太小了") else: break i = i + 1 print("猜了%d次,你猜中了" % i) test7()