我有一個方程,想用不同的值對它的結果求和。我使用輸入一個數字Number = input(),方程式根據索引從輸入中獲取數字。想要的索引是從 i = 1 到 i = 4。等式是:Number[i] Number[i 1]*3 i
例如,如果我的輸入是Number = 879463,那么首先 for i = 1: Number[1] Number[2]*3 1,等于 8 7*3 1 = 30
然后 for i = 2: Number[2] Number[3]*3 2.. 以此類推,直到i = 4. 最后,對結果求和并存盤在total.
這是我的代碼:
Number = input()
total = 0
def equation(i,Number):
x = (Number[i] Number[i 1]*3 i)
return x
for i in range(len(Number)):
total = equation(i,Number)
print(total)
對于此代碼,我收到錯誤:
IndexError: string index out of range
我在這里的方向是否正確?
uj5u.com熱心網友回復:
# input is a string
number = input("Enter a number: ")
# Two lists to store values, results and list of numbers
list_of_numbers = []
total = []
# List to store string values to integers
for i in number:
list_of_numbers.append(int(i))
print(f'List = {list_of_numbers}')
# List to store values to total
for i in range(1, len(list_of_numbers)):
result_equation = list_of_numbers[i - 1] list_of_numbers[i] * 3 i
print(f'For i = {i}, {list_of_numbers[i - 1]} {list_of_numbers[i]}*3 {i} = {result_equation}')
total.append(result_equation)
# Sum values
print(f'Total = {sum(total)}')
# Observation: Most of this code can be erased as it is only used to print values on the screen.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/484904.html
上一篇:如何重用每個函式的條件檢查?
下一篇:為i=n創建動態資料框的問題
