2016年8月17日 星期三

python 程式設計50題測試範例-1

1、假設長途電話費率的計算方式如下:
  (1) 任何從6:00PM(1800時)以後開始的通話將有50%的折扣。
  (2) 任何從8:00AM(0800時)以後開始的通話必須要付全額費用。
  (3) 任何電話都必須要課4%的營業稅。
  (4) 任何通話的一般費用是每五分鐘1.7元,未滿五分鐘以五分鐘計算。
  (5) 任何超過60分鐘以上的通話將有15%的折扣(已在扣除所有折扣後未
     加入稅金時的費用為準)。
  寫一程式,以讀入每次通話的起始時間(24時制)及通話時間來處理通話的
  實際費用(含稅金及折扣)。
1.
輸入範例一
起始時間8:00通話時間30分鐘
輸出範例一
10.6
輸入範例二
起始時間6:00通話時間300分鐘
輸出範例二
45.084
輸入範例三
起始時間4:00通話時間600分鐘
輸出範例三
90.168
輸入範例四
起始時間1:00通話時間744分鐘
輸出範例四
111.9586

Case
分鐘
5
1.7
1.04
折扣1
 
折扣2
 
1
30
6
10.2
10.608
1
10.608
1
10.608
2
300
60
102
106.08
0.5
53.04
0.85
45.084
3
600
120
204
212.16
0.5
106.08
0.85
90.168
4
744
149
253.3
263.432
0.5
131.716
0.85
111.9586




#coding:Big5

print ('假設長途電話費率的計算方式如下:')
print ('  (1) 任何從6:00PM(1800時)以後開始的通話將有50%的折扣。')
print ('  (2) 任何從8:00AM(0800時)以後開始的通話必須要付全額費用。')
print ('  (3) 任何電話都必須要課4%的營業稅。')
print ('  (4) 任何通話的一般費用是每五分鐘1.7元,未滿五分鐘以五分鐘計算。')
print ('  (5) 任何超過60分鐘以上的通話將有15%的折扣(已在扣除所有折扣後未')
print ('     加入稅金時的費用為準)。')
print ('  寫一程式,以讀入每次通話的起始時間(24時制)及通話時間來處理通話的')
print ('  實際費用(含稅金及折扣)。')
print ('  請依序輸入   1.起始時間24時制 小時')
print ('                          2.通話時間')

while True:
    H = input('請輸入 小時:')
    try:
       H = int(H)
       
    except ValueError:
       print ('這是不合法的輸入.  請再輸入一次...')
       continue
    if H > 0:
       break

while True:
    T = input('請輸入 通話時間 分鐘:')
    try:
       T = int(T)
       
    except ValueError:
       print ('這是不合法的輸入.  請再輸入一次...')
       continue
    if T > 0:
       break

F1=int(T/5+0.49999)  #任何通話的一般費用是每五分鐘1.7元,未滿五分鐘以五分鐘計算。
#print(F1)
F2=F1*1.7*1.04   #任何電話都必須要課4%的營業稅。
#print(F2)


# 1800時以後開始的通話將有50%的折扣
# 0800時以後開始的通話必須要付全額費用。
if H>=18 or H<=7  :
    F2=F2*0.5
print(F2)   

#任何超過60分鐘以上的通話將有15%的折扣    
if T>60 :
   F2=F2*0.85   
print(F2)  
       

print ("實際費用(含稅金及折扣)為 :%8.3f" % F2 ,"元")


程式執行後結果


================== RESTART: D:/程式語言 Python 入門/50題/ex50-1.py ==================
假設長途電話費率的計算方式如下:
  (1) 任何從6:00PM(1800時)以後開始的通話將有50%的折扣。
  (2) 任何從8:00AM(0800時)以後開始的通話必須要付全額費用。
  (3) 任何電話都必須要課4%的營業稅。
  (4) 任何通話的一般費用是每五分鐘1.7元,未滿五分鐘以五分鐘計算。
  (5) 任何超過60分鐘以上的通話將有15%的折扣(已在扣除所有折扣後未
     加入稅金時的費用為準)。
  寫一程式,以讀入每次通話的起始時間(24時制)及通話時間來處理通話的
  實際費用(含稅金及折扣)。
  請依序輸入   1.起始時間24時制 小時
                          2.通話時間
請輸入 小時:6
請輸入 通話時間 分鐘:300
53.04
45.083999999999996
實際費用(含稅金及折扣)為 :  45.084 元
>>> 
================== RESTART: D:/程式語言 Python 入門/50題/ex50-1.py ==================
假設長途電話費率的計算方式如下:
  (1) 任何從6:00PM(1800時)以後開始的通話將有50%的折扣。
  (2) 任何從8:00AM(0800時)以後開始的通話必須要付全額費用。
  (3) 任何電話都必須要課4%的營業稅。
  (4) 任何通話的一般費用是每五分鐘1.7元,未滿五分鐘以五分鐘計算。
  (5) 任何超過60分鐘以上的通話將有15%的折扣(已在扣除所有折扣後未
     加入稅金時的費用為準)。
  寫一程式,以讀入每次通話的起始時間(24時制)及通話時間來處理通話的
  實際費用(含稅金及折扣)。
  請依序輸入   1.起始時間24時制 小時
                          2.通話時間
請輸入 小時:4
請輸入 通話時間 分鐘:600
106.08
90.16799999999999
實際費用(含稅金及折扣)為 :  90.168 元
>>> 
================== RESTART: D:/程式語言 Python 入門/50題/ex50-1.py ==================
假設長途電話費率的計算方式如下:
  (1) 任何從6:00PM(1800時)以後開始的通話將有50%的折扣。
  (2) 任何從8:00AM(0800時)以後開始的通話必須要付全額費用。
  (3) 任何電話都必須要課4%的營業稅。
  (4) 任何通話的一般費用是每五分鐘1.7元,未滿五分鐘以五分鐘計算。
  (5) 任何超過60分鐘以上的通話將有15%的折扣(已在扣除所有折扣後未
     加入稅金時的費用為準)。
  寫一程式,以讀入每次通話的起始時間(24時制)及通話時間來處理通話的
  實際費用(含稅金及折扣)。
  請依序輸入   1.起始時間24時制 小時
                          2.通話時間
請輸入 小時:1
請輸入 通話時間 分鐘:744
131.716
111.9586
實際費用(含稅金及折扣)為 : 111.959 元



沒有留言:

張貼留言

2024_09 作業3 以Node-Red 為主

 2024_09 作業3  (以Node-Red 為主  Arduino 可能需要配合修改 ) Arduino 可能需要修改的部分 1)mqtt broker  2) 主題Topic (發行 接收) 3) WIFI ssid , password const char br...