实例练习
练习昨天学习的内容
-
给定一个五位正整数,分别打印 每个位的数
方法1:使用字符串的方式
方法2:
方法3:
- 打印九九乘法表
for i in range(1,10):
for j in range(1,i+1): #要执行到与 i 相等
print("%d x %d = %d"%(j,i,(i*j)),end=" ") #这边处理了一下,好看一点
print() #换一下行
- 打印某个菱形
#打印某菱形图案
a=1
b=1
for i in range(1,8):
if i<5:
for _ in range(5-i):
print(" ",end='')
for _ in range(a):
print("*",end='')
if i<4:
a+=2
elif i>=5:
a-=2
b+=1
for _ in range(b):
print(" ",end='')
for _ in range(a):
print("*",end='')
print()
#我的代码不是很好,感觉还可以优化
- 打印100 以内的斐波那契数列
#打印100以内的斐波那契数列
pre=1
hou=1
print(1) #强迫症,少一个感觉不好
while True:
hou=hou+pre
if hou>100 and pre >100: #当某个值达到100 时,终止循环
break
print(hou) #打印斐波那契数列
pre=pre+hou
- 求斐波那契数列的101项
#求斐波那契数列第101项
pre1=1
hou1=1
#一次走两步
for i in range(50):
hou1+=pre1
pre1+=hou1
print(hou1)
#解法二,百度找的
a=1
b=1
count=2
while True:
c=a+b
count+=1
if count>=101:
print(c)
break
a=b
b=c
- 求10万内的所有素数
#求10万以内的所有素数 除了1 和 自身,不能被其他数整除的数
for i in range(2,100000):
for j in range(2,10):
if i==j:
print(i)
if i%j==0:
break
if j==9:
print(i)
代码全是在 jupyter notebook 里面敲的