#include<iostream>
using namespace std;
int main(){
int time;
cin>>time;
int n[5]={0};
for(int t=time;t>0;t--){
for(int i=0;i<4;i++){
cin>>n[i];
}
if((n[1]-n[0])==(n[3]-n[2])==(n[2]-n[1])){
n[4]=n[3]+n[2]-n[1];
}
else{
n[4]=n[3]*(n[3]/n[2]);
}
for(int i=0;i<5;i++){
cout<<n[i]<<" ";
}
cout<<endl;
}
return 0;
}
input:1 3 5 7
output:1 3 5 7 7
請問哪裡寫錯了?
#include
using namespace std;
int main(){
int time;
cin>>time;
int n[5]={0};
for(int t=time;t>0;t--){
for(int i=0;i<4;i++){
cin>>n[i];
}
if((n[1]-n[0])==(n[3]-n[2])==(n[2]-n[1])){
n[4]=n[3]+n[2]-n[1];
}
else{
n[4]=n[3]*(n[3]/n[2]);
}
for(int i=0;i<5;i++){
cout<<n[i]<<" ";
}
cout<<endl;
}
return 0;
}
input:1 3 5 7
output:1 3 5 7 7
請問哪裡寫錯了?
C中沒有連續等於的用法啦
if((n[1]-n[0])==(n[3]-n[2])==(n[2]-n[1]))
改成
if((n[1]-n[0])==(n[3]-n[2])&&(n[3]-n[2])==(n[2]-n[1]))
應該就AC拉
p.s.還有其實不用那麼多大括號,如果if、while、for這類的東西後面的大括號裡只塞一個分號的話,可以把括弧去掉