返回列表 發帖

309 函式與陣列 (最小的分數值)

本帖最後由 鄭繼威 於 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
  1. from decimal import Decimal, ROUND_HALF_UP

  2. def compute(float_list):
  3.     return min(float_list)

  4. float_list = []
  5. for i in range(3):
  6.     n = int(input())
  7.     float_list.append(n)

  8. for i in range(3):
  9.     n = int(input())
  10.     float_list[i] /= n
  11. f = compute(float_list)
  12. f_round = Decimal(str(f)).quantize(Decimal('0.000'), rounding = ROUND_HALF_UP)
  13. print(f_round)
複製代碼
  1. def compute(n):
  2.     #compute
  3.     #宣告長度為3的m陣列->存分數
  4.     m=[0]*3
  5.     #把n陣列內的6個數字轉為3個分數
  6.     for i in range(3):
  7.         m[i]=n[i]/n[i+3]
  8.    
  9.     return min(m)

  10. #宣告長度為6的n陣列
  11. n=[0]*6

  12. #輸入
  13. for i in range(6):
  14.     n[i]=int(input())

  15. print(f"{compute(n):.3f}")
複製代碼

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表