home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / 86xx / 8604.d64 / disk-optimizer (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  893b  |  38 lines

  1. 40 AP=200
  2. 50 DL=20
  3. 60 DIMB(AP),E(AP),Z(AP),GS(AP,DL)
  4. 80 GOSUB140
  5. 90 GOSUB210
  6. 100 GOSUB300
  7. 110 GOSUB350
  8. 120 GOTO90
  9. 140 PRINT"[147] DISK-OPTIMIZER:":PRINT" [197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]":INPUT" SUMME =";S
  10. 150 PRINT"BEI FEHLERN '0' EINGEBEN.":PRINT"ENDE: '999'":PRINT
  11. 160 AZ=AZ+1:PRINT" ZAHL"AZ;:INPUTB(AZ)
  12. 170 IFB(AZ)=0THENAZ=AZ-2:PRINT"[145][145]";:GOTO160
  13. 180 IFB(AZ)<>999GOTO160
  14. 190 AZ=AZ-1
  15. 200 PRINT"[147]SUMME   :"S:PRINT"ZAHLEN  :";AZ:RETURN
  16. 210 V=V+1:PRINT"VERSUCH :"V
  17. 220 GETB$:IFB$="S"THENRUN
  18. 230 FORI=1TOT:B(Z(I))=E(I):NEXT:T=0:BS=0
  19. 240 Z%=RND(1)*AZ+1:IFB(Z%)=0GOTO240
  20. 250 BS=BS+B(Z%):T=T+1:E(T)=B(Z%):B(Z%)=0:Z(T)=Z%
  21. 260 IFBS>SGOTO210
  22. 270 IFBS=STHENRETURN
  23. 280 IFT=AZTHENPRINT"SUMME ALLER ZAHLEN IST KLEINER ALS";S:END
  24. 290 GOTO240
  25. 300 G=T-1:FORX=GTO1STEP-1
  26. 310 F=0:FORY=1TOG:IFE(Y)<=E(Y+1)GOTO330
  27. 320 F=Y:M=E(Y):E(Y)=E(Y+1):E(Y+1)=M
  28. 330 NEXTY:G=F:IFF=0THENRETURN
  29. 340 NEXTX:RETURN
  30. 350 FORA=1TOGS:FORB=1TOT
  31. 360 IFGS(A,B)<>E(B)THENB=T:NEXTB,A:GOTO380
  32. 370 NEXTB:RETURN
  33. 380 PRINTCHR$(19):GS=GS+1:FORI=1TORZ+3:PRINT:NEXT
  34. 390 FORI=1TOT:GS(GS,I)=E(I):PRINTE(I);:NEXT
  35. 400 RZ=RZ+1:IFRZ<20THENRETURN
  36. 410 GETA$:IFA$=""GOTO410
  37. 420 RZ=0:GOTO200
  38.