網頁

2025年9月25日 星期四

TQC+ Python 證照考題評量(四十四) - 一元二次方程式

 一、主題介紹:

在學校中會遇到數學課解答一元二次方程式的解,老師時常在課堂上講解得很輕鬆,學生們聽得矇矇懂懂的,所以會寫程式的人就可以透過程式讓它自動求出解答出來,就很方便許多,今天就透過 TQC+ 考題練習這方面的程式邏輯。

(1) 題目

請撰寫一程式,將使用者輸入的三個整數(代表一元二次方程式 

ax2+bx+c=0

的三個係數a、b、c)作為參數傳遞給一個名為compute()的函式,該函式回傳方程式的解,如無解則輸出【Your equation has no root.】

提示:
輸出有順序性
回傳方程式的解,無須考慮小數點位數

(2) 輸入輸出

#輸入

三個方程式係數 a、b、c

#輸出

兩個解,如無解則輸出【Your equation has no root.】

#範例輸入

2

-3

1

#範例輸出

1.0 0.5



二、程式範例:


1. def compute(a,b,c):
2.     i = pow(b,2)-4*a*c
3.     if i>=0:
4.         d1 = (-b + pow(i,0.5)) / (2*a)
5.         d2 = (-b - pow(i,0.5)) / (2*a)
6.     else:
7.         d1,d2 = 'no','no'
8.     return d1,d2
9.
10. a = eval(input())
11. b = eval(input())
12. c = eval(input())
13. ans1,ans2 = compute(a,b,c)
14. if ans1=='no' and ans2=='no':
15.     print("Your equation has no root.")
16. else:
17.     print(ans1,ans2)

#執行結果

2

-3

1

1.0 0.5



三、程式解說:

第 1~8 行: 定義函式 compute() 帶入參數 a、b、c 計算解答後回傳。

第 10~12 行: 將使用者輸入的三個參數分別存入 a、b、c 變數中。

第 13 行: 參數帶入函式中回傳兩個解答存入 ans1 與 ans2 變數中。

第 14~17 行: 判斷答案如果有解則列印輸出解答,若無解則列印輸出 Your equation has no root.





沒有留言:

張貼留言

TQC+ Python 證照考題評量(五十四) - 平均溫度

 一、主題介紹: 資料庫中的一堆數據資料,時常需要這些資料的平均值、最大值、與最小值,作為分析資料的依據,如能透過寫程式讓它們自動化就能增加效率,就來看看今天的 TQC+ 考題的練習。 (1) 題目 請撰寫一程式,讓使用者輸入四週各三天的溫度,接著計算並輸出這四週的平均溫度及最高...