返回列表 發帖

103 基本認識 (總和及平均值)

本帖最後由 鄭繼威 於 2024-7-10 10:20 編輯

1. 題目說明:
請依下列題意進行作答,使輸出值符合題意要求。

2. 設計說明:
請撰寫一程式,讓使用者輸入三個整數,輸出計算總和的算式與平均值(四捨五入至小數點後第二位)。

提示:若使用 Java 語言答題,請以「JP」開頭命名包含 main 靜態方法的 class,評測系統才能正確評分。

3. 輸入輸出:
輸入說明
三個整數

輸出說明
計算總和及平均值(四捨五入至小數點後第二位)

範例輸入
11
22
33

範例輸出
11+22+33=66
22.00


本帖隱藏的內容需要回復才可以瀏覽

python
  1. from decimal import Decimal, ROUND_HALF_UP

  2. num = []
  3. add = 0
  4. formula = ''

  5. for i in range(3):
  6.     n = input()
  7.     num.append(n)
  8.     add += int(n)

  9. formula = str(num[0] + '+' + num[1] + '+' + num[2] + '=' +  str(add))
  10. print(formula)
  11. mean = Decimal(str(add / 3)).quantize(Decimal('0.00'), rounding = ROUND_HALF_UP)
  12. print("%.2f" % mean)
複製代碼
  1. from decimal import Decimal, ROUND_HALF_UP

  2. #輸入三個整數,輸出計算總和的算式與平均值(四捨五入至小數點後第二位)

  3. a=int(input())
  4. b=int(input())
  5. c=int(input())

  6. s=a+b+c   #總和
  7. print(f"{a}+{b}+{c}={s}")

  8. #平均
  9. avg=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)

  10. print(avg)
複製代碼

  1. from decimal import Decimal, ROUND_HALF_UP
  2. a=int(input())
  3. b=int(input())
  4. c=int(input())
  5. s=a+b+c
  6. print("{a}+{b}+{c}={s}")
  7. avg=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)
  8. print(avg)
複製代碼

TOP

from decimal import Decimal,ROUND_HALF_UP

a=int(input())
b=int(input())
c=int(input())

s=a+b+c

print(f"{a}+{b}+{c}={s}")


w=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)

print(w)

TOP

from decimal import Decimal, ROUND_HALF_UP

a=int(input())
b=int(input())
c=int(input())
s=a+b+c

print(f"{a}+{b}+{c}={s}")
avg=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)
print(avg)

TOP

  1. from decimal import Decimal, ROUND_HALF_UP

  2. a=int(input())
  3. b=int(input())
  4. c=int(input())

  5. s=a+b+c
  6. print(f"{a}+{b}+{c}=",s)

  7. avg=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)
  8. print(avg)
複製代碼

TOP

  1. from decimal import Decimal, ROUND_HALF_UP
  2. a =int(input())
  3. b =int(input())
  4. c =int(input())

  5. s=a+b+c
  6. print(f"{a}+{b}+{c}={s}")
  7. avg=Decimal(str(s/3)).quantize(Decimal('0.00'),
  8.     rounding=ROUND_HALF_UP)

  9. print(avg)
複製代碼

TOP

本帖最後由 李品蓁 於 2024-7-10 10:41 編輯

from decimal import Decimal,ROUND_HALF_UP

a=int(input())
b=int(input())
c=int(input())

s=a+b+c

print(f"{a}+{b}+{c}={s}")


avg=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)

print(avg)

TOP

本帖最後由 洪椽鈞 於 2024-7-10 10:28 編輯

from decimal import Decimal, ROUND_HALF_UP
a =int(input())
b =int(input())
c =int(input())

s=a+b+c
print(f"{a}+{b}+{c}={s}")
avg=Decimal(str(s/3)).quantize(Decimal('0.00'),
    rounding=ROUND_HALF_UP)

print(avg)

TOP

  1. from decimal import Decimal, ROUND_HALF_UP
  2. a =int(input())
  3. b =int(input())
  4. c =int(input())

  5. s=a+b+c
  6. print(f"{a}+{b}+{c}={s}")
  7. avg=Decimal(str(s/3)).quantize(Decimal('0.00'),
  8.     rounding=ROUND_HALF_UP)

  9. print(avg)
複製代碼

TOP

  1. from decimal import Decimal, ROUND_HALF_UP
  2. a=int(input())
  3. b=int(input())
  4. c=int(input())
  5. s=a+b+c  
  6. print(f"{a}+{b}+{c}={s}")
  7. v=Decimal(str(s/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)
  8. print(v)
複製代碼

TOP

本帖最後由 李承燁 於 2024-7-10 10:23 編輯

Note:
avg= Decimal(str(sum/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)
         使用decimal(只吃字串)        選擇底下的方法      (小數點後兩位), 進位法=四捨五入
  1. a=int(input('來個整數'))
  2. b=int(input('再來個整數'))
  3. c=int(input('又來個整數'))

  4. sum=a+b+c
  5. avg=sum/3

  6. print(f"{a}+{b}+{c}={sum}")
  7. avg= Decimal(str(sum/3)).quantize(Decimal('0.00'),rounding=ROUND_HALF_UP)
  8. print(avg)
複製代碼

TOP

使用Decimal類和quantize方法進行精確的四捨五入。
Decimal類可以處理精度更高的數值運算,避免浮點數計算中的誤差。
quantize方法指定了保留兩位小數,並使用ROUND_HALF_UP進行四捨五入。

TOP

返回列表