#7776: 何為第五個數會 不對


jonas7441 (ghost7441)


以上是我的程式碼:
 1.但為何 我打 2 4 6 8 時,第5個數是8  ,不是10
2. 為何用 else if 才一行一行跑,一開始我是打 用兩個 if  ,但卻出現多次(這裡用說的不好說,可請大大執行一次就可知道)
 
 
 
#include<stdio.h>

main(){  
  int count,a1,a2,a3,a4,i;
   
    
   while(scanf("%d",&count)!=EOF)
   {
    
    for(i=0;i<count;i++)
     { scanf("%d%d%d%d",&a1,&a2,&a3,&a4);  
      if((a4-a3)==(a3-a2)&&(a3-a2)==(a2-a2))
       {
        int num_sum=a4-a3;
        printf("%d %d %d %d %d\n",a1,a2,a3,a4,a4+num_sum);
       }
      else if((a4%a3)==(a3%a2)==(a2%a1)==0)
       {
        int num_mod=a4/a3;
        printf("%d %d %d %d %d\n",a1,a2,a3,a4,a4*num_mod);                             
       }    
     }
    }    

return 0;
}
#7781: Re:何為第五個數會 不對


akira0331 (小迷糊)


以上是我的程式碼:
 1.但為何 我打 2 4 6 8 時,第5個數是8  ,不是10
2. 為何用 else if 才一行一行跑,一開始我是打 用兩個 if  ,但卻出現多次(這裡用說的不好說,可請大大執行一次就可知道)
 
 
 
#include

main(){  
  int count,a1,a2,a3,a4,i;
   
    
   while(scanf("%d",&count)!=EOF)
   {
    
    for(i=0;i
     { scanf("%d%d%d%d",&a1,&a2,&a3,&a4);  
      if((a4-a3)==(a3-a2)&&(a3-a2)==(a2-a2))
       {
        int num_sum=a4-a3;
        printf("%d %d %d %d %d\n",a1,a2,a3,a4,a4+num_sum);
       }
      else if((a4%a3)==(a3%a2)==(a2%a1)==0)
       {
        int num_mod=a4/a3;
        printf("%d %d %d %d %d\n",a1,a2,a3,a4,a4*num_mod);                             
       }    
     }
    }    

return 0;
}

紅字地方錯誤,等差那段進不去,程式會跑到下方等比的地方
 num_mod=a4/a3=1, 所以輸出第5個是8