/*
已知數列的前四項,填出第五項。➔判斷第一項與第二項的關係,
再判斷第二項及第三項的關係,最後判斷第三項及第四向的關係
➔迴圈(☆解題關鍵)
已經知道這些數列只可能是等差或等比數列 ➔後項減前項
若保持一定值(公差)則為等差數列,不保持一定值則為等比數列
➔ 判斷後項除前項(公比)➔if/else(☆解題關鍵)
*/
var a1: Double =0.0
var a2: Double =0.0
var a3: Double =0.0
var a4: Double =0.0
var a5 : Double =0.0
fun main(args: Array<String>) {
val (a11,a12,a13,a14) = readLine()!!.split(' ')
a1=a11.toDouble()
a2=a12.toDouble()
a3=a13.toDouble()
a4=a14.toDouble()
if ( (a2-a1) == (a3-a2) && (a3-a2) == (a4-a3) )
{
a5 = (a4+(a4-a3))
print("a1 a2 a3 a4 a5 = $a1 $a2 $a3 $a4 $a5")
}
else if ( (a2/a1) == (a3/a2) && (a3/a2)== (a4/a3) )
{
a5= a1* Math.pow( (a4/a3),4.0)
print("a1 a2 a3 a4 a5 = $a1 $a2 $a3 $a4 $a5")
}
else
println("the a5 = NaN")
}
輸出畫面
1 2 4 8
a1 a2 a3 a4 a5 = 1.0 2.0 4.0 8.0 16.0
16 8 4 2
a1 a2 a3 a4 a5 = 16.0 8.0 4.0 2.0 1.0
1 2 3 4
a1 a2 a3 a4 a5 = 1.0 2.0 3.0 4.0 5.0
10 8 6 4
a1 a2 a3 a4 a5 = 10.0 8.0 6.0 4.0 2.0
1 3 5 9
the a5 = NaN
沒有留言:
張貼留言