1. 程式人生 > >python 基礎練習題, 陸續新增中

python 基礎練習題, 陸續新增中

判定使用者輸入數字是否為閏年

閏年的定義:能夠被4整除的年份

#input是自定義輸入內容的函式
year = input("請輸入年份數字:")

#xxx.isdigit方法是檢測字串是否只由數字組成
if year.isdigit():
    year = int(year)
    if year % 4 == 0:
        #{}.format 是一種格式化輸出的方法
        print("{} 是閏年".format(year))
    else:
        print("{} 不是閏年".format(year))
else:
    print("請輸入年份數字")

 

三次機會猜想程式生成的數字 A, 每次過後提示是否正確 或 大於小於 A, 三次過後, 遊戲結束

import random
A = random.randint(1,100)
print(A)
for i in range(3):
    B = input("請輸入1-100之間的數字,包括1和100:")
    if B.isdigit():
        B = int(B)
        if 1<= B <= 100:
            if B == A:
                print("恭喜你,猜對了")
                print("遊戲結束")
                break
            elif B > A:
                print("第 {} 次, 猜的數字略大".format(i+1))
                if i+1 == 3:
                    print("遊戲結束")
            else:
                print("第 {} 次, 猜的數字略小".format(i+1))
                if i+1 == 3:
                    print("遊戲結束")
        else:
            print("請重新開始遊戲,並輸入符合要求的數字")
    else:
        print("請重新開始遊戲,並輸入符合要求的數字")
        break
 
  
  
import random
times = 3
i = 1
A = random.randint(1,100)
while times:
    B = input("請輸入1-100之間的數字,包括1和100:")
    if B.isdigit():
        B = int(B)
        if 1<= B <= 100:
            if B == A:
                print("恭喜你,猜對了")
                print("遊戲結束")
                break
            elif B > A:
                print("第 {} 次, 猜的數字略大".format(i))
                if i == 3:
                    print("遊戲結束")
                times -= 1
                i += 1
            else:
                print("第 {} 次, 猜的數字略小".format(i))
                if i == 3:
                    print("遊戲結束")
                times -= 1
                i += 1
        else:
            print("請重新開始遊戲,並輸入符合要求的數字")
    else:
        print("請重新開始遊戲,並輸入符合要求的數字")
        break

  

列印1-100所有的奇數

for i in range(1,101):
    if i % 2 == 1:
        print(i)

  

一個長階梯,若每步上2階,最後剩1階;若每步上3階,最後剩2階;若每步上5階,最後剩4階;若每步上6階,最後剩5階;若每步上7階,最後剛好一階不剩.

a = 0
while a < 1000:
    if a % 2 ==1:
        if a % 3 == 2:
            if a % 5 == 4:
                if a % 6 == 5:
                    if a % 7 == 0:
                        print(a)
    a += 1

  

驗證使用者密碼的程式, 使用者只有三次機會輸入錯誤,不過若輸入內容包含 "*" 的話,則不計算在內

nums = 3
password = "hhhhh1"
while nums:
    intpu_password = input("請輸入你的密碼:")
    if "*" in intpu_password:
        print("密碼中不能包含*號,請重新輸入")
    elif intpu_password == password:
        print("密碼正確")
        break
    else:
        print("密碼錯誤,還剩 {} 次機會".format(nums -1 ))
        nums -= 1

  

求100-999之間的所有水仙花數

如果一個3位數等於其各個數的立方和, 則稱為水仙花數, 例如: 153 = 1^3 + 5^3 + 3^3, 因為153 就是一個水仙花數

for i in range(100,1000):
    ls = list(str(i))
    a = int(ls[0])
    b = int(ls[1])
    c = int(ls[2])
    if i == a ** 3 + b ** 3 + c ** 3:
        print(i)

  

有紅、黃、綠三種顏色的球, 其中紅球3個, 黃球3個, 綠球6個, 先將這12個球混合放在盒子中, 從中任意取出 8 個球,計算這些球的各種顏色搭配

for red in range(0,4):
    for yellow in range(0,4):
        for green in range(2,7):
            if red + yellow + green == 8:
                print("紅球有 {} 個".format(red))
                print("黃球有 {} 個".format(yellow))
                print("綠球有 {} 個".format(green))
                print("------------------------")