Das Einzelschrittverfahren von Gauß und Seidel auf dem TI 92+
Programmablauf
Legende: |
Quellcode
()
Prgm
ClrIO
Disp "Einzelschrittverfahren"
Disp "von Gauß und Seidel"
Disp "","","",""
Disp "Autor: Marc Niggemann"
Disp "Version: 1,1 Dez 2002"
Pause
ClrIO
Local g,a,i,j
Input "Anzahl der Gleichungen?",g
newMat(g,g)»a
ClrIO
Disp "eingabe der a Matrix"
For i,1,g,1
For j,1,g,1
Disp a
Request "a"&string(i)&string(j),#("a"&string(i)&string(j))
expr(#("a"&string(i)&string(j)))»a[i,j]
DelVar #("a"&string(i)&string(j))
ClrIO
EndFor
EndFor
ClrIO
Disp a
Pause
Local b,h
newMat(g,1)»b
ClrIO
Disp "b Vektor"
For i,1,g,1
Disp b
Input h
h»b[i,1]
ClrIO
EndFor
Disp b
Pause
Local x
newMat(1,g)»x
ClrIO
Disp "Startvektor"
For i,1,g,1
Disp x
Input h
h»x[1,i]
ClrIO
EndFor
Disp x
Pause
¨-----teilung
Local k,l
0»l
For i,1,g,1
l+1»l ¨zaeler
a[i,l]»k
For j,1,g,1
a[i,j]/k»a[i,j]
EndFor
b[i,1]/k»b[i,1]
EndFor
ClrIO
Disp "alle akk=1",a
Pause
Disp "neuer b Vektor",b
Pause
¨-------die iteration
Local hil,z,s,it,itt
Input "anzahl der Iterationen",it
Disp "x0",x
For itt,1,it,1
0»hil
For z,1,g,1
For s,1,g,1
If zs Then
hil+x[1,s]*a[z,s]»hil
EndIf
EndFor
b[z,1]-hil»x[1,z]
0»hil
EndFor
Disp "x"&string(itt)
x*1.»x
Disp x
Pause
EndFor
EndPrgm