資源簡(jiǎn)介 (共22張PPT)Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.少兒編程課數(shù)字謎題字符串的遍歷for x in 字符串:…字符串[下標(biāo)]字符串1 + 字符串2字符串 * 數(shù)字print('hello'+'world') #helloworldprint('xyz'*3) #xyzxyzxyzfor x in 'python':print(x) #p y t h o ns='python'print(s[0]) #pprint(s[1]) #yprint(s[-1]) #n字符串的切片切片:[起點(diǎn):終點(diǎn):步長]s='python'print(s[1:3:1])print(s[1:3])print(s[:3:])print(s[1::])print(s[::-1])有意思的數(shù)字數(shù)字能表達(dá)的含義還有很多,比如經(jīng)常用到的886,520,1314,666等,這里主要用到了數(shù)字的諧音。另外我們?cè)谫徺I鮮花的時(shí)候,不同的支數(shù)又代表了不同的寓意,比如:10代表十全十美,33代表三生三世,99代表天長地久等。這里除了數(shù)字的諧音之外還有一些數(shù)字本身的含義,當(dāng)然還有商家的銷售技巧。除了上述的例子之外,還有一些結(jié)構(gòu)巧妙的數(shù)字,我們來看一看奇妙數(shù)奇妙數(shù):一個(gè)整數(shù)等于其各位數(shù)字之和加上各位數(shù)字之積例如39 = (3+9)+(3*9)求出所有兩位數(shù)奇妙數(shù)奇妙數(shù)思路:遍歷所有的兩位數(shù)拆解出個(gè)位和十位數(shù)字如果兩位數(shù)字等于個(gè)位+十位+個(gè)位×十位,這個(gè)數(shù)字就是奇妙數(shù)奇妙數(shù)for x in range(10,100):n=str(x)a=int(n[0]) #拆解出來的十位數(shù)字b=int(n[1]) #拆解出來的個(gè)位數(shù)字if x==(a+b)+(a*b):print(x)零巧數(shù)四位數(shù)中百位數(shù)字為0,去掉0后的三位數(shù)字乘以9等于原四位數(shù)例如:2025 = 225*9求所有的零巧數(shù)?零巧數(shù)思路:1、構(gòu)建百位為0的四位數(shù):使用雙循環(huán),一層控制千位數(shù),一層控制十位和個(gè)位。2、每一次循環(huán)利用字符串的拼接構(gòu)建四位數(shù)和三位數(shù)。3、凡是滿足四位數(shù) = 三位數(shù) * 9就打印出來。零巧數(shù)zfill():返回指定長度的字符串,原字符串右對(duì)齊,前面補(bǔ)0for x in range(1,10):for y in range(100):a=str(x)b=str(y).zfill(2)n=a+'0'+bm=a+bif int(n)==int(m)*9:print(n)同構(gòu)數(shù)一個(gè)數(shù)字會(huì)出現(xiàn)在它的二次方數(shù)右邊的數(shù)例如:數(shù)字5,5×5=25,數(shù)字6,6×6=36,求所有10000以內(nèi)的同構(gòu)數(shù)同構(gòu)數(shù)如何取出兩數(shù)相乘后結(jié)果的最后幾位數(shù)呢?要首先知道數(shù)字的位數(shù),然后根據(jù)數(shù)字的位數(shù)去取數(shù)字相乘后的位數(shù)。例如,對(duì)于數(shù)字5來說,因?yàn)槭莾晌粩?shù),所以要取5 × 5計(jì)算結(jié)果的最后一位,但是對(duì)于數(shù)字25來說,因?yàn)槭莾晌粩?shù),所以要取25 × 25計(jì)算結(jié)果的最后兩位。從計(jì)算結(jié)果中取數(shù)字時(shí)可以使用切片的方式,如果乘數(shù)是1位,可以利用下標(biāo)來取結(jié)果的最后一位。同構(gòu)數(shù)**:求次冪符號(hào)for x in range(10000):n=str(x**2)m=str(x)c=len(m) #求該數(shù)是幾位數(shù)if x==int(n[-c::]): #利用切片來取相乘結(jié)果的后幾位print(x)自冪數(shù)自冪數(shù)是指一個(gè) n 位數(shù),它的每個(gè)位上的數(shù)字的 n 次冪之和等于它本身。例如:數(shù)字153 = 13 + 53 +33當(dāng)n為不同的位數(shù)時(shí),他們還有自己獨(dú)特的名稱:n = 1時(shí),這樣的數(shù)字稱為獨(dú)身數(shù),例如數(shù)字:0,1n = 3時(shí),這樣的數(shù)字稱為水仙花數(shù),例如數(shù)字:153n = 4時(shí),這樣的數(shù)字稱為獨(dú)四葉玫瑰數(shù),例如數(shù)字:1634n = 5時(shí),這樣的數(shù)字稱為五角星數(shù),例如數(shù)字:54748n = 6時(shí),這樣的數(shù)字稱為六合數(shù),例如數(shù)字:548834n = 7時(shí),這樣的數(shù)字稱為北斗七星數(shù),例如數(shù)字:1741725n = 8時(shí),這樣的數(shù)字稱為八仙數(shù),例如數(shù)字:24678050n = 9時(shí),這樣的數(shù)字稱為九九重陽數(shù),例如數(shù)字:146511208n = 10時(shí),這樣的數(shù)字稱為十全十美數(shù),例如數(shù)字:4679307774水仙花數(shù)一個(gè)3位數(shù),它的每個(gè)位上的數(shù)字的3次冪之和等于它本身例如:數(shù)字153 = 13 + 53 +33求所有的水仙花數(shù)1、遍歷所有的三位數(shù)。2、將數(shù)字轉(zhuǎn)為字符串后,計(jì)算每一位數(shù)字的三次方之和。3、如果步驟2的計(jì)算結(jié)構(gòu)與數(shù)字本身一致,則就是水仙花數(shù)。水仙花數(shù)水仙花數(shù)for x in range(100,1000):n=str(x) #將三位數(shù)轉(zhuǎn)為字符串sum=0for y in n:sum+=int(y)**3 #求和運(yùn)算if x==sum: #如果和與原先的三位數(shù)一樣,則打印print(x)四葉玫瑰數(shù)一個(gè)4位數(shù),它的每個(gè)位上的數(shù)字的4次冪之和等于它本身例如:數(shù)字1634 = 14 + 64 +34 + 44求所有的四葉玫瑰數(shù)四葉玫瑰數(shù)for x in range(1000,10000):n=str(x) #將四位數(shù)轉(zhuǎn)為字符串sum=0for y in n:sum+=int(y)**4 #求和運(yùn)算if x==sum: #如果和與原先的四位數(shù)一樣,則打印print(x)求解自冪數(shù)有什么規(guī)律?自冪數(shù)n=input("您想獲得幾位數(shù)的次冪數(shù):")n=int(n)a=10**(n-1)b=10**nfor x in range(a,b):s=str(x)sum=0for y in s:sum+=int(y)**nif x==sum:print(x) 展開更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來源于二一教育資源庫