#16560: WA (line:4) 我不知哪裡有錯?


amy2wook@gmail.com (Amy Chen)

學校 : 不指定學校
編號 : 88963
來源 : []
最後登入時間 :
2018-11-29 16:46:11
a005. Eva 的回家作業 -- POJ | From: [111.249.227.90] | 發表日期 : 2019-01-14 17:31


#include<stdio.h>

int main() {
  int num = 0 ;
  int a[5] ;
  int d = 0 ;

  scanf("%d",&num ) ;
  while( scanf("%d%d%d%d",&a[0],&a[1],&a[2],&a[3]) != EOF && num != 0 ) {
    if ( ( a[3] - a[2] ) == ( a[2] - a[1] ) == ( a[1] - a[0] ) ) {
      d = a[3] - a[2] ;
      a[4] = a[3] + d ;

      printf( "%d %d %d %d %d\n", a[0] , a[1] , a[2] , a[3] , a[4] ) ;

    } // if ()
    else {
      d = a[2] / a[1] ;
      a[4] = a[3] * d ;
      printf( "%d %d %d %d %d\n", a[0] , a[1] , a[2] , a[3] , a[4] ) ;
    } // else()

    num -- ;

  } // while()

  return 0;
} // main()

 

 
#16561: Re:WA (line:4) 我不知哪裡有錯?


inversion (「我們所認識的可符香是個像天使的好女孩」之葉林 *Cries...)

學校 : 國立清華大學
編號 : 43537
來源 : [49.159.6.107]
最後登入時間 :
2022-05-28 19:29:12
a005. Eva 的回家作業 -- POJ | From: [49.158.83.43] | 發表日期 : 2019-01-14 19:48

 ( a[3] - a[2] ) == ( a[2] - a[1] ) == ( a[1] - a[0] )

 

這個條件式的 ( a[3] - a[2] ) == ( a[2] - a[1] )  會先產生 true 或是 false 的布林值,這個布林值再去跟後面的 == ( a[1] - a[0] ) 結合。

 

因此條件式是在問 ( a[1] - a[0] ) 是否為 true (或是 false),跟原本您大概想表達的意思大相逕庭。

 

因此建議改成:(a[3] - a[2]) == (a[2] - a[1] ) && (a[2] - a[1])  == (a[1] - a[0])

 

以上。

 
#16566: Re:WA (line:4) 我不知哪裡有錯?


amy2wook@gmail.com (Amy Chen)

學校 : 不指定學校
編號 : 88963
來源 : []
最後登入時間 :
2018-11-29 16:46:11
a005. Eva 的回家作業 -- POJ | From: [111.249.221.86] | 發表日期 : 2019-01-15 13:31

 ( a[3] - a[2] ) == ( a[2] - a[1] ) == ( a[1] - a[0] )

 

這個條件式的 ( a[3] - a[2] ) == ( a[2] - a[1] )  會先產生 true 或是 false 的布林值,這個布林值再去跟後面的 == ( a[1] - a[0] ) 結合。

 

因此條件式是在問 ( a[1] - a[0] ) 是否為 true (或是 false),跟原本您大概想表達的意思大相逕庭。

 

因此建議改成:(a[3] - a[2]) == (a[2] - a[1] ) && (a[2] - a[1])  == (a[1] - a[0])

 

以上。

謝謝你~ 我成功了


也了解你說的意思

 
ZeroJudge Forum