Autor |
Beitrag |
Klaus
| Veröffentlicht am Mittwoch, den 14. März, 2001 - 15:43: |
|
Suche jemanden, der mir bei der Lösung eines C++ programmierten Gauss Algorithmus helfen kann. Es sollen für eine bestehendes Programm Testprobleme erzeugt werden, für die das Programm genau, ungenau bzw. gar nicht funktioniert. |
the_president@usa.gov
| Veröffentlicht am Donnerstag, den 15. März, 2001 - 02:00: |
|
der g.a. läuft dann nicht, wenn nullen in den diagonal-koeff.auftreten (lin.abhängigkeit) 10 PRINT "Lineare Gleichungssysteme":CLEAR 20 READ A$:N=N+1 30 IF A$="-"THEN 40 ELSE 20 40 N=SQR (N-3/4)-1.5 50 IF N>INT N THEN PRINT "Daten ueberpruefen":END 60 RESTORE :DIM A(N,N+1),B(N):FOR A=0 TO N 70 FOR B=0 TO N+1:READ A(A,B) 80 NEXT B:NEXT A 90 REM Addition der Gleichungen 100 FOR C=0TO N 110 FOR A=C TO N:FOR B=0TO N+1 120 A(C,B)=A(C,B)+A(A,B):NEXT B 130 NEXT A:NEXT C 140 FOR A=0 TO N-1: FOR C=A+1 TO N 150 FOR B=A+1 TO N+1 160 A(C,B)=A(C,B)-A(A,B)*A(C,A)/A(A,A) 170 NEXT B:NEXT C:NEXT A 180 DET=1:FOR A=0TO N:DET=DET*A(A,A):NEXT A 190 PRINT "Koeffizientendeterminante=";DET 200 B(N)=A(N,N+1)/A(N,N) 210 FOR A=N-1 TO 0 STEP -1 220 D=0:FOR B=N TO A+1 STEP -1 230 D=D+B(B)*A(A,B):PRINT B(B);A(A,B) :NEXT B 240 B(A)=(A(A,N+1)-D)/A(A,A) :NEXT A 250 FOR A=0TO N:PRINT "X";A;"=";B(A);:NEXT A 260 B=0:FOR A=0TO N:B=B+B(A)*A(0,A) 270 NEXT A:B=B-A(0,N+1):PRINT "Probe";B 280 DATA 1,3,1,-4, 290 DATA 3,1,-1,-4, 300 DATA 1,2,1,-3,5 310 DATA 3,-4,-3,3,-5,- |
|