a410

輸入說明 :

输入仅1行,包含6个整数,a,b,c,d,e,f。输入数据保证正确。

輸出說明 :

如果有解,那么第1行先输出“x=”,再输出x的值,第2行先输出“y=”,再输出y的值,均保留2位小数,请参照样例输出。   如果无解或有无数解则按要求输出“No answer”或“Too many”。

d拿來判斷是不是平行,也就是斜率一樣

假如斜率一樣的話,有可能重疊,或平行

#include<stdio.h>
int main()
{
    double a1,b1,c1,a2,b2,c2,d,dx,dy;
    scanf("%lf%lf%lf%lf%lf%lf",&a1,&b1,&c1,&a2,&b2,&c2);
    d=a1*b2-a2*b1;
    dx=c1*b2-c2*b1;
    dy=a1*c2-a2*c1;
    if(d!=0) printf("x=%.2lf\n y=%.2lf\n",dx/d,dy/d);
    else
    {
        if(dx*dx+dy*dy==0) 
          puts("Too many");
        else 
          puts("No answer");
    }
}