Python 官方文档:入门教程 => 点击学习
练习_1.1练习题目: 1 打印九九乘法表 2 打印下方菱形 3 打印100以内的斐波那契数列 4 求斐波那契数列第101项 5 求10万内的所有质数 * ***
练习题目:
1 打印九九乘法表
2 打印下方菱形
3 打印100以内的斐波那契数列
4 求斐波那契数列第101项
5 求10万内的所有质数
*
***
*****
*******
*****
***
*
6 打印下方的闪电
*
**
***
*******
***
**
*
1 打印九九乘法表
# 1
for i in range(1,10):
for j in range(1,i+1):
print(j,'x',i,'=',i*j,end='\t')
print()
# 2
for i in range(1,10):
for j in range(1,i+1):
product=i*j
if product<10:
end=' '
else:
end=' '
print(str(j)+'*'+str(i)+'='+str(product),end=end)
print()
# 3
for i in range(1,10):
for j in range(1,i+1):
print('{0}*{1}={2:<2}'.fORMat(j,i,j*i),end=' ')
print()
# 4
i=1
while i<10:
j=1
while j<=i:
print('{0}*{1}={2:<2}'.format(j,i,i*j),end=' ')
j+=1
print()
i+=1
1.1 打印九九乘法表(反向)
# 1
for i in range(1,10):
print(' '*7*(i-1),end='')
for j in range(i,10):
product=i*j
if product<10:
end=' '
else:
end=' '
print(str(j)+'*'+str(i)+'='+str(i*j),end=end)
print()
# 2
i=1
j=1
while i<10:
j=i
print(' '*7*(i-1),end='')
while i<=j<10:
print('{0}*{1}={2:<2}'.format(j,i,i*j),end=' ')
j+=1
print()
i+=1
2 打印下方菱形
# 1
for i in range(-3,4):
if i<0:
i=-i
else:
i=i
print(' '*i+'*'*(7-2*i))
# 2
for i in range(-3,4):
print(' '*(-i)+'*'*(7+2*i)) if i < 0 else print(' '*i+'*'*(7-2*i))
3 打印100以内的斐波那契数列
# 1
pre=0
suf=1
for _ in range(100):
sum=pre+suf
pre=suf
suf=sum
if sum>100:
break
else:
print(sum)
# 2
i = 1
j = 1
while i < 100:
print(i)
i,j=j,i+j
# 3
a = 0
b = 1
print(a,b,end=' ')
while True:
a = a + b
b = b + a
if a < 100:
print(a, end=' ')
else:
break
if b<100:
print(b,end=' ')
else:
break
4 求斐波那契数列第101项
# 1
count=2
sum_old=0
sum_new=1
sum=0
member=101
if member==1:
print(1)
else:
while count<member+1:
sum=sum_old+sum_new
sum_old=sum_new
sum_new=sum
count+=1
else:
print(sum)
# 2
pre=0
suf=1
for _ in range(100):
sum=pre+suf
pre=suf
suf=sum
else:
print(sum)
# 3
i=1
j=1
for _ in range(100):
i,j=j,i+j
print(i)
5 求10万内的所有质数
若自然数N不能被不大于根号N的任何素数整除,则N是一个素数
num=1000
if num>2:
print(2)
if num>3:
print(3)
if num>5:
print(5)
if num>7:
print(7)
for num in range(11,num+1,2):
for i in range(3,int(num**0.5)+1,2): # int(num**0.5) 必须大于3,所以num最小值大于9,9和10都不是质数,直接从11开始
if num%i==0:
break
else:
print(num)
# 2
num=10000
if num>=2:
print(2)
for num in range(3,num,2):
for i in range(3,int(num**0.5)+1,2):
if num%i==0:
break
else:
print(num)
6 打印下方的闪电
for i in range(-3,4):
if i<0:
print(' '*(-i)+'*'*(4+i))
elif i>0:
print(' '*3+'*'*(4-i))
else:
print('*'*7)
--结束END--
本文标题: python基础练习_1.1
本文链接: https://lsjlt.com/news/183963.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0