程式語言 Python::第2類:選擇敘述
源自於
https://weigecodingfun.blogspot.com/search/label/TQC%20%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80%20Python%3A%3A%E7%AC%AC2%E9%A1%9E%EF%BC%9A%E9%81%B8%E6%93%87%E6%95%98%E8%BF%B0
TQC+ 程式語言Python 210 三角形判斷
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入三個邊長,檢查這三個邊長是否可以組成一個三角形。若可以,則輸出該三角形之周長;否則顯示【Invalid】。
提示:檢查方法 = 任意兩個邊長之總和大於第三邊長。
輸入輸出:
輸入說明
三個正整數
輸出說明
可以組成三角形則輸出周長;否則顯示Invalid
輸入輸出範例
範例輸入1
5
6
13
範例輸出1
Invalid
範例輸入2
1
1
1
範例輸出2
3
import math
'''
請使用選擇敘述撰寫一程式,讓使用者輸入三個邊長,檢查這三個邊長是否可以組成一個三角形。若可以,則輸出該三角形之周長;否則顯示【Invalid】。
'''
x=eval(input("邊長 x==>"))
y=eval(input("邊長 y==>"))
z=eval(input("邊長 z==>"))
if x+y>z and x+z>y and y+z>x:
print("三角形之周長= %d " %(x+y+z))
else:
print("不合法Invalid")
邊長 x==>12
邊長 y==>6
邊長 z==>5
不合法Invalid
>
邊長 x==>3
邊長 y==>4
邊長 z==>5
三角形之周長= 12
>
TQC+ 程式語言Python 209 距離判斷
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入一個點的平面座標x和y值,判斷此點是否與點(5, 6)的距離小於或等於15,如距離小於或等於15顯示【Inside】,反之顯示【Outside】。
提示:計算平面上兩點距離的公式:
輸入輸出:
輸入說明
兩個數值x、y
輸出說明
小於或等於15輸出Inside;大於15輸出Outside
輸入輸出範例
範例輸入1
7
20
範例輸出1
Inside
範例輸入2
30
35
範例輸出2
Outside
import math
'''
請使用選擇敘述撰寫一程式,讓使用者輸入一個點的平面座標x和y值,判斷此點是否與點(5, 6)的距離小於或等於15,如距離小於或等於15顯示【Inside】,反之顯示【Outside】。
'''
x=eval(input("平面座標 x ==>"))
y=eval(input("平面座標 y ==>"))
Distance=(x-5)**2+(y-6)**2
if math.sqrt(Distance)<=15:
print("Inside")
else:
print("Outside")
平面座標 x ==>7
平面座標 y ==>20
Inside
>
平面座標 x ==>30
平面座標 y ==>35
Outside
>
TQC+ 程式語言Python 208 十進位換算
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入一個十進位整數num(0 ≤ num ≤ 15),將num轉換成十六進位值。
提示:轉換規則 = 十進位0~9的十六進位值為其本身,十進位10~15的十六進位值為A~F。
輸入輸出:
輸入說明
一個數值
輸出說明
將此數值轉換成十六進位值
輸入輸出範例
範例輸入1
13
範例輸出1
D
範例輸入2
8
範例輸出2
8
'''
請使用選擇敘述撰寫一程式,讓使用者輸入一個十進位整數num(0 ≤ num ≤ 15),將num轉換成十六進位值。
提示:轉換規則 = 十進位0~9的十六進位值為其本身,十進位10~15的十六進位值為A~F。
'''
num=eval(input("輸入一個十進位整數num(0 ≤ num ≤ 15)==>"))
if num>=0 and num<=9:
print(num)
if num==10:
print("A")
elif num==11:
print("B")
elif num==12:
print("C")
elif num==13:
print("D")
elif num==14:
print("E")
elif num==15:
print("F")
else:
print("輸入錯誤")
輸入一個十進位整數num(0 ≤ num ≤ 15)==>14
E
輸入一個十進位整數num(0 ≤ num ≤ 15)==>56
輸入錯誤
TQC+ 程式語言Python 207 折扣方案
設計說明:
請使用選擇敘述撰寫一程式,要求使用者輸入購物金額,購物金額需大於8,000(含)以上,並顯示折扣優惠後的實付金額。購物金額折扣方案如下表所示:
金 額 | 折 扣 |
---|---|
8,000(含)以上 | 9.5折 |
18,000(含)以上 | 9折 |
28,000(含)以上 | 8折 |
38,000(含)以上 | 7折 |
輸入輸出:
輸入說明
一個數值,需大於8,000(含)以上
輸出說明
顯示折扣優惠後的實付金額(輸出不需指定小數點位數)
輸入輸出範例
範例輸入
12000
範例輸出
11400.0
import math
'''
請使用選擇敘述撰寫一程式,要求使用者輸入購物金額,購物金額需大於8,000(含)以上,並顯示折扣優惠後的實付金額。購物金額折扣方案如下表所示:
金 額 折 扣
8,000(含)以上 9.5折
18,000(含)以上 9折
28,000(含)以上 8折
38,000(含)以上 7折
'''
buy=eval(input("輸入購物金額 ==>"))
if (buy<8000):
print("金額= %d , 折扣= 無 實付金額= %.2f " %(buy , buy))
elif (buy>=8000) and (buy<18000):
print("金額= %d , 折扣= 9.5折 實付金額=%.2f" %(buy ,buy*0.95))
elif (buy>=18000) and (buy<28000):
print("金額= %d , 折扣= 9折 實付金額=%.2f" %(buy ,buy*0.9))
elif (buy>=28000) and (buy<38000):
print("金額= %d , 折扣= 8折 實付金額=%.2f" %(buy ,buy*0.8))
elif (buy>=38000):
print("金額= %d , 折扣= 7折 實付金額=%.2f" %(buy ,buy*0.7))
輸入購物金額 ==>38001
金額= 38001 , 折扣= 7折 實付金額=26600.70
>
輸入購物金額 ==>12000
金額= 12000 , 折扣= 9.5折 實付金額=11400.00
>
TQC+ 程式語言Python 206 等級判斷
設計說明:
請使用選擇敘述撰寫一程式,根據使用者輸入的分數顯示對應的等級。標準如下表所示:
分 數 | 等級 |
---|---|
80 ~ 100 | A |
70 ~ 79 | B |
60 ~ 69 | C |
<= 59 | F |
輸入輸出:
輸入說明
一個整數
輸出說明
判斷輸入值所對應的等級
輸入輸出範例
範例輸入
79
範例輸出
B
import math
'''
請使用選擇敘述撰寫一程式,根據使用者輸入的分數顯示對應的等級。標準如下表所示:
分 數 等級
80 ~ 100 A
70 ~ 79 B
60 ~ 69 C
<= 59 F
'''
a=eval(input("輸入 分數 ==> "))
if a>=80 and a<=100:
print("A")
elif a>=70 and a<=79:
print("B")
elif a>=60 and a<=69:
print("C")
elif a<=59:
print("F")
輸入 分數 ==> 78
B
>
TQC+ 程式語言Python 205 字元判斷
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入一個字元,判斷它是包括大、小寫的英文字母(alphabet)、數字(number)、或者其它字元(symbol)。例如:a為英文字母、9為數字、$為其它字元。
輸入輸出:
輸入說明
一個字元
輸出說明
判斷是英文字母(包括大、小寫)、數字、或者其它字元
輸入輸出範例
範例輸入1
P
範例輸出1
P is an alphabet.
範例輸入2
@
範例輸出2
@ is a symbol.
範例輸入3
7
範例輸出3
7 is a number.
import math
'''
請使用選擇敘述撰寫一程式,讓使用者輸入一個字元,判斷它是包括大、小寫的英文字母(alphabet)、數字(number)、或者其它字元(symbol)。例如:a為英文字母、9為數字、$為其它字元。
'''
a=input("輸入一個字元 a ==>")
if a.isalpha()==True:
print(a,"is an alphabet.")
elif a.isdigit()==True:
print(a,"is a number.")
else:
print(a,"is a symbol.")
輸入一個字元 a ==>%
% is a symbol.
>
TQC+ 程式語言Python 204 算術運算
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入兩個整數a、b,然後再輸入一算術運算子 (+、-、*、/、//、%) ,輸出經過運算後的結果。
輸入輸出:
輸入說明
兩個整數a、b,及一個算術運算子 (+、-、*、/、//、%)
輸出說明
運算結果 (無須做格式化)
輸入輸出範例
範例輸入
30
20
*
範例輸出1
600
import math
'''
請使用選擇敘述撰寫一程式,讓使用者輸入兩個整數a、b,然後再輸入一算術運算子 (+、-、*、/、//、%) ,輸出經過運算後的結果。
'''
a=eval(input("輸入整數 a ==> "))
b=eval(input("輸入整數 b ==> "))
c=input("輸入一算術運算子 (+、-、*、/、//、%)= ")
if(c=="+"):
print("a+b= %d " %(a+b))
elif(c=="-"):
print("a-b= %d " %(a-b))
elif(c=="*"):
print("a*b= %d " %(a*b))
elif(c=="/"):
print("a/b= %.2f" %(a/b))
elif(c=="%"):
print("a%b= %d" %(a%b)) #取模 - 返回除法的余数
elif(c=="//"):
print("a//b= %d" %(a//b)) #取整除 - 返回商的整数部分
輸入整數 a ==> 12
輸入整數 b ==> 7
輸入一算術運算子 (+、-、*、/、//、%)= //
a//b= 1
>
TQC+ 程式語言Python 203 閏年判斷
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入一個西元年份,然後判斷它是否為閏年(leap year)或平年。其判斷規則為:每四年一閏,每百年不閏,但每四百年也一閏。
輸入輸出:
輸入說明
一個正整數
輸出說明
判斷是否為閏年或平年
輸入輸出範例
範例輸入1
1992
範例輸出1
1992 is a leap year.
範例輸入2
2010
範例輸出2
2010 is not a leap year.
import math
'''
請使用選擇敘述撰寫一程式,讓使用者輸入一個西元年份,然後判斷它是否為閏年(leap year)或平年。其判斷規則為:每四年一閏,每百年不閏,但每四百年也一閏。
'''
year=eval(input("輸入一個西元年份==>"))
if (year%4)==0 and (year%100)!=0:
print('%d is a leap year閏年.'%(year))
elif (year%400)==0:
print('%d is a leap year閏年.'%(year))
else:
print('%d is not a leap year平年.'%(year))
輸入一個西元年份==>1901
1901 is not a leap year平年.
>
TQC+ 程式語言Python 202 倍數判斷
設計說明:
請使用選擇敘述撰寫一程式,讓使用者輸入一個正整數,然後判斷它是3或5的倍數,顯示【x is a multiple of 3.】或【x is a multiple of 5.】;若此數值同時為3與5的倍數,顯示【x is a multiple of 3 and 5.】;如此數值皆不屬於3或5的倍數,顯示【x is not a multiple of 3 or 5.】,將使用者輸入的數值代入x。
輸入輸出:
輸入說明
一個正整數
輸出說明
判斷是否為3或者是5的倍數
輸入輸出範例
範例輸入1
55
範例輸出1
55 is a multiple of 5.
範例輸入2
36
範例輸出2
36 is a multiple of 3.
範例輸入3
92
範例輸出3
92 is not a multiple of 3 or 5.
範例輸入4
15
範例輸出4
15 is a multiple of 3 and 5.
import math
'''
請使用選擇敘述撰寫一程式,讓使用者輸入一個正整數,然後判斷它是3或5的倍數,顯示【x is a multiple of 3.】或【x is a multiple of 5.】;若此數值同時為3與5的倍數,顯示【x is a multiple of 3 and 5.】;如此數值皆不屬於3或5的倍數,顯示【x is not a multiple of 3 or 5.】,將使用者輸入的數值代入x。
'''
n = eval(input("輸入 整數 ==>"))
if(n%3==0 and n%5!=0):
print(n,"3的倍數.")
elif(n%3!=0 and n%5==0):
print(n,"5的倍數.")
elif(n%3==0 and n%5==0):
print(n,"3與5的倍數.")
elif(n%3!=0 and n%5!=0):
print(n,"不屬於3與5的倍數.")
輸入 整數 ==>23
23 不屬於3與5的倍數.
>
輸入 整數 ==>15
15 3與5的倍數.
>
讚.會的人多多發表文章.留給後人參考.
回覆刪除