#23071: 有大佬可以幫我嗎?


10831338@stu.tshs.tp.edu.tw (11231林謙和)


# include <iostream>

 

using namespace std; 

 

int main(void) 

{

int a, b, c, d, e, f;

cin >> f;

while(f--){ 

cin >> a >> b >> c >> d;

 

if (b-a == c-b){

e = d + (b-a);

cout << a << " " << b << " " << c << " " << d << " " << e <<endl;

if (b/a == c/b){

e = d*(b/a);

cout << a << " " << b << " " << c << " " << d << " " << e <<endl;

}

return 0;

我的答案:1 1 1 1 1

標準答案:2 4 6 8 10 

請問為甚麼?

#23073: Re:有大佬可以幫我嗎?


snakeneedy (蛇~Snake)


你的問題跟這位仁兄一樣,我直接引用我在另一則寫的

只看到當數列為四個相同數字時,如 1 1 1 1,你的程式會輸出兩次 1 1 1 1 1,讓下一行的測資結果判斷為錯誤

#23229: Re:有大佬可以幫我嗎?


10831338@stu.tshs.tp.edu.tw (11231林謙和)


你的問題跟這位仁兄一樣,我直接引用我在另一則寫的

只看到當數列為四個相同數字時,如 1 1 1 1,你的程式會輸出兩次 1 1 1 1 1,讓下一行的測資結果判斷為錯誤


那請問建議怎麼改或是可以加什麼?

#23233: Re:有大佬可以幫我嗎?


snakeneedy (蛇~Snake)


有學過 if ... else if ... else 嗎?兩個都寫 if 意味著前一個無論是否成立,下一個一定會再判斷一次,就會發生我前面提的「輸出兩次」的問題(要避免這個狀況)