資源簡介 (共23張PPT)Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque tatibus et magnis dis parturient montes, nascetur ridiculus mus.少兒編程課分水果range(n)循環變量從0開始,每一次重復執行時值都會在上一次數值基礎增加1,一直持續到n-1,共n個數字。range(n,m)循環變量從n開始,每一次重復執行時值都會在上一次數值基礎增加1,一直持續到m-1,共m-1個數字。無限循環while True:…if 條件:…break在不能預先明確知道循環次數的時候,只能使用while進行循環,當條件滿足時使用break語句退出循環又稱約數。整數a除以整數b(b≠0) 除得的商正好是整數而沒有余數,我們就說a能被b整除,或b能整除a。a稱為b的倍數,b稱為a的因數(約數)。例如:12除以6等于2沒有余數,12是6的倍數,6是12的因數。因數計算因數18的因數有哪些?對于任意一個數字而言,1和本身都是其約數從1開始遍歷到數字本身,凡是可以除盡的就是約數利用列表存放因數計算因數s=[]for x in range(1,19):if 18 % x==0:s.append(x)print(s)計算倍數100以內6的倍數有哪些?一個數的倍數是無限多的,所以求倍數時一定要有一定的范圍從6開始遍歷到100,凡是可以被6除盡的就是6的倍數利用列表盛放100以內6的倍數計算倍數s=[]for x in range(6,101):if x % 6==0:s.append(x)print(s)完美數一個數,除了自身以外的因數之和恰好等于它本身例如6的因數除了自身之外有1、2、36 = 1+2+3找出100以內的所有完美數完美數遍歷所有100以內的數字求出每一個數除自身以外的所有因數之和如果因數之和與自身相等,則是一個完美數用列表盛放所有的完美數代碼實現s=[] #存放所有完美數for x in range(1,100):#1~99sum=0 #所有因數之和for y in range(1,x): #計算從1開始但不包含自身的因數if x % y ==0:sum+=y #因數求和if sum == x: #如果因數之和與原數字相等s.append(x) #添加到列表s中print(s)公因數公因數,亦稱“公約數”如果一個整數同時是幾個整數的因數,稱這個整數為它們的“公因數”例如:6可以同時被24,36整除,則6就是24和36的公因數公因數可能有多個,最大的那一個稱為最大公因數公因數遍歷從1開始到較小數字的所有數字利用列表盛放可以同時整除兩個數字的所有數字列表中的數字就是公因數,列表中最大的數字就是最大公因數公因數max(列表名稱):求列表中的最大值m=[]for x in range(1,25):if 24%x==0 and 36%x==0:m.append(x)print(m) #公因數print(max(m)) #最大公因數窮舉法計算最大公因數要求解數字m和n的最大公因數時:設定變量temp為m或n其中的任意一個值如果temp可以被m和n整除,則temp就是最大公約數如果temp不能,就讓temp的值減去一,然后再次判斷此時的temp是否可以被m和n整除。重復這個步驟,直到找到這樣一個temp即使m和n為互質數,它們也有一個公約數1窮舉法計算最大公因數m=input('m:')n=input('n:')m=int(m)n=int(n)temp=mwhile True:if m % temp==0 and n % temp ==0:breakelse:temp-=1print("最大公因數為:",temp)數學特性法計算最大公因數要求解數字m和n的最大公因數時:讓m對n求余,如果可以除盡,則n就是最大公約數如果m不能整除n,則讓m等于n的值,n等于每一步計算的余數。繼續讓m對n求余,如果可以除盡,則此時的n就是最大公約數。否則繼續重復執行第二步即使m和n為互質數,它們也有一個公約數1數學特性法計算最大公因數m=input('m:')n=input('n:')m=int(m)n=int(n)while True:if m % n==0:breakelse:m,n=n,m%nprint("最大公因數為:",n)裁紙把一張135厘米長,105厘米寬的長方形紙,裁成同樣大小的正方形,并且無剩余,至少能裁多少塊?只要是135和105的因數,都可以裁剪出來現在題目要求的是至少能裁剪多少塊,也就是要以最大的正方形來裁剪所以要以135和105的最大公約數作為正方形的邊長用135或105除以邊長就可以得到裁剪的個數裁紙m=135n=105while True:if m % n==0:breakelse:m,n=n,m%nprint("最大正方形的邊長:",n) #最大的正方形邊長print("最多可以裁剪:",135/n) #可以裁剪的個數分水果50個梨,75個橘子,100個蘋果,這些水果最多可以平均分配給幾個小朋友?這道題實際就是在求解50,75,100這三個數字的最大公約數分水果m=50n=75p=100temp=mwhile True:if m % temp==0 and n % temp==0 and p % temp==0:breakelse:temp-=1print("最多可分給小朋友的個數:",temp) 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫