Heim > php教程 > php手册 > PHP如何求一元二次方程的根?

PHP如何求一元二次方程的根?

WBOY
Freigeben: 2016-06-13 09:39:00
Original
3262 Leute haben es durchsucht

今天有人问题一个数学问题,4x+1/x=2,求x是多少。把方程转化一下,4x2 + 1 = 2x,然后4x2 - 2x + 1 =0,其实就是个一元二次方程的问题。好久没弄这些东西了,数学都还高中老师了。还好会写程序,下面用程序求出这个方程的根。

<? 
//ax*x bx c=0;  一元二次方程一般形式  
  
//系数设定  
$a = 2;  
$b = 3;  
$c = 0;  
echo '一元二次方程为';
echo $a.'x2'.'+'.$b.'x'.'+'.$c;
  
//求根的函数 
function get_root($a,$b,$c) 
{ 
	//放根的数组  
	$x=0;  
	$x=array();  
	if($a==0) 
	{ 
  		if($b==0) 
     	if($c==0) 
        { 
        	$x[0]=0; 
        	$x[1]="no root"; 
        } 
      	else 
        { 
        	$x[0]="no root"; 
        	$x[1]="no root"; 
        } 
  		else if($b!=0) 
     	{ 
      		$x[0]=(0-$c)/$b; 
      		$x[1]="no root"; 
     	} 
	} 
	else 
	{ 
		//标志  
  		$flg=$b*$b-4*$a*$c;  
		//△ >0 两个不同的根  
  		if($flg >0)  
    	{  
     		$x[0]=((0-$b)+sqrt($flg))/2/$a;  
     		$x[1]=((0-$b)-sqrt($flg))/2/$a;  
    	}  
  		else if($flg==0)//△=0 两个相同的根  
    	{  
    		$x[0]=(0-$b)/2/$a;  
    		$x[1]=(0-$b)/2/$a;  
    	}  
  		else  // 无根  
    	{  
    		$x[0]="no root";  
    		$x[1]="no root";  
    	}  
  	} 
  	return $x; 
} 
  
//验证代码 参数为顶部设置的a b c  的值,可自行修改测试 
$root=array(); 
$root=get_root($a,$b,$c); 
echo " <pre class="brush:php;toolbar:false">求得根: <br>"; 
print_r($root); 
echo " <pre class="brush:php;toolbar:false">"; 
  
?>
Nach dem Login kopieren

程序运行的结果为:

一元二次方程为2x2+3x+0
求得根: 
Array
(
    [0] => 0
    [1] => -1.5
)
Nach dem Login kopieren

回到最初的问题,经程序运算,结果为:

一元二次方程为4x2+-2x+1
求得根: 
Array
(
    [0] => no root
    [1] => no root
)
Nach dem Login kopieren
Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage