python - while if else循环判断值的顺序
PHP中文网
PHP中文网 2017-04-18 10:18:52
0
2
773

def showMaxFactor(num):

count=num//2
while count>1:
    if num % count==0:
        print('%d最大的约数是%d'%(num,count))
        break
    count-=1
else:
    print('%d是素数!'%num)

num=int(input('请输入一个数:'))
showMaxFactor(num)
请输入一个数:9
9最大的约数是3

运行过程:count=9//2=4>1,判断9%4=1!=0. 所以count=4-1 在循环while吗

是这样的吗

PHP中文网
PHP中文网

认证高级PHP讲师

membalas semua(2)
洪涛

Pemahaman tentang proses berjalan adalah betul, tetapi terdapat sesuatu yang salah dengan kod.
Mengikut peraturan lekukan kod python, else terakhir tidak boleh sepadan dengan if. Anda boleh menulisnya seperti ini:

while count>1:
    if num % count==0:
        print('%d最大的约数是%d'%(num,count))
        break
    count-=1
if count == 1:
    print('%d是素数!'%num)
Ty80

Ya, melainkan anda memecahkan di atas atau mengira>1, ia mesti masih dalam gelung sementara dan sintaks yang disebutkan di atas hahaha

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan