Sharp PC1360 |
Dokumentation ansehen
Programmspeicher-Image laden
| 10 | "A" CLEAR :WAIT 0 |
| 20 | CLS :PRINT "Bruchaddition:":INPUT "Anzahl Brueche: ";M |
| 30 | IF M<>INT M OR M<2 OR M>10 BEEP 2:GOTO 20 |
| 40 | DIM Z(M),N(M),M(M),B$(0) |
| 50 | FOR I=1 TO M |
| 60 | CLS :PRINT I;" Bruch:" |
| 70 | INPUT B$(0):Z(I)=VAL B$(0):IF Z(I)<>INT Z(I) BEEP 2:GOTO 60 |
| 80 | IF LEN STR$ Z(I)=LEN B$(0) LET N(I)=1:GOTO 110 |
| 90 | N(I)=VAL RIGHT$ (B$(0),(LEN B$(0)-1-LEN STR$ Z(I))) |
| 100 | IF N(I)<>INT N(I) BEEP 2:GOTO 60 |
| 110 | M(I)=N(I):NEXT I |
| 120 | CLS :FOR I=1 TO M |
| 130 | A=ABS Z(I):B=N(I) |
| 140 | GOSUB 390 |
| 150 | IF G=1 THEN 190 |
| 160 | C=Z(I):D=N(I) |
| 170 | GOSUB 420 |
| 180 | Z(I)=C:N(I)=D |
| 190 | NEXT I |
| 200 | FOR I=1 TO M-1 |
| 210 | A=M(I):B=M(I+1) |
| 220 | P=A*B |
| 230 | GOSUB 390 |
| 240 | K=P/G |
| 250 | M(I+1)=K:NEXT I |
| 260 | FOR I=1 TO M:E=K/N(I) |
| 270 | GOSUB 430 |
| 280 | NEXT I |
| 290 | Z=0:N=K |
| 300 | FOR I=1 TO M:Z=Z+Z(I):NEXT I |
| 310 | A=Z:B=N |
| 320 | GOSUB 390 |
| 330 | IF G=1 THEN 350 |
| 340 | C=Z:D=N |
| 350 | PRINT " = ";STR$ Z;"/";STR$ N |
| 360 | IF ABS Z/N=INT (ABS Z/N) PRINT " = ";STR$ (Z/N):END |
| 370 | IF ABS Z>N LET Q=INT (ABS Z/N):Z=(ABS Z-Q*N)*SGN Z:PRINT " = ";STR$ (SGN Z*Q);" ";STR$ ABS Z;"/";STR$ N |
| 380 | END |
| 390 | R=A-INT (A/B)*B |
| 400 | IF R=0 LET G=B:RETURN |
| 410 | A=B:B=R:GOTO 390 |
| 420 | C=C/G:D=D/G:RETURN |
| 430 | Z(I)=Z(I)*E:RETURN |
Dokumentation ansehen
Programmspeicher-Image laden
|
|
![]()
Falls diese Seite ohne Navigationsleiste angezeigt wird, aktivieren Sie Javascript oder klicken Sie hier!