內容 :
Eva的家庭作業裏有很多數列填空練習。填空練習的要求是:已知數列的前四項,填出第五項。因為已經知道這些數列只可能是等差或等比數列,她決定寫一個程式來完成這些練習。
輸入說明 :
第一行是數列的數目t(0 <= t
<= 20)。 以下每行均包含四個整數,表示數列的前四項。 約定數列的前五項均為不大於105的自然數,等比數列的比值也是自然數。
輸出說明 :
對輸入的每個數列,輸出它的前五項。
範例輸入 :
2
1 2 3 4
1 2 4 8
範例輸出 :
1 2 3 4 5
1 2 4 8 16
提示 :
背景知識: 迴圈
出處 :
POJ
解題:
import java.util.Scanner;
public class a005
{
public
static void main(String[] args)
{
Scanner
scan = new Scanner(System.in);
int
round = scan.nextInt();
int[]
tmp=new int[4];
int
mod=0;
int
multi=0;
int
plus=0;
for(int
j=0;j<round;j++)
{
for(int
i=0;i<4;i++)
{
tmp[i]=scan.nextInt();
if(i==2)
{
if((tmp[2]-tmp[1])==(tmp[1]-tmp[0]))à判斷等差
{
mod=1;
plus=tmp[2]-tmp[1];
}
else
if(tmp[2]%tmp[1]==0)à判斷等比
{
mod=2;
multi=tmp[2]/tmp[1];
}
}
System.out.print(tmp[i]+"
");
}
if(mod==1)
{
System.out.println(tmp[3]+plus);
}
else
if(mod==2)
{
System.out.println(tmp[3]*multi);
}
}
}
}
如果您喜歡我的文章,請在文章最末按5下Like!
我將得到LikeCoin的回饋:)
回饋由LikeCoin基金會出資,您只要註冊/登入帳號(FB、Google帳號都可以註冊,流程超快),按L五次左鍵,可以贊助我的文章且完全不會花到錢!
支持創作,正向交流:)
沒有留言:
張貼留言