home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1985 February / 64er_Magazin_85-02_1985_Markt__Technik_de.d64 / benchmark-test (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  2KB  |  124 lines

  1. 10 input"wieviel werte";q1
  2. 20 dimff$(1000)
  3. 30 t1=ti
  4. 40 fori=1toq1
  5. 50 ff$(i)=chr$(int(rnd(0)*26+64))
  6. 60 next
  7. 70 t2=ti
  8. 80 gosub930
  9. 90 t3=ti
  10. 100 print:print
  11. 110 fori=1toq1
  12. 120 printff$(i);
  13. 130 next
  14. 140 t4=ti
  15. 150 gosub330
  16. 160 print:print
  17. 170 print"anzahl werte= "q1:print
  18. 180 print"einlesezeit=   "(t2-t1)/60
  19. 190 print"sortierzeit=   "(t3-t2)/60
  20. 200 print"anzeigezeit=   "(t4-t3)/60
  21. 210 print"gesamt zeit=   "(t4-t1)/60
  22. 215 print:print
  23. 220 print"bench1     =   "(b1-b0)/60
  24. 230 print"bench2     =   "(b2-b1)/60
  25. 240 print"bench3     =   "(b3-b2)/60
  26. 250 print"bench4     =   "(b4-b3)/60
  27. 260 print"bench5     =   "(b5-b4)/60
  28. 270 print"bench6     =   "(b6-b5)/60
  29. 280 print"bench7     =   "(b7-b6)/60
  30. 290 print"bench8     =   "(b8-b7)/60
  31. 300 print"gesamt zeit=   "(b8-t1)/60
  32. 310 iff=1thenprint:print:print:print:print#1:close1:end
  33. 320 open1,4:cmd1:f=1:goto170
  34. 330 rem----------------------------
  35. 340 rem    benchmarks
  36. 350 rem--------------------1-------
  37. 360 rem
  38. 370 b0=ti
  39. 380 fork=1to1000
  40. 390 nextk
  41. 400 b1=ti
  42. 410 rem--------------------2---------
  43. 420 k=0
  44. 430 k=k+1
  45. 440 ifk<1000then430
  46. 450 b2=ti
  47. 451 rem--------------------3---------
  48. 452 k=0
  49. 453 k=k+1
  50. 454 a=k/k*k+k-k
  51. 455 ifk<1000then453
  52. 456 b3=ti
  53. 460 rem--------------------4---------
  54. 470 k=0
  55. 480 k=k+1
  56. 490 a=k/2*3+4-5
  57. 500 ifk<1000 then480
  58. 510 b4=ti
  59. 520 rem--------------------5---------
  60. 530 k=0
  61. 540 k=k+1
  62. 550 a=k/2*3+4-5
  63. 560 gosub600
  64. 570 ifk<1000 then540
  65. 580 b5=ti
  66. 590 goto620
  67. 600 return
  68. 610 rem--------------------6---------
  69. 620 k=0
  70. 630 k=k+1
  71. 640 a=k/2*3+4-5
  72. 650 gosub710
  73. 660 forl=1to5
  74. 670 nextl
  75. 680 ifk<1000 then630
  76. 690 b6=ti
  77. 700 goto730
  78. 710 return
  79. 720 rem---------------------7--------
  80. 725 dim m(10)
  81. 730 k=0
  82. 740 k=k+1
  83. 750 a=k/2*3+4-5
  84. 760 gosub830
  85. 770 forl=1to5
  86. 780 m(l)=a
  87. 790 nextl
  88. 800 ifk<1000 then740
  89. 810 b7=ti
  90. 820 goto850
  91. 830 return
  92. 840 rem---------------------8--------
  93. 850 k=0
  94. 860 k=k+1
  95. 870 a=k^2
  96. 880 b=log(k)
  97. 890 c=sin(k)
  98. 900 if k<1000 then860
  99. 910 b8=ti
  100. 920 return
  101. 930 rem -----------------------------
  102. 940 rem -        up sortieren       -
  103. 950 rem -----------------------------
  104. 960 rem -   q1    = anzahl elemente -
  105. 970 rem -   ff$() = sortierfeld     -
  106. 980 rem -----------------------------
  107. 990 :
  108. 1000 rem jj,ll = laufvariable
  109. 1010 rem q2$   = zwischenspeicher
  110. 1020 :
  111. 1030 rem sortiert das feld ff$ mit
  112. 1040 rem q1 elementen in alphabe -
  113. 1050 rem tischer folge
  114. 1060 :
  115. 1070 forjj=1toq1-1
  116. 1080 forll=jj+1toq1
  117. 1090 ifff$(jj)<=ff$(ll)then1130
  118. 1100 q2$=ff$(jj)
  119. 1110 ff$(jj)=ff$(ll)
  120. 1120 ff$(ll)=q2$
  121. 1130 nextll
  122. 1140 nextjj
  123. 1150 return
  124.