tset5.pp 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339
  1. { %opt=-Ooregvar }
  2. {$ifdef fpc}
  3. {$packset 1}
  4. {$endif fpc}
  5. {$z1}
  6. type
  7. ta = set of 0..7;
  8. tb = set of 0..15;
  9. tc = set of 0..23;
  10. td = set of 0..31;
  11. te = set of 0..127;
  12. var
  13. ve: te;
  14. vd: td;
  15. vc: tc;
  16. vb: tb;
  17. va: ta;
  18. b1,b2,b3: byte;
  19. begin
  20. b1 := $ff;
  21. b2 := $ff;
  22. b3 := $ff;
  23. va := [];
  24. vb := [];
  25. vc := [];
  26. vd := [];
  27. ve := [];
  28. va := [3..4];
  29. vb := va;
  30. if b1 <> $ff then
  31. halt(1);
  32. if va <> [3..4] then
  33. halt(1);
  34. if vb <> [3..4] then
  35. halt(1);
  36. if vc <> [] then
  37. halt(1);
  38. if vd <> [] then
  39. halt(1);
  40. if ve <> [] then
  41. halt(1);
  42. vc := va;
  43. if b1 <> $ff then
  44. halt(1);
  45. if va <> [3..4] then
  46. halt(1);
  47. if vb <> [3..4] then
  48. halt(1);
  49. if vc <> [3..4] then
  50. halt(1);
  51. if vd <> [] then
  52. halt(1);
  53. if ve <> [] then
  54. halt(1);
  55. vd := va;
  56. if b1 <> $ff then
  57. halt(1);
  58. if va <> [3..4] then
  59. halt(1);
  60. if vb <> [3..4] then
  61. halt(1);
  62. if vc <> [3..4] then
  63. halt(1);
  64. if vd <> [3..4] then
  65. halt(1);
  66. if ve <> [] then
  67. halt(1);
  68. ve := va;
  69. if b1 <> $ff then
  70. halt(1);
  71. if va <> [3..4] then
  72. halt(1);
  73. if vb <> [3..4] then
  74. halt(1);
  75. if vc <> [3..4] then
  76. halt(1);
  77. if vd <> [3..4] then
  78. halt(1);
  79. if ve <> [3..4] then
  80. halt(1);
  81. b1 := $ff;
  82. b2 := $ff;
  83. b3 := $ff;
  84. va := [];
  85. vb := [];
  86. vc := [];
  87. vd := [];
  88. ve := [];
  89. vb := [0,2,3];
  90. va := vb;
  91. if b1 <> $ff then
  92. halt(2);
  93. if va <> [0,2,3] then
  94. halt(2);
  95. if vb <> [0,2,3] then
  96. halt(2);
  97. if vc <> [] then
  98. halt(2);
  99. if vd <> [] then
  100. halt(2);
  101. if ve <> [] then
  102. halt(2);
  103. vc := vb;
  104. if b1 <> $ff then
  105. halt(2);
  106. if va <> [0,2,3] then
  107. halt(2);
  108. if vb <> [0,2,3] then
  109. halt(2);
  110. if vc <> [0,2,3] then
  111. halt(2);
  112. if vd <> [] then
  113. halt(2);
  114. if ve <> [] then
  115. halt(2);
  116. vd := vb;
  117. if b1 <> $ff then
  118. halt(2);
  119. if va <> [0,2,3] then
  120. halt(2);
  121. if vb <> [0,2,3] then
  122. halt(2);
  123. if vc <> [0,2,3] then
  124. halt(2);
  125. if vd <> [0,2,3] then
  126. halt(2);
  127. if ve <> [] then
  128. halt(2);
  129. ve := vb;
  130. if va <> [0,2,3] then
  131. halt(2);
  132. if vb <> [0,2,3] then
  133. halt(2);
  134. if vc <> [0,2,3] then
  135. halt(2);
  136. if vd <> [0,2,3] then
  137. halt(2);
  138. if ve <> [0,2,3] then
  139. halt(2);
  140. b1 := $ff;
  141. b2 := $ff;
  142. b3 := $ff;
  143. va := [];
  144. vb := [];
  145. vc := [];
  146. vd := [];
  147. ve := [];
  148. vc := [5,6,7];
  149. va := vc;
  150. if b1 <> $ff then
  151. halt(3);
  152. if va <> [5,6,7] then
  153. halt(3);
  154. if vc <> [5,6,7] then
  155. halt(3);
  156. if vb <> [] then
  157. halt(3);
  158. if vd <> [] then
  159. halt(3);
  160. if ve <> [] then
  161. halt(3);
  162. vb := vc;
  163. if b1 <> $ff then
  164. halt(3);
  165. if va <> [5,6,7] then
  166. halt(3);
  167. if vb <> [5,6,7] then
  168. halt(3);
  169. if vc <> [5,6,7] then
  170. halt(3);
  171. if vd <> [] then
  172. halt(3);
  173. if ve <> [] then
  174. halt(3);
  175. vd := vc;
  176. if b1 <> $ff then
  177. halt(3);
  178. if va <> [5,6,7] then
  179. halt(3);
  180. if vb <> [5,6,7] then
  181. halt(3);
  182. if vc <> [5,6,7] then
  183. halt(3);
  184. if vd <> [5,6,7] then
  185. halt(3);
  186. if ve <> [] then
  187. halt(3);
  188. ve := vc;
  189. if b1 <> $ff then
  190. halt(3);
  191. if va <> [5,6,7] then
  192. halt(3);
  193. if vb <> [5,6,7] then
  194. halt(3);
  195. if vc <> [5,6,7] then
  196. halt(3);
  197. if vd <> [5,6,7] then
  198. halt(3);
  199. if ve <> [5,6,7] then
  200. halt(3);
  201. b1 := $ff;
  202. b2 := $ff;
  203. b3 := $ff;
  204. va := [];
  205. vb := [];
  206. vc := [];
  207. vd := [];
  208. ve := [];
  209. vd := [1,3,5];
  210. va := vd;
  211. if b1 <> $ff then
  212. halt(4);
  213. if va <> [1,3,5] then
  214. halt(4);
  215. if vd <> [1,3,5] then
  216. halt(4);
  217. if vc <> [] then
  218. halt(4);
  219. if vb <> [] then
  220. halt(4);
  221. if ve <> [] then
  222. halt(4);
  223. vb := vd;
  224. if b1 <> $ff then
  225. halt(4);
  226. if va <> [1,3,5] then
  227. halt(4);
  228. if vb <> [1,3,5] then
  229. halt(4);
  230. if vd <> [1,3,5] then
  231. halt(4);
  232. if vc <> [] then
  233. halt(4);
  234. if ve <> [] then
  235. halt(4);
  236. vc := vd;
  237. if b1 <> $ff then
  238. halt(4);
  239. if va <> [1,3,5] then
  240. halt(4);
  241. if vb <> [1,3,5] then
  242. halt(4);
  243. if vc <> [1,3,5] then
  244. halt(4);
  245. if vd <> [1,3,5] then
  246. halt(4);
  247. if ve <> [] then
  248. halt(4);
  249. ve := vd;
  250. if b1 <> $ff then
  251. halt(4);
  252. if va <> [1,3,5] then
  253. halt(4);
  254. if vb <> [1,3,5] then
  255. halt(4);
  256. if vc <> [1,3,5] then
  257. halt(4);
  258. if vd <> [1,3,5] then
  259. halt(4);
  260. if ve <> [1,3,5] then
  261. halt(4);
  262. b1 := $ff;
  263. b2 := $ff;
  264. b3 := $ff;
  265. va := [];
  266. vb := [];
  267. vc := [];
  268. vd := [];
  269. ve := [];
  270. ve := [0,7];
  271. va := ve;
  272. if b1 <> $ff then
  273. halt(5);
  274. if va <> [0,7] then
  275. halt(5);
  276. if ve <> [0,7] then
  277. halt(5);
  278. if vc <> [] then
  279. halt(5);
  280. if vd <> [] then
  281. halt(5);
  282. if vb <> [] then
  283. halt(5);
  284. vb := ve;
  285. if b1 <> $ff then
  286. halt(5);
  287. if va <> [0,7] then
  288. halt(5);
  289. if vb <> [0,7] then
  290. halt(5);
  291. if ve <> [0,7] then
  292. halt(5);
  293. if vd <> [] then
  294. halt(5);
  295. if vc <> [] then
  296. halt(5);
  297. vc := ve;
  298. if b1 <> $ff then
  299. halt(5);
  300. if va <> [0,7] then
  301. halt(5);
  302. if vb <> [0,7] then
  303. halt(5);
  304. if vc <> [0,7] then
  305. halt(5);
  306. if ve <> [0,7] then
  307. halt(5);
  308. if vd <> [] then
  309. halt(5);
  310. vd := ve;
  311. if b1 <> $ff then
  312. halt(5);
  313. if va <> [0,7] then
  314. halt(5);
  315. if vb <> [0,7] then
  316. halt(5);
  317. if vc <> [0,7] then
  318. halt(5);
  319. if vd <> [0,7] then
  320. halt(5);
  321. if ve <> [0,7] then
  322. halt(5);
  323. end.