您的位置:

c语言解方程四元一次方程,c语言求解三元一次方程组

本文目录一览:

如何用C语言解四元一次方程组?

首先要找到二元一次方程组的通解,例如:

ax+by=m

cx+dy=n

不难算出

x=(md-bn)/(ad-bc)

y=(mc-an)/(bc-ad)

这相当于知道了算法,接下来就可以编程序了:

int main(){

int a,b,c,d,m,n;

double x=0,y=0;

scanf("%d,%d,%d,%d,%d,%d",a,b,c,d,m,n);

if(a*d==b*c||b*c==a*d)puts("无解");

else{

x=(m*d-b*n)/(a*d-b*c);

y=(m*c-a*n)/(b*c-a*d);

printf("x=%f,y=%f",x,y);

}

return 0;

} 输入系数,就可以计算了

求一个用消元法解四元一次方程组的C语言代码

这是我很久前写的程序。

程序例子是 4*5 增广矩阵。

你可以改变 阶数 int n=4; n 的值,可以另写 方程系数 输出语句。直接调用

float *ColPivot(float *c,int n); 就得到解。

/* ==========================================

* GaoSi_XiaoQu.c

* ==========================================*/

#include stdio.h

#include stdlib.h

#include math.h

float *ColPivot(float *c,int n);

void main()

{

int i,j;

float *x;

int n=4;

float a[4][5]={4.,-1.,0.,2.,-1.0,-1,4,-1,0,-7.0,0,-1,4,-1,9.0,2,0,-1,4.0,0.0};

x=ColPivot(a[0],n);

for (i=0;in;i++) printf("x[%d]=%f\n",i,x[i]);

getch();

}

float *ColPivot(float *c,int n)

{

int i,j,t,k;

float *x,p;

x=(float *)malloc(n*sizeof(float));

for(i=0;i=n-2;i++)

{

k=i;

for(j=i+1;j=n-1;j++)

if(fabs(*(c+j*(n+1)+i))(fabs(*(c+k*(n+1)+i)))) k=j;

if(k!=i)

for(j=i;j=n;j++)

{

p=*(c+i*(n+1)+j);

*(c+i*(n+1)+j)=*(c+k*(n+1)+j);

*(c+k*(n+1)+j)=p;

}

for(j=i+1;j=n-1;j++)

{

p=(*(c+j*(n+1)+i))/(*(c+i*(n+1)+i));

for(t=i;t=n;t++)

*(c+j*(n+1)+t)-=p*(*(c+i*(n+1)+t));

}

}

for(i=n-1;i=0;i--)

{

for(j=n-1;j=i+1;j--)

(*(c+i*(n+1)+n))-=x[j]*(*(c+i*(n+1)+j));

x[i]=*(c+i*(n+1)+n)/(*(c+i*(n+1)+i));

}

return x;

}

四元一次方程!! c语言!!

#include iostream

using namespace std;

int main()

{

int i,j,m,n;

int num = 0;

int s;

cin s;

for(i=0; i= s/4;i++)

for (j= 0; j=s/3; j++)

{

if (4*i+3*j s)

break;

for(m=0; m=s/2;m++)

{

if (4*i+3*j+2*m s)

break;

for(n=0; n = s; n++)

{

if(4*i+3*j+2*m+n == s)

num++;

}

}

}

cout numendl;

return 0;

}

这是最简单的方法,但是时间复杂度很高,你看看能不能改进算法!

C语言如何解这四元一次方程啊?

void main(){ double p1,p2,p3,p4; if( p1+p2+p3+p4==1 p1==0.8*p1+0.5*p3

p2==0.2*p1+0.5*p3

p3==0.5*p2+0.2*p4

p4==0.5*p2+0.8*p4 )printf("%d %d %d %d \n",p1,p2,p3,p4);}