c語言求根
1. c語言3次方求根
二分法float
n=27,x1=n/2,x2=0
do{
t=(x1+x2)/2
if(t*t*t==n)break return t
if(t*t*t>n)
{x1=t,x2=x2}
if(t*t*t<n)
{x1=x1,x2=t}
}while
2. c語言里 一元二次方程求根公式怎麼寫
#include<stdio.h>
#include<math.h>
intmain()
{
floata,b,c,d,x1,x2;
scanf("%f%f%f",&a,&b,&c);//輸入三個系數
d=b*b-4*a*c; //計算判別式
if(d<0)printf("無實數根! ");
elseif(d==0)printf("有兩個相等的實數根,x1=x2=%g ",-b/(2*a));
else
{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%g x2=%g ",x1,x2);
}
}
3. c語言二分法求根
二分法計算函數f(x)=x*x*x*x+2*x*x*x-x-1;
本程序在turbo c或c++下編譯:
#include "stdio.h"
#include <math.h>
float f(float x)
{float y;
y=x*x*x*x+2*x*x*x-x-1;
return y;
}
void main()
{float a=0,b=0,h,y,x;
int k,n0;
printf("please input qujian a and b");
scanf("%f%f%d",&a,&b,&n0); /*輸入含根區間a,b,循環次數n0 */
for(k=0;k<=n0;k++)
{ x=(a+b)/2;
h=(b-a)/2;
y=f(x);
if(h<10e-6||fabs(y)<10e-6)
{ printf("k=%d,x=%f,y=%f",k,x,y);
break; } /*輸出分半次數k,函數的根x,及x對應的函數值.*/
else
{if(f(a)*f(x)<0)
b=x;
else a=x;
}
}
}
4. C語言二次方程的求根公式
浮塵說的不錯,但是需要判斷一下b*b-4ac的值。b*b-4ac>0,有2個不相等的實根,b*b-4ac=0,有2個相等的實根,b*b-4ac<0則無實根,有2個虛根
5. c語言 求根
輸入語句中要使用%lf格式符
6. 一元二次方程求根的C語言程序代碼
#include<stdio.h>
#include<math.h>
voidmain()
{
doublea,b,c,d,x1,x2;/*sqrt要求用double型,定義用double,另外double和後面變數之間要有空格*/
printf("請輸入系數a、b、c:");
scanf("%lf%lf%lf",&a,&b,&c);/*&b和&c之間要有逗號*/
d=b*b-4*a*c;
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%.2lf x2=%.2lf ",x1,x2);/*輸出用%lf*/
}
7. 關於C語言方程求根代碼,急急急
建議多加幾個{}
多個if -esle嵌套時,很容易造成系統給你配對的錯誤
並且你可能自己都搞錯了配對
你的程序就是你搞錯了配對,外層一個,if(a==0)的配對,當a不是0的時候,也就是else的裡面,還有有個if判斷b*b-a*a*c,這個關繫到是否有實根,這個就需要一個{}把所有的括起來
這個是你邏輯上的錯誤
8. c語言,求根公式
你的if語句那的括弧有問題
#include<stdio.h>
#include<math.h>
intmain(){
doublea,b,c,d,x1,x2;
scanf("%f%f%f",&a,&b,&c);
if(a==0){
if(b==0){
if(c==0)
printf("該式為恆等式 ");
else
printf("該式不成立,請重新輸入a,b,c ");
}else{
x1=c/b;
printf("x1=x2=%f ",x1);
}else
d=b*b-4*a*c;
if(d<0){
d=-d;
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%f,x2=%f,虛根 ",x1,x2);
}else{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%f,x2=%f ",x1,x2);
}
return0;
}
9. c語言用二分法求根
while里的判斷不應該用!=0這種方式,因為精度的限制極有可能是一個很小的數但也不為0,應該用abs(……)<1e-5這種判斷方式
10. 一元二次方程求根C語言代碼
#include "math.h"
如:9的平方根的代碼:sqrt (9)值是:3
你的代碼中,m定義的是整型變數。而它的賦值符右邊是單精度運算。