2011-02-06 15 views
2

を取得してください:http://www.codechef.com/problems/HS08TEST/CodeChef#3、簡単には、これは私が働いている問題であり、間違った答え

そして、これは私のソリューションです:

#include <stdio.h> 

int main (void) { 
     int withdraw_i; 
     float balance_i; 

     scanf("%d %f", &withdraw_i, &balance_i); 

     if(withdraw_i % 5 == 0) { 
       if(withdraw_i <= balance_i) { 
         float result = balance_i - withdraw_i - 0.5; 
         printf("%.2f", result); 
       } 
       else { 
         printf("%.2f", balance_i); 
       } 
     } 
     else { 
       printf("%.2f", balance_i); 
     } 
     return 0; 
} 

(Cで)それはのために完璧に動作します私はそれを提出すると、私はまだ "間違った答え"、何が起こっているエラーを取得し続けている?

+1

お金のために浮動小数点数を使用しないでくださいする必要があります! – Svante

答えて

1

このテストの条件を正しく実装していないためです。ケース「300 300」を試してください。

1

それは

if(withdraw_i+0.5 <= balance_i) 
+0

ありがとうたくさん:) –

+2

スプーンフィーダー... – etarion

+0

私は3時間働いて、私はこのバグを見つけることができませんでした! –

関連する問題