求解!! ((如排版不好 說聲抱歉
#include <iostream>
#include <math.h>
#include <string.h>
using namespace std;
int main ()
{
int m;
cin>>m;
double n[4];
while(m>0){
for(int i=0;i<4;i++) cin>>n[i];
double d=n[1]-n[0],r=n[1]/n[0],flag1=0,flag2=0;
for(int i=2;i<4;i++){
if(d!=n[i]-n[i-1]) flag1=1;
}
for(int i=2;i<4;i++){
if(r!=n[i]/n[i-1]) flag2=1;
}
if(flag1==0) cout<<n[0]<<" "<<n[1]<<" "<<n[2]<<" "<<n[3]<<" "<<n[3]+d<<endl;
if(flag2==0) cout<<n[0]<<" "<<n[1]<<" "<<n[2]<<" "<<n[3]<<" "<<n[3]*r<<endl;
m--;
}
return 0;
}
求解!! ((如排版不好 說聲抱歉
#include
#include
#include
using namespace std;
int main ()
{
int m;
cin>>m;
double n[4];
while(m>0){
for(int i=0;i<4;i++) cin>>n[i];
double d=n[1]-n[0],r=n[1]/n[0],flag1=0,flag2=0;
for(int i=2;i<4;i++){
if(d!=n[i]-n[i-1]) flag1=1;
}
for(int i=2;i<4;i++){
if(r!=n[i]/n[i-1]) flag2=1;
}
if(flag1==0) cout<<n[0]<<" "<<n[1]<<" "<<n[2]<<" "<<n[3]<<" "<<n[3]+d<<endl;
if(flag2==0) cout<<n[0]<<" "<<n[1]<<" "<<n[2]<<" "<<n[3]<<" "<<n[3]*r<<endl;
m--;
}
return 0;
}
如果妳的測資是 1 1 1 1 的話 flag1 = 0 , flag2 = 0 會輸出兩次