C语言编程,二元一次方程组?

C语言编程,二元一次方程组?,第1张

#include<stdio.h>

main()

{

double a1,b1,c1,a2,b2,c2,x,y

printf("请依次输入A1、B1、C1、A2、B2、C2\n")

scanf("%lf%lf%lf%lf%lf%lf",&a1,&b1,&c1,&a2,&b2,&c2)

x=(c1*b2-b1*c2)/(a1*b2-b1*a2)

y=(c1*a2-a1*c2)/(b1*a2-a1*b2)

printf("x=%lf,y=%lf\n",x,y)

}

首先要找到二元一次方程组的通解,例如: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语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器以及超级电脑等作业平台。

C语言之所以命名为C,是因为 C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言。

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

ax+by=m

cx+dy=n

不难算出

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

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

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

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)

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)

getch()

}

输入系数,就可以计算了

上面是求二元一次方程的根,根据“三种情况”不知你是否是想求一元二次方程的根,这里也给出程序供参考:

#include<stdio.h>

#include<math.h>

main()

{

int a,b,c

float x1,x2,k

printf("\n input a,b,c:")

scanf("%d%d%d",&a,&b,&c)

if(a==0)

{ x1=-c/b

printf("\njie:x=%f",x1)

}

else

{ k=sqrt(b*b-4*a*c)

if(fabs(k-0.0)>=1e-6)

{ x1=((-b)+k)/2*a

x2=((-b)-k)/2*a

printf("\njie:x1=%8.3f,x2=%8.3f",x1,x2)

}

else

{ x1=(-b)/2*a

x2=k/2*a

printf("\njie:x1=%4.2f+%4.2fi ,x2=%4.2f-%4.2fi")

}

}

}

这个我试过了,OK!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11202007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存