
9个回答
展开全部
首先要找到二元一次方程组的通解,例如:
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;
}
输入系数,就可以计算了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-19
展开全部
你没有说清楚条件哦,X1和X2一定要是整数吗?如果是的话 由题意能看出X1是大于0,小于35的 那么可以用循环来做
void main()
{
int a,b;
for(a=1;a<35;a++)
{
b=35-a;
if(2*a+b==50)
{
printf("%d ",a); /*打印出每组符合要求的a和b*/
printf("%d\n",b);
}
}
}
void main()
{
int a,b;
for(a=1;a<35;a++)
{
b=35-a;
if(2*a+b==50)
{
printf("%d ",a); /*打印出每组符合要求的a和b*/
printf("%d\n",b);
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-19
展开全部
#include "stdio.h"
void fun(double a[],double b[]){
double re[2];
re[0]=re[1]=0.0;
if((a[0]==0.0&&a[1]==0.0)||(a[0]==0.0&&b[0]==0.0)||(b[0]==0.0&&b[1]==0.0)||(a[1]==0.0&&b[1]==0.0))
{ printf("�0�2�0�7�0�5�0�9");
return;
} if(a[0]!=0.0) {
if(a[0]*b[1]-a[1]*b[0]==0.0)
{
printf("�0�2�0�7�0�5�0�9");
}
re[1]=(a[0]*b[2]-b[0]*a[2])/(a[0]*b[1]-a[1]*b[0]);
re[0]=(a[2]-re[1]*a[1])/a[0];
}
else
{
re[1]=a[2]/a[1];
re[0]=(a[2]-a[1]*re[1])/b[0];
}
printf("x1=%f\n",re[0]);
printf("x2=%f\n",re[1]);
}
void main()
{
double a1[3],b1[3];
a1[0]=1;
a1[1]=1;
a1[2]=35;
b1[0]=2;
b1[1]=1;
b1[2]=50;
fun(a1,b1);
}
调试过了,没有错误.
void fun(double a[],double b[]){
double re[2];
re[0]=re[1]=0.0;
if((a[0]==0.0&&a[1]==0.0)||(a[0]==0.0&&b[0]==0.0)||(b[0]==0.0&&b[1]==0.0)||(a[1]==0.0&&b[1]==0.0))
{ printf("�0�2�0�7�0�5�0�9");
return;
} if(a[0]!=0.0) {
if(a[0]*b[1]-a[1]*b[0]==0.0)
{
printf("�0�2�0�7�0�5�0�9");
}
re[1]=(a[0]*b[2]-b[0]*a[2])/(a[0]*b[1]-a[1]*b[0]);
re[0]=(a[2]-re[1]*a[1])/a[0];
}
else
{
re[1]=a[2]/a[1];
re[0]=(a[2]-a[1]*re[1])/b[0];
}
printf("x1=%f\n",re[0]);
printf("x2=%f\n",re[1]);
}
void main()
{
double a1[3],b1[3];
a1[0]=1;
a1[1]=1;
a1[2]=35;
b1[0]=2;
b1[1]=1;
b1[2]=50;
fun(a1,b1);
}
调试过了,没有错误.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
解二元一次方程组的解法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询