[英]User Input matrix(n*n+1) in python
這段代碼輸出 a[i][j] 以 a[0,0] 開頭,但我希望它以 a[1,1] 開頭,我該怎么辦?
import numpy as np
n = int(input("How many variable you find "))
a = np.zeros((n,n+1))
print('Enter Augmented Matrix:')
for i in range(n):
for j in range(n+1):
a[i][j] = float(input( f'a[{i},{j}]= '))
print(a)
使用range(n)
從0
開始包括在內,並排除n
,在數學中這是[0;n[
,從1
開始做range(1, n)
給你
for i in range(1, n):
for j in range(1, n + 1):
如果你在第一個問題中輸入4
,然后填寫你會得到的:
[[0. 0. 0. 0. 0.]
[0. 1. 1. 1. 1.]
[0. 1. 1. 1. 1.]
[0. 1. 1. 1. 1.]]
如果您使用以下內容,它會走得很遠,因為數組的索引為0-base
,因此如果您說數組的長度為 5,則框索引為0,1,2,3,4
for i in range(1, n + 1):
for j in range(1, n + 2):
如果您想填充所有值,但只是更改為用戶打印的內容,請執行
for i in range(n):
for j in range(n + 1):
a[i][j] = float(input(f'a[{i + 1},{j + 1}]= ')) # +1 there
改變這個:
for i in range(n):
for j in range(n+1):
a[i][j] = float(input( f'a[{i},{j}]= '))
對此:
for i in range(1,n):
for j in range(1,n+1):
a[i][j] = float(input( f'a[{i},{j}]= '))
同樣你可以試試
for i in range(n-1):
for j in range(n):
a[i+1][j+1] = float(input( f'a[{i},{j}]= '))
請問為什么要以a[1][1]開頭?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.