我想請問一下
請問這裡有什麼不同
#include<iostream>
using namespace std;
int main ()
{
int a,b,c,d,e,t,i;
cin>>t;
for(i=1;i<=t;i+=1){
cin>>a>>b>>c>>d;
if (b-a==c-b && c-b==d-c){
e=2*d-c;
cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<"\n";
}
else if(b/a==c/b && c/b==d/c){
e=d*d/c;
cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<"\n";
}
}
system("pause");
return 0;
}
如果改成(b-a==c-b==d-c)
(b/a==c/b==d/c)
為什麼就錯誤了??
等差的部份為什麼會錯誤??
如果改成(b-a==c-b==d-c)
(b/a==c/b==d/c)
別跟數學表示式搞混!!這是很基礎的問題了喔
1<X<10這是數學表示式,C++不接受的
一定得寫成兩段敘述,在&&起來 => (X>1 && X<10)
你上面的兩段敘述也很討厭,
會有以下兩種讀法!!!
(b/a)==(c/b)==(d/c) 若 "/"優先於"=="
b/(a==c)/(b==d)/c 若"=="優先於"/" (PS:這是錯的)
請多加括號區別,不然你連錯在哪的也不知道,別忘記運算元的優先順序,不然就加個括號保險
但是你原來的程式碼就算加了括號也不會對,原因跟一開始講的事一樣
不要跟數學搞混!!
抱歉言詞犀利了些
如果改成(b-a==c-b==d-c)
(b/a==c/b==d/c)
別跟數學表示式搞混!!這是很基礎的問題了喔
1
一定得寫成兩段敘述,在&&起來 => (X>1 && X<10)
你上面的兩段敘述也很討厭,
會有以下兩種讀法!!!
(b/a)==(c/b)==(d/c) 若 "/"優先於"=="
b/(a==c)/(b==d)/c 若"=="優先於"/" (PS:這是錯的)
請多加括號區別,不然你連錯在哪的也不知道,別忘記運算元的優先順序,不然就加個括號保險
但是你原來的程式碼就算加了括號也不會對,原因跟一開始講的事一樣
不要跟數學搞混!!
抱歉言詞犀利了些
非常感謝,現在我了解了,謝謝!!
如果改成(b-a==c-b==d-c)
(b/a==c/b==d/c)
別跟數學表示式搞混!!這是很基礎的問題了喔
1
一定得寫成兩段敘述,在&&起來 => (X>1 && X<10)
你上面的兩段敘述也很討厭,
會有以下兩種讀法!!!
(b/a)==(c/b)==(d/c) 若 "/"優先於"=="
b/(a==c)/(b==d)/c 若"=="優先於"/" (PS:這是錯的)
請多加括號區別,不然你連錯在哪的也不知道,別忘記運算元的優先順序,不然就加個括號保險
但是你原來的程式碼就算加了括號也不會對,原因跟一開始講的事一樣
不要跟數學搞混!!
抱歉言詞犀利了些