python常見基礎程式設計題目
阿新 • • 發佈:2019-01-06
1、輸出1-100之間所有能被7整除但是不能被5整除的數 for a in range(1,101): #迴圈除1到100之間的所有數 if a%7==0 and a%5!=0: #進行判斷 print(a) 2、輸出“水仙花數”。所謂水仙花數是指1個3位的十進位制數,其各位數字的立方和等於該數本身。 例如:153是水仙花數,因為153 = 13 + 53 + 33 for i in range(100, 1000): x = math.floor(i / 100) # 獲得百位數 y = math.floor((i - x * 100) / 10) # 獲得十位數 z = i - math.floor(i / 10) * 10 # 獲得個位數if i == x ** 3 + y ** 3 + z ** 3: print(i, end=', ') 第二種寫法(注意python語言中字串的巧妙使用): for i in range(100,1000): a=str(i) b=int(a[0]) c=int(a[1]) d=int(a[2]) if i==pow(b,3)+pow(c,3)+pow(d,3): print(i) 3、不斷地輸入數字,輸入b退出,然後打印出以下內容總和是多少 有多少個 平均是多少 sum=0 count=0 while True:a=input("請輸入一個數字:") if a=="b": break #結束迴圈 else: count+=1 sum+=int(a) print(sum) print(count) print(sum/count) 4、求200以內能被17整除的最大正整數。 for i in range(200,17,-1): if i%17==0: print(i) break 5、雞兔同籠問題。假設共有雞、兔30只,腳90只,求雞、兔各有多少隻。 for c in range(0,31): if 2*c+(30-c)*4 == 90:print("雞有:",c,"只") print("兔有:",30-int(c),"只") 6、編寫程式,輸出由1、2、3、4這四個數字組成的每位數都不相同的所有三位數。 for a in range(1,5): for b in range(1,5): for c in range(1,5): if a!=b and a!=c and b!=c : print("%d%d%d" %(a,b,c)," ",end="") 7、編寫程式,生成一個含有20個隨機數的列表,要求所有元素不相同,並且每個元素的值介於1到100之間。 a = random.sample(range(1,101),20) #random.sample()生成不相同的隨機數 print(a) 8、編寫程式,計算百錢買百雞問題。假設公雞5元一隻,母雞3元一隻,小雞1元三隻,現在有100塊錢,想買100只雞,問有多少種買法? for a in range(0,101): for b in range(0,101): for c in range(0,101): if a*5+b*3+c/3==100 and a+b+c==100: print(a,b,c) 9、統計int a = 847574中位值為”1”的個數(Integer) 如果a = 7, 那麼位值為1的個數為3 如果a = 9, 那麼位值為1的個數為2 a=847574 count=0 while a!=0: if a%2==1: count+=1 else: pass a=a//2 第二種寫法,直接呼叫bin函式 print(bin(847574).count("1")) 10、在螢幕上列印1-30數,每7個數換行 for i in range(1,31): if i%7==1: print() print( i,end="") 11、列印1000以內的所有素數(質數,只能被1和自身整除的數) i = 2 while(i < 1000): j = 2 while(j <= (i/j)): if not(i%j): break j = j + 1 if (j > i/j) : print (i," ",end="") i = i + 1 12、列印10以內所有的偶數 for i in range(0,10): if i%2==0: print(i) 13、九九乘法口訣表 for i in range(1,10): for j in range(1,i+1): print( "%d*%d=%d\t"%(j,i,j*i),end="") print() 14從控制檯輸出,方法定義如右下圖: 123456 234561 345612 456123 561234 612345 for i in range(1,7): for j in range(i,7): print(j,end="") for h in range(1,i-1+1): print(h,end="") print()