導航:首頁 > 編程語言 > 編程一元二次方程的根

編程一元二次方程的根

發布時間:2025-04-07 06:09:41

1. 用C語言中,如何用調用函數編寫求一元二次方程的根

int GetRoot(float a, float b, float c ,double* root){

double delta, deltasqrt ;

delta = b* b - 4*a*c ;

if(delta<0) return 0 ;

deltasqrt = sqrt(delta) ;

if (a!=0.0){

root[0] = (deltasqrt - b)/(2.0*a) ;

root[1] = (-deltasqrt - b)/(2.0*a) ;

}

if (root[0] == root[1]) return 1;

else return 2 ;

}

int main(void){

//計算方程的根

float a = 2.0,b =6.0,c=3.0 ;//a,b,c s是參數

double root[2] ;//root是得到的兩個根

int n = GetRoot(a,b,c,root) ;

if (n<1){

printf("方程無根") ;

}else{

printf("方程的解為:%f,%f",root[0],root[1]) ;

}

}



(1)編程一元二次方程的根擴展閱讀:

C語言是一門面向過程、抽象化的通用程序設計語言,廣泛應用於底層開發。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平台的特性,以一個標准規格寫出的C語言程序可在包括一些類似嵌入式處理器以及超級計算機等作業平台的許多計算機平台上進行編譯。

C語言特點:

(1)簡潔的語言

C語言包含有各種控制語句僅有9種,關鍵字也只有32

個,程序的編寫要求不嚴格且多以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。

(2)具有結構化的控制語句

C語言是一種結構化的語言,提供的控制語句具有結構化特徵,如for語句、if⋯else語句和switch語句等。可以用於實現函數的邏輯控制,方便麵向過程的程序設計。

(3)豐富的數據類型

C語言包含的數據類型廣泛,不僅包含有傳統的字元型、整型、浮點型、數組類型等數據類型,還具有其他編程語言所不具備的數據類型,其中以指針類型數據使用最為靈活,可以通過編程對各種數據結構進行計算。

(4)豐富的運算符

C語言包含34個運算符,它將賦值、括弧等均視作運算符來操作,使C程序的表達式類型和運算符類型均非常豐富。

(5)可對物理地址進行直接操作

C語言允許對硬體內存地址進行直接讀寫,以此可以實現匯編語言的主要功能,並可直接操作硬體。C語言不但具備高級語言所具有的良好特性,又包含了許多低級語言的優勢,故在系統軟體編程領域有著廣泛的應用。

(6)代碼具有較好的可移植性

C語言是面向過程的編程語言,用戶只需要關注所被解決問題的本身,而不需要花費過多的精力去了解相關硬體,且針對不同的硬體環境,在用C語言實現相同功能時的代碼基本一致,不需或僅需進行少量改動便可完成移植,這就意味著,對於一台計算機編寫的C程序可以在另一台計算機上輕松地運行,從而極大地減少了程序移植的工作強度

(7)可生成的高質量目標代碼,高執行效率的程序

與其他高級語言相比,C語言可以生成高質量和高效率的目標代碼,故通常應用於對代碼質量和執行效率要求較高的嵌入式系統程序的編寫。

2. python求一元二次方程的根的代碼

以下是Python代碼,用於計算一元二次方程的根:
import math

a = float(input("請輸入二次項系數a:"))
b = float(input("請輸入一次項系數b:"))
c = float(input("請輸入常數項c:"))

delta = b**2 - 4*a*c

if delta < 0:
print("該方程無實數根")
elif delta == 0:
x = -b / (2*a)
print("該方程有一個實數根:x =", x)
else:
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("該方程有兩個實數根:x1 =", x1, ", x2 =", x2)

在這個程序中,用戶需要輸入方程的二次項系數、一次項系數和常數項。程序使用math模塊中的sqrt函數來計算方程的判別式delta,然後根據delta的值判斷方程的根的情況。如果delta小於0,則方程沒有實數根;如果delta等於0,則方程有一個實數根;如果delta大於0,則方程有兩個實數根。
程序輸出方程的根,如果方程沒有實數根,則輸出相應的提示。
請注意,在輸入系數時,要確保輸入的是浮點數,否則可能會導致程序出錯。

閱讀全文

與編程一元二次方程的根相關的資料

熱點內容
win7linux共享文件夾 瀏覽:301
命令符打開本地服務 瀏覽:597
android應用程序源碼 瀏覽:699
安卓開發工程師簡歷怎麼寫 瀏覽:57
熱水器水量伺服器是什麼意思 瀏覽:115
stk衛星編譯 瀏覽:477
對後台程序員的要求 瀏覽:758
ios大文件夾圖標 瀏覽:624
生的計劃pdf 瀏覽:711
oppoa93加密便簽在哪查找 瀏覽:19
兩個數字的加減乘除運算編程 瀏覽:227
給手機加密碼忘記了怎麼辦 瀏覽:601
單片機運算符 瀏覽:297
移動端微信商城源碼 瀏覽:443
編程貓下一個背景在哪裡 瀏覽:358
javaclasstype 瀏覽:238
樂高編程和樂高課的延伸 瀏覽:356
蘋果手機怎麼切換app美國賬號 瀏覽:865
編譯程序輸入一個字元串 瀏覽:407
圓命令畫法 瀏覽:308