e038: P45 程式的除錯02演算法錯誤
Tags : Python
Accepted rate : 0人/0人 (0%) [非即時]
評分方式:
Tolerant

最近更新 : 2024-12-26 15:33

Content

若程式沒有錯誤訊息,結果卻錯誤,此時就要一步一步執行與觀察變數的變化。

以下程式中使用print()輸出變數的內容,觀察可能發生錯誤的地方:

a , b , c = e v a l ( i n p u t ( " i n p u t a , b , c : " ) )
d = ( b * b - 4 * a * c ) * * ( 1 / 2 )
x 1 = ( - b + d ) / ( 2 * a )
x 2 = ( - b - d ) / ( 2 * a )
p r i n t ( x 1 )  # 3 . 0
p r i n t ( x 2 )  # 0 . 5

可以中途先輸出變數內容a,b,c,d,這樣可以縮小範圍,找出程式哪裡錯。

a , b , c = e v a l ( i n p u t ( " i n p u t a , b , c : " ) )
p r i n t ( a , b , c )
d = ( b * b - 4 * a * c ) * * ( 1 / 2 )
p r i n t ( d )
x 1 = ( - b + d ) / ( 2 * a )
x 2 = ( - b - d ) / ( 2 * a )
p r i n t ( x 1 )  # 3 . 0
p r i n t ( x 2 )  # 0 . 5

Input
Output
Sample Input #1


											
										
Sample Output #1
3.0
0.5
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (100%): 1.0s , <1K
Hint :
Tags:
Python
出處:
[管理者: zero(育達管理員) ]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」