iT邦幫忙

2024 iThome 鐵人賽

DAY 1
0
自我挑戰組

opendata 使用 python串接發表系列 第 11

Python3 TQC++ 複習 08/23

  • 分享至 

  • xImage
  •  

410 繪製等腰三角形

num = int(input().strip())

for i in range(1, num+1):
    print(" "*(n-i)+"*"*(i*2-1))

APCS-2016-10-29-1-三角形辨別

data = list(map(int, input().split()))
data.sort()
a, b, c = data[0], data[1], data[2]
print(a, b, c)

# 印出三角形種類
if a + b <= c:
    print("No")
elif a**2 + b**2 < c**2:
    print("Obtuse")
elif a**2 + b**2 == c**2:
    print("Right")
elif a**2 + b**2 > c**2:
    print("Acute")

APCS-2016-03-05-1-成績指標

N = int(input())  # 輸入學生人數 (1 ~ 20)
scores = sorted(map(int, input().split()))  # 輸入分數,並用半型空格分隔 (1 ~ 100),同時排序

high, low = -1, 101

# 印出由小到大排列後的成績,並用半型空格分隔
print(" ".join(map(str, scores)))

# 找出最高不及格分數與最低及格分數
for score in scores:
    if score < 60 and score > high:
        high = score
    if score >= 60 and score < low:
        low = score

# 第二行:印出最高不及格分數,或「best case」
print(high if high != -1 else "best case")

# 第三行:印出最低及格分數,或「worst case」
print(low if low != 101 else "worst case")

請撰寫一程式,亂數產生紙牌的數字,接著猜紙牌數字為何。
猜錯就重新猜,並限縮範圍(ex. "猜錯了,你的數字太小了,介於3~K,請重新輸入"),並累加次數。
最後答對了,請輸出猜的次數。

import random

# 隨機生成一個紙牌數字,1~13代表A到K
a = random.randint(1, 13)
count = 0

while True:
    b = input("請輸入紙牌數字 1~K:").strip()
    count += 1
    
    # 將 J, Q, K 字符轉換為對應的數字
    if b == "J":
        b = 11
    elif b == "Q":
        b = 12
    elif b == "K":
        b = 13
    else:
        b = int(b)

    if b < a:
        print(f"猜錯了,你的數字太小了,介於 {b+1}~K,請重新輸入")
    elif b > a:
        print(f"猜錯了,你的數字太大了,介於 1~{b-1},請重新輸入")
    else:
        print(f"猜對了,您共猜了 {count} 次")
        break

參考資料:
TQC+ Python 3
Yiru@Studio
王一哲
王一哲


上一篇
正則表達式 (Regular Expression) 08/22
下一篇
Python3 TQC++ 複習 08/26
系列文
opendata 使用 python串接發表13
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言