🔒 Closed Baka po may makakatulong sa'kin. Python error out of bounds

Status
Not open for further replies.

PHC-Ubiquity

Eternal Poster
Error

line 21, in <module>
arr[j] = float(input('matrix[' + str(i) + '] [' + str(j) + ']='))

IndexError: index 1 is out of bounds for axis 0 with size 1



[CODE lang="python" title="Gaussian Elimintion using python" highlight=""21""]import sys
import numpy


n = int(input('Enter number of unknowns: '))


# Making numpy array of n x n+1 size and initializing
# to zero for storing augmented matrix

arr = numpy.zeros((n, n + 1))

# Making numpy array of n size and initializing
# to zero for storing solution vector
ans = numpy.zeros(n)

# Reading augmented matrix
print('Enter Augmented Matrix Coefficients:')
for i in range(n):
for j in range(n+1):
arr[j] = float(input('matrix[' + str(i) + '] [' + str(j) + ']='))

# print input matrix
print('INPUT MATRIX')
for i in range(n):
row = [ele for ele in arr]
print(row)

# Applying Gauss Elimination
for i in range(n):
if arr == 0.0:
sys.exit('Divide by zero detected!')

for j in range(i + 1, n):
ratio = arr[j] / arr
for k in range(n + 1):
arr[j][k] = arr[j][k] - ratio * arr[k]

# print final matrix
print('FINAL MATRIX')
for i in range(n):
row = [ele for ele in arr]
print(row)

# Back Substitution
ans[n - 1] = arr[n - 1][n] / arr[n - 1][n - 1]

for i in range(n - 2, -1, -1):
ans = arr[n]
for j in range(i + 1, n):
ans = ans - arr[j] * ans[j]
ans = ans / arr

# Displaying solution
print('\nRequired solution is: ')
for i in range(n):
print('X%d = %0.2f' % (i, ans))
[/CODE]
 
Status
Not open for further replies.

Similar threads

About this Thread

  • 0
    Replies
  • 450
    Views
  • 1
    Participants
Last reply from:
PHC-Ubiquity

Online now

Members online
456
Guests online
826
Total visitors
1,282

Forum statistics

Threads
2,275,103
Posts
28,960,649
Members
1,233,594
Latest member
baam
Back
Top