三元一次方程组 公式 c语言
#include<stdio.h>#include<conio.h>#include<math.h>main(){doublea,b,c,d,A,B,C,D,e,f,g,...
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
double a,b,c,d,A,B,C,D,e,f,g,h,x,y,z;
scanf("%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf",&a,&b,&c,&d,&A,&B,&C,&D,&e,&f,&g,&h);
x=(d-(b*y)-(c*z))/a;
y=(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B;
z=(h-((d-(b*y)-(c*z))/a)*e-(f*(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B))/g;
printf("%lf\n%lf\n%lf",x,y,z);
}
方程组:{a*x+b*y+c*z=d
{A*x+B*y+C*z=D
{e*x+f*y+g*z=h
x=(d-(b*y)-(c*z))/a;
y=(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B;
z=(h-((d-(b*y)-(c*z))/a)*e-(f*(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B))/g;
公式有误!
请高手帮忙 展开
#include <conio.h>
#include <math.h>
main()
{
double a,b,c,d,A,B,C,D,e,f,g,h,x,y,z;
scanf("%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf",&a,&b,&c,&d,&A,&B,&C,&D,&e,&f,&g,&h);
x=(d-(b*y)-(c*z))/a;
y=(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B;
z=(h-((d-(b*y)-(c*z))/a)*e-(f*(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B))/g;
printf("%lf\n%lf\n%lf",x,y,z);
}
方程组:{a*x+b*y+c*z=d
{A*x+B*y+C*z=D
{e*x+f*y+g*z=h
x=(d-(b*y)-(c*z))/a;
y=(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B;
z=(h-((d-(b*y)-(c*z))/a)*e-(f*(D-((d-(b*y)-(c*z))/a*A)-(C*z))/B))/g;
公式有误!
请高手帮忙 展开
展开全部
不知你那公式怎么来的,建议采用线性代数的克莱姆方法来解:
为方便和完善期间,增加一个变量H,把x=,y=,z=那三行和后面那一行
替换为:
H=a*(B*g-C*f)-A*(b*g-c*f)+e*(b*C-c*B);
if(H==0) printf("次方程组无解!");
else
{x=(d*(B*g-C*f)-D*(b*g-c*f)+h*(b*C-c*B))/H;
y=(d*(A*g-C*e)-D*(a*g-c*e)+h*(a*C-c*A))/H;
z=(d*(A*f-B*e)-D*(a*f-b*e)+h*(a*B-b*A))/H;
printf("%lf\n%lf\n%lf",x,y,z);}
试验一下,不行再问。其实你的变量设置不大好,为了尽量保持原貌,未做改动。
为方便和完善期间,增加一个变量H,把x=,y=,z=那三行和后面那一行
替换为:
H=a*(B*g-C*f)-A*(b*g-c*f)+e*(b*C-c*B);
if(H==0) printf("次方程组无解!");
else
{x=(d*(B*g-C*f)-D*(b*g-c*f)+h*(b*C-c*B))/H;
y=(d*(A*g-C*e)-D*(a*g-c*e)+h*(a*C-c*A))/H;
z=(d*(A*f-B*e)-D*(a*f-b*e)+h*(a*B-b*A))/H;
printf("%lf\n%lf\n%lf",x,y,z);}
试验一下,不行再问。其实你的变量设置不大好,为了尽量保持原貌,未做改动。
东莞大凡
2024-11-19 广告
2024-11-19 广告
板格标定棋盘是我们东莞市大凡光学科技有限公司在精密光学测量领域的重要工具。它采用高精度设计,确保每一个格板都达到严格的校准标准。通过使用板格标定棋盘,我们能够有效地对光学测量系统进行校准,从而提升测量的准确性和可靠性。这一工具在光学仪器的研...
点击进入详情页
本回答由东莞大凡提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询