#3165: 反矩陣


shinchun (shinchun)

學校 : 國立成功大學
編號 : 10424
來源 : [140.116.245.6]
最後登入時間 :
2010-10-13 12:00:41
d623. 反方陣 -- leopan0922 | From: [163.28.112.101] | 發表日期 : 2010-01-02 00:08

抱歉 我在一般討論有發文  

後來發現發錯地方了  ||||Orz

===============================

您的輸出超過測資的輸出!!(line:1601)

您額外輸出了: -0.00162 0.00485 可能的原因為 

* 累贅的輸出,請勿輸出題目未要求的文字
 
我看不出來為何會OLE       ||Orz 
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{   
    float a,b,c,d;
 
    while( scanf("%f%f%f%f",&a,&b,&c,&d) != EOF){
        if(!a && !b && !c && !d)     //全部都0就離開
            break;
        else if( !(a*b-c*d ) )          //det(A) ==0 代表不可逆
            printf("cheat!\n");
        else{
            float temp=a*d-b*c;
            printf("%.5f %.5f\n%.5f %.5f\n",d/temp,-b/temp,-c/temp,a/temp);  //方陣裡面 對角交換 其他乘負號 
        }                                                                                                    //然後每一項除det(A)
    }
    return 0;

} 

 
#3176: Re:反矩陣


leopan0922 (zz)

學校 : 臺北市立成功高級中學
編號 : 6612
來源 : [140.113.225.106]
最後登入時間 :
2016-08-15 15:44:07
d623. 反方陣 -- leopan0922 | From: [219.70.174.13] | 發表日期 : 2010-01-02 16:27

抱歉 我在一般討論有發文  

後來發現發錯地方了  ||||Orz

===============================

您的輸出超過測資的輸出!!(line:1601)

您額外輸出了: -0.00162 0.00485 可能的原因為 

* 累贅的輸出,請勿輸出題目未要求的文字
我看不出來為何會OLE       ||Orz 
#include
#include
int main(int argc, char *argv[])
{   
    float a,b,c,d;
    while( scanf("%f%f%f%f",&a,&b,&c,&d) != EOF){
        if(!a && !b && !c && !d)     //全部都0就離開
            break;
        else if( !(a*b-c*d ) )          //det(A) ==0 代表不可逆<<你確定你寫的是det嗎?
            printf("cheat!\n");
        else{
            float temp=a*d-b*c;
            printf("%.5f %.5f\n%.5f %.5f\n",d/temp,-b/temp,-c/temp,a/temp);  //方陣裡面 對角交換 其他乘負號 
        }                                                                                                    //然後每一項除det(A)
    }
    return 0;

} 


 
#3189: Re:反矩陣


shinchun (shinchun)

學校 : 國立成功大學
編號 : 10424
來源 : [140.116.245.6]
最後登入時間 :
2010-10-13 12:00:41
d623. 反方陣 -- leopan0922 | From: [163.28.112.101] | 發表日期 : 2010-01-03 12:29

抱歉 我在一般討論有發文  

後來發現發錯地方了  ||||Orz

===============================

您的輸出超過測資的輸出!!(line:1601)

您額外輸出了: -0.00162 0.00485 可能的原因為 

* 累贅的輸出,請勿輸出題目未要求的文字
我看不出來為何會OLE       ||Orz 
#include
#include
int main(int argc, char *argv[])
{   
    float a,b,c,d;
    while( scanf("%f%f%f%f",&a,&b,&c,&d) != EOF){
        if(!a && !b && !c && !d)     //全部都0就離開
            break;
        else if( !(a*b-c*d ) )          //det(A) ==0 代表不可逆<<你確定你寫的是det嗎?
            printf("cheat!\n");
        else{
            float temp=a*d-b*c;
            printf("%.5f %.5f\n%.5f %.5f\n",d/temp,-b/temp,-c/temp,a/temp);  //方陣裡面 對角交換 其他乘負號 
        }                                                                                                    //然後每一項除det(A)
    }
    return 0;

} 


while( scanf("%f%f%f%f",&a,&b,&c,&d) != EOF)  改成

while( scanf("%f%f%f%f",&a,&b,&c,&d) ==4)   就可以了 = =+

 
#8582: Re:反矩陣


Edgarwu860313 (追隨興國哥)

學校 : 臺南市私立興國高級中學
編號 : 12191
來源 : [219.70.122.78]
最後登入時間 :
2017-12-30 22:52:20
d623. 反方陣 -- leopan0922 | From: [36.237.222.204] | 發表日期 : 2014-01-26 22:55


while( scanf("%f%f%f%f",&a,&b,&c,&d) != EOF)  改成

while( scanf("%f%f%f%f",&a,&b,&c,&d) ==4)   就可以了 = =+


為甚麼!=EOF不行啊??
 
ZeroJudge Forum