第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Python 編碼,嵌套循環(huán)

Python 編碼,嵌套循環(huán)

catspeake 2021-08-14 17:46:14
假設(shè)有兩個(gè)變量 k 和 m,每個(gè)變量都已經(jīng)與一個(gè)正整數(shù)值相關(guān)聯(lián),并進(jìn)一步假設(shè) k 的值小于 m 的值。編寫計(jì)算 k 和 m 之間完美平方數(shù)所需的代碼。(完美平方是一個(gè)整數(shù),如 9、16、25、36,它等于另一個(gè)整數(shù)的平方(在本例中分別為 3*3、4*4、5*5、6*6。)關(guān)聯(lián)數(shù)字你用變量 q 計(jì)算。例如,如果 k 和 m 的值分別為 10 和 40,則應(yīng)將 3 分配給 q,因?yàn)樵?10 和 40 之間有這些完全平方數(shù):16、25 和 36。**如果我想計(jì)算 16 和 100 之間的數(shù)字(5,6,7,8,9 =makes 5)并根據(jù) i 和 j 編寫代碼,我的代碼將如下所示,但出了點(diǎn)問題。我想得到結(jié)果,5 最后。我該如何糾正? k=16 m=100 i=0 j=0 q1=0 q2=0 while j**2 <m:    q2=q2+1    while i**2 <k:        q1=q1+1        i=i+1    j=j+1    print(q2-q1)
查看完整描述

3 回答

?
12345678_0001

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊

您可能不想為此循環(huán)。如果 k 和 m 相距很遠(yuǎn),則需要很長(zhǎng)時(shí)間。


給定 k < m,你想計(jì)算多少個(gè)整數(shù) l 使得 k < l^2 < m。最小可能的整數(shù)是 floor( sqrt(k) +1 ),最大可能的整數(shù)是 ceil(sqrt(m)-1)。這些整數(shù)的數(shù)量是:


import math


def sq_between(k,m):

    return math.ceil(m**0.5-1) - math.floor(k**0.5+1) +1

這允許


sq_between(16,100)

產(chǎn)生:


5


查看完整回答
反對(duì) 回復(fù) 2021-08-14
?
溫溫醬

TA貢獻(xiàn)1752條經(jīng)驗(yàn) 獲得超4個(gè)贊

這是您的功能的另一個(gè)版本,似乎可以滿足您的要求。


k = 16

m = 100

perfect_squares = []

for i in range(m):

    if i**2 < k:

        continue

    if i**2 > m:

        break

    perfect_squares.append(i**2)

print(perfect_squares)


查看完整回答
反對(duì) 回復(fù) 2021-08-14
?
白衣染霜花

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超10個(gè)贊

您的代碼混淆了第二個(gè) while 循環(huán)中的所有內(nèi)容。如果您進(jìn)一步解釋一下您在那里嘗試做什么,我可能能夠解釋為什么您的想法不起作用。


我會(huì)按如下方式更改您的代碼以使其正常工作:


k = 10

m = 40


i = 0

q = 0

while i ** 2 < m:

    if i ** 2 > k:

        print(i)

        q += 1

    i += 1


print (q)

通過利用每個(gè)平方數(shù)都可以通過square = sum from i = 1 to n (2 * i + 1)有一個(gè)簡(jiǎn)單的方法來加速上述算法的事實(shí)- 但算法會(huì)變得更長(zhǎng)……


查看完整回答
反對(duì) 回復(fù) 2021-08-14
  • 3 回答
  • 0 關(guān)注
  • 230 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)