本帖最後由 鄭繼威 於 2024-7-15 10:57 編輯
1. 題目說明:
請依下列題意進行作答,使輸出值符合題意要求。
2. 設計說明:
請撰寫一程式,包含名為compute()的函式,接收主程式傳遞的一個陣列,陣列中有六個1~10之間的數字,陣列的前三個數字為分子;後三個數字為分母。第一個數字(分子)和第四個數字(分母)組成分數;第二個數字和第五個數字組成分數,以此類推,共三個分數,compute()判斷最小的分數值後回傳至主程式輸出。
提示:若使用 Java 語言答題,請以「JP」開頭命名包含 main 靜態方法的 class,評測系統才能正確評分。
3. 輸入輸出:
輸入說明
六個1~10之間的整數
輸出說明
最小的分數值
範例輸入
1
4
8
5
10
7
範例輸出
0.200
本帖隱藏的內容需要回復才可以瀏覽 Python- from decimal import Decimal, ROUND_HALF_UP
- def compute(float_list):
- return min(float_list)
- float_list = []
- for i in range(3):
- n = int(input())
- float_list.append(n)
- for i in range(3):
- n = int(input())
- float_list[i] /= n
- f = compute(float_list)
- f_round = Decimal(str(f)).quantize(Decimal('0.000'), rounding = ROUND_HALF_UP)
- print(f_round)
複製代碼- def compute(n):
- #compute
- #宣告長度為3的m陣列->存分數
- m=[0]*3
- #把n陣列內的6個數字轉為3個分數
- for i in range(3):
- m[i]=n[i]/n[i+3]
-
- return min(m)
- #宣告長度為6的n陣列
- n=[0]*6
- #輸入
- for i in range(6):
- n[i]=int(input())
- print(f"{compute(n):.3f}")
複製代碼 |