ChipMaster's bwBASIC This also includes history going back to v2.10. *WARN* some binary files might have been corrupted by CRLF.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

62 lines
1.5 KiB

  1. 10 PRINT "PROGRAM FILE 45: ALTERING THE CONTROL-VARIABLE WITHIN"
  2. 20 PRINT " A FOR-BLOCK."
  3. 30 PRINT " ANSI STANDARD 11.2, 11.4"
  4. 40 PRINT
  5. 50 PRINT "SECTION 45.1: ALTERING THE CONTROL-VARIABLE WITHIN"
  6. 60 PRINT " A FOR-BLOCK."
  7. 70 PRINT
  8. 80 PRINT "THIS SECTION TESTS THAT THE VALUE OF THE CONTROL-VARIABLE"
  9. 90 PRINT "MAY BE ALTERED BY STATEMENTS WITHIN THE FOR-BLOCK, AS"
  10. 100 PRINT "WELL AS UNDER THE DIRECT CONTROL OF THE FOR-STATEMENT."
  11. 110 PRINT
  12. 120 PRINT " BEGIN TEST."
  13. 130 LET A1=3
  14. 140 LET B1=21
  15. 150 LET C1=3
  16. 160 LET T2=4
  17. 170 PRINT
  18. 180 PRINT "CONTROL VARIABLE:"
  19. 190 PRINT "SHOULD BE","ACTUAL","RESULT"
  20. 200 LET I2=A1
  21. 210 REM S1 IS ERROR SWITCH
  22. 220 LET S1=0
  23. 230 REM T1 IS LOOP COUNT
  24. 240 LET T1=0
  25. 250 FOR I1=A1 TO B1 STEP C1
  26. 260 LET T1=T1+1
  27. 270 LET M$=" OK "
  28. 280 IF I1=I2 THEN 310
  29. 290 LET M$="FAILED"
  30. 300 LET S1=1
  31. 310 PRINT I2,I1,M$
  32. 320 IF I2 <> 9 THEN 360
  33. 330 LET I1=17
  34. 340 LET I2=17
  35. 350 PRINT "CONTROL VARIABLE ALTERED."
  36. 360 REM RE-JOIN PATHS
  37. 370 LET I2=I2+C1
  38. 380 NEXT I1
  39. 390 PRINT "LOOP EXITED"
  40. 400 LET M$=" OK "
  41. 410 IF I1=I2 THEN 440
  42. 420 LET M$="FAILED"
  43. 430 LET S1=1
  44. 440 PRINT I2,I1,M$
  45. 450 LET M$=" OK "
  46. 460 IF T1=T2 THEN 490
  47. 470 LET M$="FAILED"
  48. 480 LET S1=1
  49. 490 PRINT
  50. 500 PRINT "NO. TIMES THROUGH LOOP:"
  51. 510 PRINT "SHOULD BE: ";T2;" ACTUAL: ";T1;" RESULT: ";M$
  52. 520 PRINT
  53. 530 IF S1=0 THEN 560
  54. 540 PRINT "*** TEST FAILED ***"
  55. 550 GOTO 570
  56. 560 PRINT "*** TEST PASSED ***"
  57. 570 PRINT
  58. 580 PRINT " END TEST."
  59. 590 PRINT
  60. 600 PRINT "END PROGRAM 45"
  61. 610 END