2022年8月15日 星期一

Python a005: Eva 的回家作業

a005: Eva 的回家作業

'''

Eva的家庭作業裏有很多數列填空練習。

填空練習的要求是:已知數列的前四項,填出第五項。

因 為已經知道這些數列只可能是等差或等比數列,

她決定寫一個程式來完成這些練習。

第一行是數列的數目t(0 <= t <= 20)。

以下每行均包含四個整數,表示數列的前四項。

約定數列的前五項均為不大於105的自然數,

等比數列的比值也是自然數。


範例輸入 #1

2

1 2 3 4

1 2 4 8

範例輸出 #1

1 2 3 4 5

1 2 4 8 16

'''

t=int(input('輸入數列的數目t(0 <= t <= 20)--->'))

array=[]

for j in range(0, t):

    text_list = input().split(' ')      # 將輸入的文字使用空白拆分成串列

    array = [int(i) for i in text_list]  # 使用串列生成式,將文字串列轉換成數字串列

    if(array[2]- array[1]== array[1]- array[0]) :

        array.append(int(array[3]+ array[3]- array[2]))

        print(array)

    elif (array[2]/array[1]== array[1]/array[0]) :

        array.append(int(array[3]* (array[3]/ array[2])))

        print(array)

    else:

        print('錯誤輸入不是 等比數列或 等差數列')


'''

     if(array[3]- array[2]== array[2]- array[1]){

            array[4]= array[3]+ array[3]- array[2];

        }

        else{

            array[4]= array[3]* (array[3]/ array[2]);

        }

'''



>>> %Run a005.py

輸入數列的數目t(0 <= t <= 20)--->2

1 2 3 4

[1, 2, 3, 4, 5]

2 4 5 8

錯誤輸入不是 等比數列或 等差數列

>>> 

沒有留言:

張貼留言

2024_09 作業3 以Node-Red 為主

 2024_09 作業3  (以Node-Red 為主  Arduino 可能需要配合修改 ) Arduino 可能需要修改的部分 1)mqtt broker  2) 主題Topic (發行 接收) 3) WIFI ssid , password const char br...