Python循環題型
例1 1-100求和:
程序分析:
- 使用range(1,101)生成一個整數序列,使用sum變量相加每一個整數
程序示例:
"""
題目:1~100求和
版本:1.0
作者:假書生@
日期:2020年1月11日
"""
sum = 0
for i in range(1,101):
sum += i
print(sum)
運行結果:
5050
例2 判斷素數:
程序分析:
素數:素數又稱質數。所謂素數是指除了 1 和它本身以外,不能被任何整數整除的數。
思路:因爲1不是素數,2,3爲素數,可以這樣判斷
if num < 2:
print("該數字不爲素數")
if num == 2 or num == 3 :
print("該數字爲素數")
其他的素數都分佈在6n-1和6n+1,所以可以這樣排除:
if num % 6 != 1 and num % 6 != 5:
print("該數不爲素數")
因爲6n,6n+2,6n+4都爲偶數,6n-1和6n+1爲基數,相除肯定不爲0,如果除以6n+3的話,也可以被3整除,所以6n+3無需判斷,只需除以6n-1和6n+1即可,所以從5開始,到輸入數字的開方結束,步長爲6,
num = int(math.sqrt(num))
for i in range(5,num):
if num % i== 0 or num % (i+2) == 0:
print("該數字不爲素數")
i += 6
else:
print("該數字爲素數")
如果開方數小於5,直接判斷該數爲素數
if num < 5 :
print("該數字爲素數")
程序示例:
"""
題目:判斷素數
版本:1.0
作者:假書生@
日期:2020年1月13日
"""0
import math
def Judge(num):
if num < 2:
print("該數字不爲素數")
return False
if num == 2 or num == 3 :
print("該數字爲素數")
return False
if num % 6 != 1 and num % 6 != 5:
print("該數不爲素數")
return False
num = int(math.sqrt(num))
if num < 5 :
print("該數字爲素數")
return True
for i in range(5,num):
if num % i== 0 or num % (i+2) == 0:
print("該數字不爲素數")
i += 6
else:
print("該數字爲素數")
while 1:
num = int(input("請輸入您要判斷的數字:"))
Judge(num)
運行結果:
請輸入您要判斷的數字:2
該數字爲素數
請輸入您要判斷的數字:3
該數字爲素數
請輸入您要判斷的數字:4
該數不爲素數
請輸入您要判斷的數字:5
該數字爲素數
請輸入您要判斷的數字:8
該數不爲素數
例3 猜數字遊戲:
程序分析:
導入random模塊,隨機獲取一個1到1000的數字
在循環中獲取到用戶輸入的數字,如果用戶輸入的數字大於隨機數,提示猜大了,如果用戶輸入的數字小於隨機數,提示猜小了。猜對則退出循環。
程序示例:
"""
題目:猜數字遊戲
版本:1.0
作者:假書生@
日期:2020年1月13日
"""
import random
num = random.randint(1,1000)
while 1:
a = int(input("您要猜的數字"))
if a > num :
print("猜大了")
elif a < num :
print("猜小了")
else :
print("猜對了")
break
運行結果:
您要猜的數字525
猜小了
您要猜的數字530
猜大了
您要猜的數字525
猜小了
您要猜的數字527
猜小了
您要猜的數字529
猜對了
例4 打印九九表
程序分析:
使用循環的嵌套,第一層循環空值列,從1到九,第二層循環空值行,從1到當前行數,每打印完一行後,就輸出回車。
程序示例:
"""
題目:打印九九乘法表
版本:1.0
作者:假書生@
日期:2020年1月13日
"""
for i in range(1,10):
for j in range(1,i+1):
print("{}*{}={}".format(i,j,i*j),end=' ')
print()
運行結果:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81