韋達定理


在數學中,韋達定理是關於多項式的概念,它將多項式的係數與多項式根的和與積聯絡起來。韋達定理可以作為學習多項式根之間關係的有用工具,而無需真正知道其數值和方程的係數。本文將重點介紹韋達定理的概念,並嘗試使用此公式解決一些問題。

韋達定理

由數學家韋達提出的公式建立了任意多項式根的和與積與其係數之間的關係。由於該公式涉及多項式的根和係數,因此我們可以使用該公式來解決與多項式根之間關係相關的問題,或者使用該公式根據提供的根找到方程。

一般多項式的韋達定理

任何多項式都可以寫成:

$$\mathrm{P(x)\:=\:a_{n}x^{n}\:+\:a_{n-1}x^{n-1}\:+\:...\:+a_1x+a_0}$$

假設𝑃(𝑥)是一個根為$f_1,\:f_2,\:.\:.\:.,\:f_n$的多項式。則韋達定理給出如下關係:

$$f_1\:+\:f_2\:+\:.\:.\:.+\:f_n\:=\:-\frac{a_{n-1}}{a_{n}}$$

以及:

$$f_1f_2f_3...f_n\:=\:(-1)^{n}\frac{a_{0}}{a_{n}}$$

二次方程的韋達定理

考慮二次方程 $P(x)\:=\:ax^{2}\:+\:bx\:+\:c$。

假設上述二次方程的根為 $f_1$ 和 $f_2$。

根據韋達定理:

  • 二次方程根的和為 -b/a。

$$f_1\:+\:f_2\:=\:-\frac{b}{a}$$

  • 二次方程根的積為 c/a。

$$f_1f_2\:=\:\frac{c}{a}$$

如果給出二次方程的根的和與積,則它可以表示為:

$$ax^{2}\:+\:bx\:+\:c\:=\:0$$

將整個方程除以 a:

$$x^{2}\:+\:\frac{b}{a}x\:+\:\frac{c}{a}\:=\:0$$

由於 b/a 是 -(方程根的和),c/a 是方程根的積。因此方程可以寫成:

$$x^{2}\:-\:(根的和)x\:+\:(根的積)\:=\:0$$

$$x^{2}\:-\:(f_1\:+\:f_2)x\:+\:(f_1f_2)\:=\:0$$

三次方程的韋達定理

考慮三次方程 $P(x)\:=\:ax^{3}\:+\:bx^{2}\:+\:cx\:+\:d$。

假設上述三次方程的根為 $f_1,f_2\:和\:f_3$。

根據韋達定理:

  • 三次方程根的和為 -b/a。

$$f_1\:+\:f_2\:+\:f_3\:=\:-\frac{b}{a}$$

  • 三次方程任意兩根乘積的和為 c/a。

$$f_1f_2\:+\:f_1f_3\:+\:f_2f_3\:=\:\frac{c}{a}$$

  • 三次方程根的積為 -d/a。

$$f_1f_2f_3\:=\:-\frac{d}{a}$$

如果給出三次方程根的和、任意兩根乘積的和以及根的積,則方程可以表示為:

$$ax^{3}\:+\:bx^{2}\:+\:cx\:+\:d\:=\:0$$

將方程除以 a:

$$x^{3}\:+\:\frac{b}{a}x^{2}\:+\:\frac{c}{a}x\:+\:\frac{d}{a}\:=\:0$$

由於 -b/a 是根的和,c/a 是任意兩根乘積的和,-d/a 是根的積,它可以寫成:

$$x^{3}\:-\:(根的和)x^{2}\:+\:(任意兩根乘積的和)x\:-\:(根的積)\:=\:0$$

讓我們來看一些與韋達定理相關的示例問題。

示例

示例-1

在這個例子中,我們將得到二次方程的係數作為輸入,即 a、b 和 c,我們需要使用韋達定理找出二次方程的根的和與積。

  • 將二次方程 $(ax^{2}\:+\:bx\:+\:c)$ 的係數 a、b 和 c 作為輸入。

  • 我們將初始化一個函式來計算二次方程根的和與積。

  • 使用韋達定理,我們將計算根的和 (-b/a) 和根的積 (c/a)。

  • 列印這些值,這就是我們需要的輸出。

以下是 C++ 中該方法的實現:

#include <iostream>
#include <bits/stdc++.h>
using namespace std;

//function to calculate sum and product of roots of quadratic equation
void roots(float a,float b,float c){
   float sumOfroots=-(b)/a; //calculating sum of products using vieta's formula
   float productOfroots=c/a; //calculating product of roots using Vieta's formula
   cout<<"Sum of the roots = "<<sumOfroots<<endl;
   cout<<"Product of the roots = "<<productOfroots<<endl;
}
int main(){

   //coefficient of quadratic equation which is 2x^2-10x-5=0 (ax^2+bx+c)
   float a=2;
   float b=-10;
   float c=-5;
   roots(a,b,c);
   return 0;
}

輸出

Sum of the roots = 5
Product of the roots = -2.5

時間複雜度:O(1),因為使用了常數時間。

空間複雜度:O(1),因為不需要額外的空間。

示例-2

在這個例子中,我們將得到三次方程的係數作為輸入,即 a、b、c 和 d。我們需要使用韋達定理打印出給定三次方程的根的和、任意兩根乘積的和以及根的積。

  • 將三次方程 $(ax^{3}\:+\:bx^{2}\:+\:cx\:+\:d)$ 的係數 a、b、c 和 d 作為輸入。

  • 初始化一個函式來計算三次方程的根的和、任意兩根乘積的和以及根的積。

  • 使用韋達定理,計算所需的值並將其儲存在一個變數中。

  • 列印所有值。

以下是 C++ 中該方法的實現:

#include <iostream>
#include <bits/stdc++.h>
using namespace std;

//function to calculate sum of roots, sum of product of two roots and product of roots
void roots(float a,float b,float c,float d){

   //calculating required values using Vieta's formulas
   float sumOfroots=-(b)/a;
   float sumOfproductOfTworoots=c/a;
   float productOfroots=-d/a;
   cout<<"Sum of the roots = "<<sumOfroots<<endl;
   cout<<"Sum of the product of two roots = "<<sumOfproductOfTworoots<<endl;
   cout<<"Product of two roots = "<<productOfroots<<endl;
}
int main(){

   //a, b, c and d are the coefficients of the cubic equation which can be represented as 2x^3-10x^2-5x+4=0
   float a=2;
   float b=-10;
   float c=-5;
   float d=4;
   roots(a,b,c,d);
   return 0;
}

輸出

Sum of the roots = 5
Sum of the product of two roots = -2.5
Product of two roots = -2

時間複雜度:O(1)

空間複雜度:O(1)

結論

在本文中,我們嘗試解釋了一般多項式、二次方程和三次方程的韋達定理。我們還學習瞭如何使用 C++ 為任意二次或三次方程計算二次方程根的和與積,以及三次方程根的和、任意兩根乘積的和以及根的積。

希望本文能幫助您學習韋達定理的基本概念。

更新於:2023年3月16日

3K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告