10:"STPV"
20:REM (c) JK-SOFT 9.01.86
25:PAUSE "*STERN-PUNKT-VERSCHIEBUNG*"
35:N=3:M=1
36:DIM A(N,N+1),B(N;N+1),R(N,N+1),J(N,N+1),E(N,N+1),W(N,N+1),T$(6)
37:DIM U1(6),F1(6)
38:T$(1)="U RS":T$(2)="U ST":T$(3)="U TR":T$(4)="U R":T$(5)="U S":T$(6)="U T"
40:PAUSE "Bezugsspannung:"
41:"STPX":WAIT 0:PRINT "Manuell (1)/ Auto (2) ":G$=INKEY$: IF G$="1"GOTO 44
42:IF G$="2"GOTO 50
43:GOTO "STPX"
44:FOR I=1 TO 6
45:CLS: WAIT 0: PRINT T$(I);" =";:CURSOR 8:INPUT U1(I): CURSOR 15: PRINT "<  ";:INPUT F1(I)
47:NEXT I: WAIT: CLS
49:GOTO 3000
50:"US1":CLS
60:B$="U ":WAIT 0
70:"123"A$=INKEY$: IF A$=""GOTO "US2"
75:BEEP 1,200,5
80:IF A$="R"OR A$="S"OR A$="T"LET B$=B$+A$
90:"US2"CURSOR 0:PRINT B$
100:IF ASC A$=13LET C$=B$:GOTO 120
110:GOTO "123"
120:IF C$="U RS"OR C$="U ST"OR C$="U TR"GOTO C$
130:IF C$="U R"OR C$="U S"OR C$="U T"GOTO C$
140:GOTO "US1"
200:"U RS":GOSUB 6300:GOTO 300
210:"U ST":GOSUB 6300:GOTO 400
220:"U TR":GOSUB 6300:GOTO 500
230:"U R":GOSUB 6300:GOTO 300
240:"U S":GOSUB 6300:GOTO 300
250:"U T":GOSUB 6300
300:WAIT :CLS
320:F1(1)=V:U1(1)=A
330:B1=-120+V:IF ABS B1>180LET B1=360+B1
340:B2=120+V:IF ABS B2>180LET B2=B2-360
350:C=V-30:C1=B1-30:C2=B2-30
360:U1(2)=A:F1(2)=B1
370:U1(3)=A:F1(3)=B2
386:U1(4)=A/SQR (3):F1(4)=C
388:U1(5)=A/SQR (3):F1(5)=C1
390:U1(6)=A/SQR (3):F1(6)=C2
392:GOTO 3000
400:WAIT :CLS
420:U1(2)=A:F1(2)=V
425:B1=V+120:IF ABS B1>180LET B1=B1-360
430:B2=V-120:IF ABS B2>180LET B2=360+B2
435:C=V-30:C1=B1-30:C2=B2-30
440:U1(1)=A:F1(1)=B1
450:U1(3)=A:F1(3)=B2
455:U1(4)=A/SQR (3):F1(4)=C1
460:U1(5)=A/SQR (3):F1(5)=C
465:U1(6)=A/SQR (3):F1(6)=C2
470:GOTO 3000
500:CLS :WAIT
510:U1(3)=A:F1(3)=V
515:B1=V-120:IF ABS B1>180LET B1=360+B1
520:B2=V+120:IF ABS B2>180LET B2=B2-360
525:C=V-30:C2=B2-30:C1=B1-30
530:U1(1)=A:F1(1)=B1
535:U1(2)=A:F1(2)=B2
540:U1(4)=A:F1(4)=C1
545:U1(5)=A:F1(5)=C2
550:U1(6)=A:F1(6)=C
3000:FOR I=1 TO 6
3004:PRINT T$(I);" =";U1(I);" V  <";F1(I)
3006:NEXT I
3010:"STP1"WAIT 0:PRINT "E K ? ":A$=INKEY$
3015:IF A$="E"LET ZA$="r =":ZB$="< ="
3020:IF A$="K"LET ZA$="RE=":ZB$="IM="
3025:IF A$<>"K"AND A$<>"E"GOTO "STP1"
3030:INPUT "MATRIX (1)/DIREKT (2) ?";M$:IF M$="1"GOTO 3050
3032:WAIT 0:PRINT "ZR :"+ZA$:CURSOR 8:INPUT A(1,1):CURSOR 15:PRINT ZB$:CURSOR 19:INPUT B(1,1)
3033:CLS :PRINT "ZS :"+ZA$:CURSOR 8:INPUT A(1,2):CURSOR 15:PRINT ZB$:CURSOR 19:INPUT B(1,2)
3034:A(2,2)=A(1,2):B(2,2)=B(1,2)
3035:CLS :PRINT "ZT :"+ZA$:CURSOR 8:INPUT A(2,3):CURSOR 15:PRINT ZB$:CURSOR 19:INPUT B(2,3)
3038:GOTO 3150
3050:PAUSE " I R    I S    I T    U"
3090:FOR K=1TO N-1
3100:FOR I=1TO N
3110:CLS :WAIT 0:PRINT "Z ("+STR$ K+","+STR$ I+")  ";ZA$:CURSOR 15:INPUT A(K,I)
3120:CLS :WAIT 0:PRINT "Z ("+STR$ K+","+STR$ I+")  ";ZB$:CURSOR 15:INPUT B(K,I)
3130:NEXT I
3140:NEXT K
3150:GOSUB 6200
3171:IF A(1,4)=0LET A(1,4)=U1(1):B(1,4)=F1(1)
3172:IF A(2,4)=0LET A(2,4)=U1(2):B(2,4)=F1(2)
3173:GOSUB 5000
3174:IF A$="E"GOSUB 5000
3175:IF A$="K"GOSUB 5100
3176:IF E(1,2)>0LET E(1,2)=E(1,2)*(-1)
3177:IF E(2,3)>0LET E(2,3)=E(2,3)*(-1)
3180:GOSUB 6200
3200:A1=E(1,1)*E(2,2)
3210:B1=W(1,1)+W(2,2)
3220:A2=E(1,2)*E(2,3)
3230:B2=W(1,2)+W(2,3)
3240:A3=E(1,1)*ABS E(2,3)
3250:B3=W(1,1)+W(2,3)
3260:E=A1:W=B1:GOSUB 6000
3280:R1=R:J1=J
3290:E=A2:W=B2:GOSUB 6000
3300:R1=R1+R
3310:J1=J1+J
3320:E=A3:W=B3:GOSUB 6000
3330:R=R1+R
3340:J=J1+J
3350:GOSUB 6100
3370:A(1,1)=E:B(1,1)=W
3380:GOSUB 6200
3400:A1=E(1,4)*E(2,2)
3420:B1=W(1,4)+W(2,2)
3430:A2=E(1,4)*ABS E(2,3)
3440:B2=W(1,4)+W(2,3)
3450:A3=E(2,4)*E(2,2)
3460:B3=W(2,4)+W(2,2)
3470:E=A1:W=B1:GOSUB 6000
3490:R1=R:J1=J
3500:E=A2:W=B2:GOSUB 6000
3510:R1=R1+R:J1=J1+J
3520:E=A3:W=B3:GOSUB 6000
3530:R=R1+R:J=J1+J
3550:GOSUB 6100
3560:A(1,2)=E:B(1,2)=W
3585:GOSUB 6200
3590:A1=E(2,4)*E(1,1)
3600:B1=W(2,4)+W(1,1)
3610:A2=E(1,4)*ABS E(2,3)
3620:B2=W(1,4)+W(2,3)
3630:E=A1:W=B1:GOSUB 6000
3640:R1=R:J1=J
3650:E=A2:W=B2:GOSUB 6000
3660:R=R1-R:J=J1-J
3680:GOSUB 6100
3690:A(1,3)=E:B(1,3)=W
3715:GOSUB 6200
3720:A1=E(2,4)*E(1,2)
3730:B1=W(2,4)+W(1,2)
3740:A2=E(1,4)*E(2,2)
3750:B2=W(1,4)+W(2,2)
3760:A3=E(2,4)*E(1,1)
3770:B3=W(2,4)+W(1,1)
3780:E=A1:W=B1:GOSUB 6000
3790:R1=R:J1=J
3800:E=A2:W=B2:GOSUB 6000
3810:R1=R1-R:J1=J1-J
3820:E=A3:W=B3:GOSUB 6000
3830:R=R1-R:J=J1-J
3850:GOSUB 6100
3860:A(1,4)=E:B(1,4)=W
3875:GOSUB 6200
3880:A(2,1)=A(1,2)/A(1,1)
3890:B(2,1)=B(1,2)-B(1,1)
3900:A(2,2)=A(1,3)/A(1,1)
3910:B(2,2)=B(1,3)-B(1,1)
3920:A(2,3)=A(1,4)/A(1,1)
3930:B(2,3)=B(1,4)-B(1,1)
3945:FOR I=1TO N
3950:E=A(2,I):W=B(2,I)
3960:GOSUB 6000
3970:A(3,I)=R:B(3,I)=J
3980:NEXT I
3995:BEEP 1,230,30
4000"TT"CLS :WAIT
4001:FOR I=0TO 3
4002:PRINT "D"+STR$ I+"=";A(1,I+1):PRINT "< ";B(1,I+1)
4003:NEXT I
4006:USING "##.###^"
4008:PRINT "IR=";A(2,1);" < ";B(2,1)
4010:PRINT "IS=";A(2,2);" < ";B(2,2)
4020:PRINT "IT=";A(2,3);" < ";B(2,3)
4030:PRINT "IR=";A(3,1);" J ";B(3,1)
4040:PRINT "IS=";A(3,2);" J ";B(3,2)
4050:PRINT "IT=";A(3,3);" J ";B(3,3)
4120:A(1,1)=E(1,1)*A(2,1)
4130:B(1,1)=W(1,1)+B(2,1)
4150:A(1,2)=E(2,2)*A(2,2)
4160:B(1,2)=W(2,2)+B(2,2)
4180:A(1,3)=ABS E(2,3)*A(2,3)
4190:B(1,3)=W(2,3)+B(2,3)
4205:PAUSE "U R^ KOMPL.SPANNUNG."
4206:PRINT "U R^ = Z R * I R"
4210:PRINT "UR^=";A(1,1);" <";B(1,1)
4220:PRINT "US^=";A(1,2);" <";B(1,2)
4230:PRINT "UT^=";A(1,3);" <";B(1,3)
4270:E=U1(4):W=F1(4)
4280:GOSUB 6000
4285:R1=R:J1=J
4290:E=A(1,1):W=B(1,1)
4300:GOSUB 6000
4310:R=R1-R:J=J1-J
4320:GOSUB 6100
4325:PRINT "Um = UR - UR^"
4330:PRINT "Um=";E;" <";W
4340:PRINT "Um=";R;" J";J
4990:END
5000:FOR K=1TO N
5020:FOR I=1TO N+1
5030:E=A(K,I):E(K,I)=E
5035:W=B(K,I):W(K,I)=W
5040:NEXT I:NEXT K
5042:FOR K=1TO N
5043:FOR I=1TO N+1
5044:E=E(K,I):W=W(K,I)
5045:GOSUB 6000
5046:R(K,I)=R:J(K,I)=J
5047:NEXT I:NEXT K
5050:RETURN
5100:FOR K=1TO N
5120:FOR I=1TO N
5130:R=A(K,I):R(K,I)=R
5140:J=B(K,I):J(K,I)=J
5150:NEXT I
5160:NEXT K
5180:FOR K=1TO N
5190:FOR I=1TO N
5200:R=R(K,I):J=J(K,I)
5210:GOSUB 6100
5280:E(K,I)=E:W(K,I)=W
5290:NEXT I
5300:NEXT K
5310:RETURN
6000:R=E*COS W:J=E*SIN W
6020:RETURN
6100:IF R=0LET R=1E-8
6120:E=SQR ((R*R)+(J*J))
6130:PK=J/R
6140:W=ATN (PK)
6150:IF R<0AND J>0LET W=180+W
6160:IF R<0AND J<0LET W=-180+W
6170:IF R<0AND J=0LET W=180
6180:RETURN
6200:CLS :CURSOR M:PRINT "<->":M=M+4:RETURN
6300:CLS :WAIT 0:PRINT C$;" =";:CURSOR 7:INPUT A:CURSOR 15:PRINT "<";:CURSOR 18:INPUT V:RETURN
