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.
 
 
 
 
 
 

219 lines
9.1 KiB

  1. 10 PRINT "PROGRAM FILE 9: PRINTING NR1 AND NR2 NUMERIC CONSTANTS."
  2. 20 PRINT " ANS STANDARD 5.2, 5.4, 12.4"
  3. 30 PRINT
  4. 60 PRINT "SECTION 9.1: CONSTANTS IN NR1 FORM (INTEGERS)."
  5. 70 PRINT
  6. 80 PRINT "COLUMNS 1 AND 3 SHOW THE OUTPUT AS IT SHOULD BE."
  7. 100 PRINT "COLUMNS 2 AND 4 SHOW THE ACTUAL OUTPUT."
  8. 120 PRINT
  9. 130 PRINT " BEGIN TEST."
  10. 140 PRINT
  11. 150 PRINT "00000000011111111112222222222333333333344444444445";
  12. 160 PRINT "5555555556666666666777"
  13. 170 PRINT "12345678901234567890123456789012345678901234567890";
  14. 180 PRINT "1234567890123456789012"
  15. 190 PRINT "SHOULD BE","ACTUAL","SHOULD BE","ACTUAL"
  16. 200 PRINT " 0",+0," 0",-0
  17. 210 PRINT " 1",+1,"-1",-1
  18. 220 PRINT " 12",12,"-12",-12
  19. 230 PRINT " 123",+123,"-123",-123
  20. 240 PRINT " 1234",1234,"-1234",-1234
  21. 250 PRINT " 12345",+12345,"-12345",-12345
  22. 260 PRINT " 123456",123456,"-123456",-123456
  23. 270 PRINT " 999999",+999999,"-999999",-999999
  24. 280 PRINT
  25. 290 PRINT "*** TEST PASSED IF COLUMNS 1 & 2, AND 3 & 4 CONTAIN THE SAME"
  26. 300 PRINT " NUMERIC REPRESENTATION FOR EACH PAIR OF INTEGERS ***"
  27. 310 PRINT
  28. 320 PRINT " END TEST."
  29. 330 PRINT
  30. 340 PRINT "SECTION 9.2: NR1 CONSTANTS SEPARATED BY COMMAS TO PRODUCE"
  31. 350 PRINT " TABULAR OUTPUT."
  32. 360 PRINT
  33. 370 PRINT " BEGIN TEST."
  34. 380 PRINT
  35. 390 PRINT "00000000011111111112222222222333333333344444444445";
  36. 400 PRINT "5555555556666666666777"
  37. 410 PRINT "12345678901234567890123456789012345678901234567890";
  38. 420 PRINT "1234567890123456789012"
  39. 430 PRINT 1,-12,123
  40. 440 PRINT -1234,12345,-123456
  41. 450 PRINT 123456,-1234,123
  42. 460 PRINT
  43. 470 PRINT "*** TEST PASSED IF THE FIRST THREE PRINT ZONES EACH CONTAIN"
  44. 480 PRINT " A COLUMN OF INTEGERS ***"
  45. 490 PRINT
  46. 500 PRINT " END TEST."
  47. 510 PRINT
  48. 520 PRINT "SECTION 9.3: SPACE ALLOCATED FOR PRINTED INTEGER CONSTANTS."
  49. 530 PRINT
  50. 540 PRINT "PRINTED INTEGER CONSTANTS ARE PRECEDED BY A SPACE IF"
  51. 550 PRINT "POSITIVE, A MINUS IF NEGATIVE AND FOLLOWED BY A SPACE."
  52. 560 PRINT "THE SPACE FOR THE CONSTANT IS DELIMITED BY ASTERISKS."
  53. 570 PRINT
  54. 580 PRINT " BEGIN TEST."
  55. 590 PRINT
  56. 600 PRINT "00000000011111111112222222222333333333344444444445";
  57. 610 PRINT "5555555556666666666777"
  58. 620 PRINT "12345678901234567890123456789012345678901234567890";
  59. 630 PRINT "1234567890123456789012"
  60. 640 PRINT "SHOULD BE:","* 1 *","*-23 *","* 456 *"
  61. 650 PRINT " ACTUAL:","*";+1;"*","*";-23;"*","*";456;"*"
  62. 660 PRINT
  63. 670 PRINT "SHOULD BE:","* 7890 *","*-12345 *","* 678901 *"
  64. 690 PRINT " ACTUAL:","*";7890;"*","*";-12345;"*","*";+678901;"*"
  65. 710 PRINT
  66. 720 PRINT "*** TEST PASSED IF 'ACTUAL' LINES MATCH CORRESPONDING"
  67. 730 PRINT " 'SHOULD BE' LINES ***"
  68. 740 PRINT
  69. 750 PRINT " END TEST."
  70. 760 PRINT
  71. 770 PRINT "SECTION 9.4: NR1 CONSTANTS SEPARATED BY SEMICOLONS."
  72. 780 PRINT
  73. 790 PRINT "PRINTED INTEGER CONSTANTS ARE PRECEDED BY A SPACE IF"
  74. 800 PRINT "POSITIVE OR A MINUS IF NEGATIVE AND ARE FOLLOWED BY A SPACE."
  75. 810 PRINT "THE SEMICOLON SEPARATOR PRODUCES A NULL STRING."
  76. 820 PRINT
  77. 830 PRINT " BEGIN TEST."
  78. 840 PRINT
  79. 850 PRINT "00000000011111111112222222222333333333344444444445";
  80. 860 PRINT "5555555556666666666777"
  81. 870 PRINT "12345678901234567890123456789012345678901234567890";
  82. 880 PRINT "1234567890123456789012"
  83. 885 PRINT "SHOULD BE: 0 0 1 -12 123 -1234 12345 -123456"
  84. 890 PRINT " ACTUAL:";0;-0;1;-12;123;-1234;12345;-123456
  85. 900 PRINT
  86. 910 PRINT "*** TEST PASSED IF 'ACTUAL' LINE MATCHES CORRESPONDING"
  87. 920 PRINT " 'SHOULD BE' LINE ***"
  88. 930 PRINT
  89. 940 PRINT " END TEST."
  90. 950 PRINT
  91. 960 PRINT "SECTION 9.5: CONSTANTS IN NR2 FORM."
  92. 970 PRINT
  93. 980 PRINT "COLUMNS 1 AND 3 SHOW THE OUTPUT AS IT SHOULD BE."
  94. 995 PRINT "COLUMNS 2 AND 4 SHOW THE ACTUAL OUTPUT."
  95. 1001 PRINT
  96. 1002 PRINT "EXPECTED OUTPUT IS DISPLAYED WITH TRAILING ZEROS"
  97. 1003 PRINT "SUPPRESSED. IMPLEMENTATIONS MAY ADD TRAILING ZEROS UP TO"
  98. 1004 PRINT "THEIR SIGNIFICAND-WIDTH, D. THUS .12 MAY BE DISPLAYED AS"
  99. 1005 PRINT "'.1200' OR '.1200000' IF, FOR INSTANCE, D = 7."
  100. 1010 PRINT
  101. 1020 PRINT " BEGIN TEST."
  102. 1030 PRINT
  103. 1040 PRINT "00000000011111111112222222222333333333344444444445";
  104. 1050 PRINT "5555555556666666666777"
  105. 1060 PRINT "12345678901234567890123456789012345678901234567890";
  106. 1070 PRINT "1234567890123456789012"
  107. 1080 PRINT "SHOULD BE","ACTUAL","SHOULD BE","ACTUAL"
  108. 1100 PRINT " .1 ",.1,"-.1 ",-.1
  109. 1110 PRINT " .12 ",+.12,"-.12 ",-.12
  110. 1120 PRINT " .123 ",.123,"-.123 ",-.123
  111. 1130 PRINT " .1234 ",+.1234,"-.1234 ",-.1234
  112. 1140 PRINT " .12345 ",.12345,"-.12345 ",-.12345
  113. 1150 PRINT " .123456 ",+.123456,"-.123456 ",-.123456
  114. 1160 PRINT " .234567 ",.234567,"-.234567 ",-.234567
  115. 1170 PRINT " .345678 ",+.345678,"-.345678 ",-.345678
  116. 1180 PRINT " .456789 ",.456789,"-.456789 ",-.456789
  117. 1190 PRINT " .56789 ",+.567890,"-.56789 ",-.567890
  118. 1200 PRINT " .6789 ",.678900,"-.6789 ",-.678900
  119. 1210 PRINT " .789 ",+.789000,"-.789 ",-.789000
  120. 1220 PRINT " .89 ",.890000,"-.89 ",-.890000
  121. 1230 PRINT " .9 ",+.900000,"-.9 ",-.900000
  122. 1240 PRINT " 0 ",0.0," 0 ",-0.0
  123. 1250 PRINT " 1.23456 ",1.23456,"-1.23456",-1.23456
  124. 1260 PRINT " 9.876 ",+9.87600,"-9.876 ",-9.87600
  125. 1270 PRINT " 12.3456 ",12.3456,"-12.3456 ",-12.3456
  126. 1280 PRINT " 123.456 ",+123.456,"-123.456 ",-123.456
  127. 1290 PRINT " 1234.56 ",1234.56,"-1234.56 ",-1234.56
  128. 1300 PRINT " 12345.6 ",+12345.6,"-12345.6 ",-12345.6
  129. 1310 PRINT " 23456.7 ",23456.7,"-23456.7 ",-23456.7
  130. 1320 PRINT " 34567.8 ",+34567.8,"-34567.8 ",-34567.8
  131. 1330 PRINT " 45678.9 ",45678.9,"-45678.9 ",-45678.9
  132. 1340 PRINT " 56789.1 ",+56789.1,"-56789.1 ",-56789.1
  133. 1350 PRINT " 67891.2 ",67891.2,"-67891.2 ",-67891.2
  134. 1360 PRINT " 78912.3 ",+78912.3,"-78912.3 ",-78912.3
  135. 1370 PRINT " 89123.4 ",89123.4,"-89123.4 ",-89123.4
  136. 1380 PRINT " 91234.5 ",+91234.5,"-91234.5 ",-91234.5
  137. 1390 PRINT " 99999.9 ",99999.9,"-99999.9 ",-99999.9
  138. 1400 PRINT
  139. 1410 PRINT "*** TEST PASSED IF COLUMNS 1 & 2, AND 3 & 4 CONTAIN THE "
  140. 1420 PRINT " SAME REPRESENTATION FOR EACH PAIR OF NUMBERS "
  141. 1425 PRINT " (ALLOWING FOR OPTIONAL TRAILING ZEROS) ***"
  142. 1430 PRINT
  143. 1433 PRINT " END TEST."
  144. 1436 PRINT
  145. 1440 PRINT "SECTION 9.6: USING NR2 INSTEAD OF NR3 FORMAT FOR"
  146. 1450 PRINT " SIX-DIGIT CONSTANTS."
  147. 1460 PRINT
  148. 1490 PRINT "NUMBERS THAT CAN BE REPRESENTED IN THE UNSCALED"
  149. 1500 PRINT "REPRESENTATION NO LESS ACCURATELY THAN AS IN"
  150. 1510 PRINT "SCALED FORMAT, SHALL BE OUTPUT USING THE UNSCALED FORMAT."
  151. 1520 PRINT
  152. 1523 PRINT " BEGIN TEST."
  153. 1526 PRINT
  154. 1540 PRINT "SHOULD BE","ACTUAL","SHOULD BE","ACTUAL"
  155. 1550 PRINT
  156. 1560 PRINT " .022222 ",+.022222,"-.022222 ",-.022222
  157. 1570 PRINT " .004444 ",.004444,"-.004444 ",-.004444
  158. 1580 PRINT " .000888 ",+.000888,"-.000888 ",-.000888
  159. 1590 PRINT " .000044 ",.000044,"-.000044 ",-.000044
  160. 1600 PRINT " .000002 ",.000002,"-.000002 ",-.000002
  161. 1610 PRINT
  162. 1620 PRINT "*** TEST PASSED IF COLUMNS 1 & 2, AND 3 & 4 CONTAIN THE "
  163. 1630 PRINT " SAME REPRESENTATION FOR EACH PAIR OF NUMBERS "
  164. 1635 PRINT " (ALLOWING FOR OPTIONAL TRAILING ZEROS) ***"
  165. 1640 PRINT
  166. 1650 PRINT " END TEST."
  167. 1660 PRINT
  168. 1670 PRINT "SECTION 9.7: NR2 CONSTANTS SEPARATED BY COMMAS TO PRODUCE"
  169. 1680 PRINT " TABULAR OUTPUT."
  170. 1690 PRINT
  171. 1700 PRINT " BEGIN TEST."
  172. 1710 PRINT
  173. 1720 PRINT "00000000011111111112222222222333333333344444444445";
  174. 1730 PRINT "5555555556666666666777"
  175. 1740 PRINT "12345678901234567890123456789012345678901234567890";
  176. 1750 PRINT "1234567890123456789012"
  177. 1760 PRINT .123456,-99999.9,91234.5
  178. 1770 PRINT -1.23456,89123.4,-2.34567
  179. 1780 PRINT +295.64,.023,-67.8954
  180. 1790 PRINT
  181. 1800 PRINT "*** TEST PASSED IF THE FIRST THREE PRINT ZONES EACH CONTAIN"
  182. 1810 PRINT " A COLUMN OF REAL NUMBERS USING EXPLICIT POINT,"
  183. 1820 PRINT " UNSCALED REPRESENTATION ***"
  184. 1825 PRINT
  185. 1830 PRINT " END TEST."
  186. 1840 PRINT
  187. 1850 PRINT "SECTION 9.8: SPACE ALLOTMENT FOR PRINTED NR2 NUMBERS."
  188. 1860 PRINT
  189. 1870 PRINT "PRINTED NR2 CONSTANTS ARE PRECEDED BY A SPACE IF POSITIVE"
  190. 1880 PRINT "OR BY A MINUS IF NEGATIVE, AND ARE FOLLOWED BY A SPACE."
  191. 1890 PRINT "THE FIELDS FOR THE CONSTANTS ARE DELIMITED BY ASTERISKS."
  192. 1900 PRINT
  193. 1910 PRINT " BEGIN TEST."
  194. 1920 PRINT
  195. 1930 PRINT "00000000011111111112222222222333333333344444444445";
  196. 1940 PRINT "5555555556666666666777"
  197. 1950 PRINT "12345678901234567890123456789012345678901234567890";
  198. 1960 PRINT "1234567890123456789012"
  199. 1970 PRINT "*";90000.1;"*","*";.000123;"*","*";.000009;"*"
  200. 1980 PRINT "*";+900.001;"*","*";+0.000123;"*","*";+0.000009;"*"
  201. 1990 PRINT "*";-0.900001;"*","*";-0.000123;"*","*";-0.000009;"*"
  202. 2000 PRINT
  203. 2010 PRINT "*";.234567;"*","*";1.23456;"*","*";91.2345;"*"
  204. 2020 PRINT "*";+0.234567;"*","*";+1.23456;"*","*";91.2345;"*"
  205. 2030 PRINT "*";-0.234567;"*","*";-1.23456;"*","*";-91.2345;"*"
  206. 2040 PRINT
  207. 2050 PRINT "*";865.789;"*","*";1234.56;"*","*";99999.9;"*"
  208. 2060 PRINT "*";+865.789;"*","*";+1234.56;"*","*";+99999.9;"*"
  209. 2070 PRINT "*";-865.789;"*","*";-1234.56;"*","*";-99999.9;"*"
  210. 2080 PRINT
  211. 2090 PRINT "*** TEST PASSED IF EACH NUMBER IS PRECEDED BY A SPACE OR"
  212. 2100 PRINT " A MINUS SIGN, AND FOLLOWED BY A SPACE AND THE NUMBERS"
  213. 2110 PRINT " USE EXPLICIT POINT, UNSCALED REPRESENTATION ***"
  214. 2120 PRINT
  215. 2130 PRINT " END TEST."
  216. 2335 PRINT
  217. 2340 PRINT "END PROGRAM 9"
  218. 2350 END