005-Python-100-Days

今天是逻辑结构,代码源自项目Python-100-Days,部分代码源自网上,以及我的修改。
1.生成斐波那契数列的前20个数

f1 = 1;f2 = 1
for i in range(1,11):
#print(str.format("{0:6}{1:6}", f1, f2), end=" ")
#每行输出两个数,每个占6位,空格分隔
#if i % 2 == 0:print() #显示4项后换行
print( f1)
print(f2)
f1 += f2; f2 += f1 #关键
#注:找到了一个跟我的思路很接近的代码,我原来的错误之处在于错误使用了数组,还不如支设两个变量呢。

#2.找出10000以内的完美数。

import math

for num in range(1, 10000):
result = 0
for factor in range(1, int(math.sqrt(num)) + 1):
if num % factor == 0:
result += factor
if factor > 1 and num // factor != factor:
result += num // factor
if result == num:
print(num)

#3.输出100以内所有的素数

import math

for num in range(2, 100):
is_prime = True
for factor in range(2, int(math.sqrt(num)) + 1):
if num % factor == 0:
is_prime = False
break
if is_prime:
print(num, end=’ ')

你可能感兴趣的:(005-Python-100-Days)