資源簡介 (共19張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.少兒編程課趣解數字謎題數字與字符串的轉換整數 = int( 數字型字符串 )字符串 = str (數字 )a=int('123')s=str(123)數學運算除法: /整除: //求余: %print(31/3)print(31//3)print(31%3)運行結果:10.333333333333334101龍騰數如果數字各個位數之和等于5,稱為龍騰數。例如:5,23,104等。打印1000以內所有的龍騰數。龍騰數1000以內的龍騰數有可能是1位數,2位數或者3位數。在不確定位數的情況無論使用整除求余還是字符串選取的方式都無法方便的取出各位數。此時可以將數字轉為字符串后,利用循環指令取出字符串的各個字,然后再將字轉為數字的方式計算各位數字之和。龍騰數for x in range(1000):n=str(x) #將未知位數的數字轉為字符串sum=0 #準備累加器for y in n: #遍歷字符串sum+=int(y) #所有數字累加if sum==5: #如果sum為5則打印這個數字print(x)計數10000000000減去101011后,數字9有幾個?10000000000減去101011后,將數字轉為字符串,利用for循環進行遍歷,統計9的個數。計數n=10000000000-101011s=str(n) #將計算后的數字轉為字符串c=0 #記錄9的個數for x in s:if x=='9': #如果x為'9'則c增加1c+=1print(c) #打印'9'的個數計數count():用于計算某個字符在字符串中出現的次數print('1999'.count('9')) #結果為3print('11119'.count('1')) #結果為4計數n=10000000000-101011s=str(n) #將數字轉為字符串print(s.count('9')) #結果為7對稱年年份的千位數和個位數相同且百位數和十位數相同的年份稱為對稱年,例如2002年。將2018年到2999年所有的對稱年打印出來。對稱年for x in range(2018,3000):n=str(x)a=n[0]b=n[1]c=n[2]d=n[3]if a==d and b==c:print(x)and:邏輯運算符回文把句子顛倒過來,仍與原文一致稱為回文句。例如:上海自來水來自海上,奶牛產牛奶均是回文句。不僅僅有回文句,如果數字正序與倒序一致,這個數字就是回文數。例如:79697,8448都是回文數字。實際我們前面計算的對稱年的年份也均為回文數。字符串切片利用字符串的切片我們可以從字符串中提取部分我們需要的內容。切片的寫法為[起點:終點:步長]例如字符串s='python',接下來對字符串進行切片:s[1:3:1]:切片的內容為yts[1:3:]:省略了步長值,此時步長值就使用默認的1,所以與[1:3:1]執行效果相同s[:3:]:省略了起點,則從0開始,省略了步長使用默認的1,所以切片為'pyt's[1::]:省略了終點,則一直街取到結尾,省略了步長使用默認的1,所以切片為'ython's[::-1]:省略了起點和終點,步長值為-1,則會進行取反,也就是切片為'nohtyp'對稱年利用切片解決對稱年,只要年份數字數字與顛倒后的年份數字一致,就是對稱那年。for x in range(2018,3000):n=str(x)if n==n[::-1]: #如果原年份與切片取反后的內容一致,就是對稱年print(x)相反數一個三位數加上396后正好與原數字相反,所有這樣的三位數。例如: 105 + 396 = 501256 + 396 = 652相反數遍歷所有三位數,讓三位數加上396得到一個新的三位數。將原三位數和新三位數轉為字符串。并對原三位數字符串進行切片操作取反。如果取反后的原三位數字符串與新三位數字符串相等,則打印原三位數到屏幕。相反數for x in range(100,1000):n=str(x)m=n[::-1] #取反if x+396==int(m): #如果原年份與切片取反后的內容一致,就是對稱年print('原數:',x)print('加396之后的數:',x+396) 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫