a005: Eva 的回家作业
这篇教学会示范 ZeroJudge 基础题库“a005: Eva 的回家作业”的解题过程。
题目需求
Eva 的家庭作业里有很多数列填空练习,填空练习的要求是:“已知数列的前四项,填出第五项”,而数列可能是等差或等比数列。
题目链接:a005: Eva 的回家作业
解答
首先使用了串列生成式,将输入的“文字串列”转换成“数字串列”,才能够进行数学计算,透过前后两组数字的计算,就能得到这个数列是等差数列还是等比数列,也就能计算出第五个数字的数值,此外,运算过程中也使用了 continue 来中止 for 循环。
a = int(input()) # 將輸入的文字轉成數字
for i in range(a): # 有幾組就重複幾次
n = input() # 每次輸入的數列
b = [int(j) for j in n.split(' ')] # 將輸入的數列從文字轉換成數字
if (b[1]-b[0]) == (b[3]-b[2]): # 判斷如果是等差數列
print(n, end=' ')
print(int(b[3]+b[3]-b[2])) # 讓輸出的結果為:原本輸入的數列加上運算的結果
continue # 跳出迴圈重來一次
if (b[1]/b[0]) == (b[3]/b[2]): # 判斷如果是等比數列
print(n, end=' ')
print(int(b[3]*(b[3]/b[2]))) # 讓輸出的結果為:原本輸入的數列加上運算的結果
continue # 跳出迴圈重來一次
微信扫码关注
抖音扫码关注