Home » Archimedes archive » Acorn User » AU 1997-03 B.adf » Regulars » StarInfo/Thurlby/PASCAL

StarInfo/Thurlby/PASCAL

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » AU 1997-03 B.adf » Regulars
Filename: StarInfo/Thurlby/PASCAL
Read OK:
File size: 0537 bytes
Load address: 0000
Exec address: 0000
File contents
   10 MODE 12:DIM a(8),b(7),c(6),d(5),e(4),f(3),g(2)
   50 GCOL0:PRINTTAB(25,10);SPC(30)
   60 N=20:n=1
   70 INPUTTAB(10,25)"DIGIT ";a(n)
   80 PRINTTAB(N,20);a(n)
   90 N=N+4:n=n+1
  100 PRINTTAB(10,25);SPC(10)
  110 IF n=9 THEN 120 ELSE 70
  120 FOR T=0 TO 50000:NEXT T
  130 INPUTTAB(20,25)"EXPECTED DIGIT AT APEX ";X
  140 PRINTTAB(20,25)"EXPECTED DIGIT AT APEX = ";X
  150 N=22:n=1
  160 b(n)=a(n)+a(n+1)
  170 IF b(n)>=14 THEN b(n)=b(n)-14 ELSE IF b(n)>=7 THEN b(n)=b(n)-7
  180 PROCpause:PRINTTAB(N,19);b(n)
  190 N=N+4:n=n+1
  200 IF n=8 THEN 210 ELSE 160
  210 N=24:n=1
  220 c(n)=b(n)+b(n+1)
  230 IF c(n)>=14 THEN c(n)=c(n)-14 ELSE IF c(n)>=7 THEN c(n)=c(n)-7
  240 PROCpause:PRINTTAB(N,18);c(n)
  250 N=N+4:n=n+1
  260 IF n=7 THEN 270 ELSE 220
  270 N=26:n=1
  280 d(n)=c(n)+c(n+1)
  290 IF d(n)>=14 THEN d(n)=d(n)-14 ELSE IF d(n)>=7 THEN d(n)=d(n)-7
  300 PROCpause:PRINTTAB(N,17);d(n)
  310 N=N+4:n=n+1
  320 IF n=6 THEN 330 ELSE 280
  330 N=28:n=1
  340 e(n)=d(n)+d(n+1)
  350 IF e(n)>=14 THEN e(n)=e(n)-14 ELSE IF e(n)>=7 THEN e(n)=e(n)-7
  360 PROCpause:PRINTTAB(N,16);e(n)
  370 N=N+4:n=n+1
  380 IF n=5 THEN 390 ELSE 340
  390 N=30:n=1
  400 f(n)=e(n)+e(n+1)
  410 IF f(n)>=14 THEN f(n)=f(n)-14 ELSE IF f(n)>=7 THEN f(n)=f(n)-7
  420 PROCpause:PRINTTAB(N,15);f(n)
  430 N=N+4:n=n+1
  440 IF n=4 THEN 450 ELSE 400
  450 N=32:n=1
  460 g(n)=f(n)+f(n+1)
  470 IF g(n)>=14 THEN g(n)=g(n)-14 ELSE IF g(n)>=7 THEN g(n)=g(n)-7
  480 PROCpause:PRINTTAB(N,14);g(n)
  490 N=N+4:n=n+1
  500 IF n=3 THEN 510 ELSE 460
  510 h=g(1)+g(2)
  520 IF h>=14 THEN h=h-14 ELSE IF h>=7 THEN h=h-7
  530 PROCpause:PRINTTAB(34,13);h
  540 PRINTTAB(0,27):END
  550 DEFPROCpause:FOR T=0 TO 30000:NEXT T:ENDPROC

. � 12:� a(8),b(7),c(6),d(5),e(4),f(3),g(2)
2 �0:�25,10);�(30)
<
 N=20:n=1
F �10,25)"DIGIT ";a(n)
P �N,20);a(n)
Z N=N+4:n=n+1
d �10,25);�(10)
n � n=9 � �Dx@ � �DF@
x � T=0 � 50000:� T
�( �20,25)"EXPECTED DIGIT AT APEX ";X
�* �20,25)"EXPECTED DIGIT AT APEX = ";X
�
 N=22:n=1
� b(n)=a(n)+a(n+1)
�8 � b(n)>=14 � b(n)=b(n)-14 � � b(n)>=7 � b(n)=b(n)-7
� �pause:�N,19);b(n)
� N=N+4:n=n+1
� � n=8 � �dR@ � �t`@
�
 N=24:n=1
� c(n)=b(n)+b(n+1)
�8 � c(n)>=14 � c(n)=c(n)-14 � � c(n)>=7 � c(n)=c(n)-7
� �pause:�N,18);c(n)
� N=N+4:n=n+1
 � n=7 � �TNA � �d\@

 N=26:n=1
 d(n)=c(n)+c(n+1)
"8 � d(n)>=14 � d(n)=d(n)-14 � � d(n)>=7 � d(n)=d(n)-7
, �pause:�N,17);d(n)
6 N=N+4:n=n+1
@ � n=6 � �DJA � �TXA
J
 N=28:n=1
T e(n)=d(n)+d(n+1)
^8 � e(n)>=14 � e(n)=e(n)-14 � � e(n)>=7 � e(n)=e(n)-7
h �pause:�N,16);e(n)
r N=N+4:n=n+1
| � n=5 � �tFA � �DTA
�
 N=30:n=1
� f(n)=e(n)+e(n+1)
�8 � f(n)>=14 � f(n)=f(n)-14 � � f(n)>=7 � f(n)=f(n)-7
� �pause:�N,15);f(n)
� N=N+4:n=n+1
� � n=4 � �dBA � �tPA
�
 N=32:n=1
� g(n)=f(n)+f(n+1)
�8 � g(n)>=14 � g(n)=g(n)-14 � � g(n)>=7 � g(n)=g(n)-7
� �pause:�N,14);g(n)
� N=N+4:n=n+1
� � n=3 � �d~A � �dLA
� h=g(1)+g(2)
& � h>=14 � h=h-14 � � h>=7 � h=h-7
 �pause:�34,13);h
 �0,27):�
&  ��pause:� T=0 � 30000:� T:�
�
00000000  0d 00 0a 2e 20 eb 20 31  32 3a de 20 61 28 38 29  |.... . 12:. a(8)|
00000010  2c 62 28 37 29 2c 63 28  36 29 2c 64 28 35 29 2c  |,b(7),c(6),d(5),|
00000020  65 28 34 29 2c 66 28 33  29 2c 67 28 32 29 0d 00  |e(4),f(3),g(2)..|
00000030  32 16 20 e6 30 3a f1 8a  32 35 2c 31 30 29 3b 89  |2. .0:..25,10);.|
00000040  28 33 30 29 0d 00 3c 0d  20 4e 3d 32 30 3a 6e 3d  |(30)..<. N=20:n=|
00000050  31 0d 00 46 1a 20 e8 8a  31 30 2c 32 35 29 22 44  |1..F. ..10,25)"D|
00000060  49 47 49 54 20 22 3b 61  28 6e 29 0d 00 50 11 20  |IGIT ";a(n)..P. |
00000070  f1 8a 4e 2c 32 30 29 3b  61 28 6e 29 0d 00 5a 10  |..N,20);a(n)..Z.|
00000080  20 4e 3d 4e 2b 34 3a 6e  3d 6e 2b 31 0d 00 64 13  | N=N+4:n=n+1..d.|
00000090  20 f1 8a 31 30 2c 32 35  29 3b 89 28 31 30 29 0d  | ..10,25);.(10).|
000000a0  00 6e 18 20 e7 20 6e 3d  39 20 8c 20 8d 44 78 40  |.n. . n=9 . .Dx@|
000000b0  20 8b 20 8d 44 46 40 0d  00 78 16 20 e3 20 54 3d  | . .DF@..x. . T=|
000000c0  30 20 b8 20 35 30 30 30  30 3a ed 20 54 0d 00 82  |0 . 50000:. T...|
000000d0  28 20 e8 8a 32 30 2c 32  35 29 22 45 58 50 45 43  |( ..20,25)"EXPEC|
000000e0  54 45 44 20 44 49 47 49  54 20 41 54 20 41 50 45  |TED DIGIT AT APE|
000000f0  58 20 22 3b 58 0d 00 8c  2a 20 f1 8a 32 30 2c 32  |X ";X...* ..20,2|
00000100  35 29 22 45 58 50 45 43  54 45 44 20 44 49 47 49  |5)"EXPECTED DIGI|
00000110  54 20 41 54 20 41 50 45  58 20 3d 20 22 3b 58 0d  |T AT APEX = ";X.|
00000120  00 96 0d 20 4e 3d 32 32  3a 6e 3d 31 0d 00 a0 15  |... N=22:n=1....|
00000130  20 62 28 6e 29 3d 61 28  6e 29 2b 61 28 6e 2b 31  | b(n)=a(n)+a(n+1|
00000140  29 0d 00 aa 38 20 e7 20  62 28 6e 29 3e 3d 31 34  |)...8 . b(n)>=14|
00000150  20 8c 20 62 28 6e 29 3d  62 28 6e 29 2d 31 34 20  | . b(n)=b(n)-14 |
00000160  8b 20 e7 20 62 28 6e 29  3e 3d 37 20 8c 20 62 28  |. . b(n)>=7 . b(|
00000170  6e 29 3d 62 28 6e 29 2d  37 0d 00 b4 18 20 f2 70  |n)=b(n)-7.... .p|
00000180  61 75 73 65 3a f1 8a 4e  2c 31 39 29 3b 62 28 6e  |ause:..N,19);b(n|
00000190  29 0d 00 be 10 20 4e 3d  4e 2b 34 3a 6e 3d 6e 2b  |).... N=N+4:n=n+|
000001a0  31 0d 00 c8 18 20 e7 20  6e 3d 38 20 8c 20 8d 64  |1.... . n=8 . .d|
000001b0  52 40 20 8b 20 8d 74 60  40 0d 00 d2 0d 20 4e 3d  |R@ . .t`@.... N=|
000001c0  32 34 3a 6e 3d 31 0d 00  dc 15 20 63 28 6e 29 3d  |24:n=1.... c(n)=|
000001d0  62 28 6e 29 2b 62 28 6e  2b 31 29 0d 00 e6 38 20  |b(n)+b(n+1)...8 |
000001e0  e7 20 63 28 6e 29 3e 3d  31 34 20 8c 20 63 28 6e  |. c(n)>=14 . c(n|
000001f0  29 3d 63 28 6e 29 2d 31  34 20 8b 20 e7 20 63 28  |)=c(n)-14 . . c(|
00000200  6e 29 3e 3d 37 20 8c 20  63 28 6e 29 3d 63 28 6e  |n)>=7 . c(n)=c(n|
00000210  29 2d 37 0d 00 f0 18 20  f2 70 61 75 73 65 3a f1  |)-7.... .pause:.|
00000220  8a 4e 2c 31 38 29 3b 63  28 6e 29 0d 00 fa 10 20  |.N,18);c(n).... |
00000230  4e 3d 4e 2b 34 3a 6e 3d  6e 2b 31 0d 01 04 18 20  |N=N+4:n=n+1.... |
00000240  e7 20 6e 3d 37 20 8c 20  8d 54 4e 41 20 8b 20 8d  |. n=7 . .TNA . .|
00000250  64 5c 40 0d 01 0e 0d 20  4e 3d 32 36 3a 6e 3d 31  |d\@.... N=26:n=1|
00000260  0d 01 18 15 20 64 28 6e  29 3d 63 28 6e 29 2b 63  |.... d(n)=c(n)+c|
00000270  28 6e 2b 31 29 0d 01 22  38 20 e7 20 64 28 6e 29  |(n+1).."8 . d(n)|
00000280  3e 3d 31 34 20 8c 20 64  28 6e 29 3d 64 28 6e 29  |>=14 . d(n)=d(n)|
00000290  2d 31 34 20 8b 20 e7 20  64 28 6e 29 3e 3d 37 20  |-14 . . d(n)>=7 |
000002a0  8c 20 64 28 6e 29 3d 64  28 6e 29 2d 37 0d 01 2c  |. d(n)=d(n)-7..,|
000002b0  18 20 f2 70 61 75 73 65  3a f1 8a 4e 2c 31 37 29  |. .pause:..N,17)|
000002c0  3b 64 28 6e 29 0d 01 36  10 20 4e 3d 4e 2b 34 3a  |;d(n)..6. N=N+4:|
000002d0  6e 3d 6e 2b 31 0d 01 40  18 20 e7 20 6e 3d 36 20  |n=n+1..@. . n=6 |
000002e0  8c 20 8d 44 4a 41 20 8b  20 8d 54 58 41 0d 01 4a  |. .DJA . .TXA..J|
000002f0  0d 20 4e 3d 32 38 3a 6e  3d 31 0d 01 54 15 20 65  |. N=28:n=1..T. e|
00000300  28 6e 29 3d 64 28 6e 29  2b 64 28 6e 2b 31 29 0d  |(n)=d(n)+d(n+1).|
00000310  01 5e 38 20 e7 20 65 28  6e 29 3e 3d 31 34 20 8c  |.^8 . e(n)>=14 .|
00000320  20 65 28 6e 29 3d 65 28  6e 29 2d 31 34 20 8b 20  | e(n)=e(n)-14 . |
00000330  e7 20 65 28 6e 29 3e 3d  37 20 8c 20 65 28 6e 29  |. e(n)>=7 . e(n)|
00000340  3d 65 28 6e 29 2d 37 0d  01 68 18 20 f2 70 61 75  |=e(n)-7..h. .pau|
00000350  73 65 3a f1 8a 4e 2c 31  36 29 3b 65 28 6e 29 0d  |se:..N,16);e(n).|
00000360  01 72 10 20 4e 3d 4e 2b  34 3a 6e 3d 6e 2b 31 0d  |.r. N=N+4:n=n+1.|
00000370  01 7c 18 20 e7 20 6e 3d  35 20 8c 20 8d 74 46 41  |.|. . n=5 . .tFA|
00000380  20 8b 20 8d 44 54 41 0d  01 86 0d 20 4e 3d 33 30  | . .DTA.... N=30|
00000390  3a 6e 3d 31 0d 01 90 15  20 66 28 6e 29 3d 65 28  |:n=1.... f(n)=e(|
000003a0  6e 29 2b 65 28 6e 2b 31  29 0d 01 9a 38 20 e7 20  |n)+e(n+1)...8 . |
000003b0  66 28 6e 29 3e 3d 31 34  20 8c 20 66 28 6e 29 3d  |f(n)>=14 . f(n)=|
000003c0  66 28 6e 29 2d 31 34 20  8b 20 e7 20 66 28 6e 29  |f(n)-14 . . f(n)|
000003d0  3e 3d 37 20 8c 20 66 28  6e 29 3d 66 28 6e 29 2d  |>=7 . f(n)=f(n)-|
000003e0  37 0d 01 a4 18 20 f2 70  61 75 73 65 3a f1 8a 4e  |7.... .pause:..N|
000003f0  2c 31 35 29 3b 66 28 6e  29 0d 01 ae 10 20 4e 3d  |,15);f(n).... N=|
00000400  4e 2b 34 3a 6e 3d 6e 2b  31 0d 01 b8 18 20 e7 20  |N+4:n=n+1.... . |
00000410  6e 3d 34 20 8c 20 8d 64  42 41 20 8b 20 8d 74 50  |n=4 . .dBA . .tP|
00000420  41 0d 01 c2 0d 20 4e 3d  33 32 3a 6e 3d 31 0d 01  |A.... N=32:n=1..|
00000430  cc 15 20 67 28 6e 29 3d  66 28 6e 29 2b 66 28 6e  |.. g(n)=f(n)+f(n|
00000440  2b 31 29 0d 01 d6 38 20  e7 20 67 28 6e 29 3e 3d  |+1)...8 . g(n)>=|
00000450  31 34 20 8c 20 67 28 6e  29 3d 67 28 6e 29 2d 31  |14 . g(n)=g(n)-1|
00000460  34 20 8b 20 e7 20 67 28  6e 29 3e 3d 37 20 8c 20  |4 . . g(n)>=7 . |
00000470  67 28 6e 29 3d 67 28 6e  29 2d 37 0d 01 e0 18 20  |g(n)=g(n)-7.... |
00000480  f2 70 61 75 73 65 3a f1  8a 4e 2c 31 34 29 3b 67  |.pause:..N,14);g|
00000490  28 6e 29 0d 01 ea 10 20  4e 3d 4e 2b 34 3a 6e 3d  |(n).... N=N+4:n=|
000004a0  6e 2b 31 0d 01 f4 18 20  e7 20 6e 3d 33 20 8c 20  |n+1.... . n=3 . |
000004b0  8d 64 7e 41 20 8b 20 8d  64 4c 41 0d 01 fe 10 20  |.d~A . .dLA.... |
000004c0  68 3d 67 28 31 29 2b 67  28 32 29 0d 02 08 26 20  |h=g(1)+g(2)...& |
000004d0  e7 20 68 3e 3d 31 34 20  8c 20 68 3d 68 2d 31 34  |. h>=14 . h=h-14|
000004e0  20 8b 20 e7 20 68 3e 3d  37 20 8c 20 68 3d 68 2d  | . . h>=7 . h=h-|
000004f0  37 0d 02 12 16 20 f2 70  61 75 73 65 3a f1 8a 33  |7.... .pause:..3|
00000500  34 2c 31 33 29 3b 68 0d  02 1c 0e 20 f1 8a 30 2c  |4,13);h.... ..0,|
00000510  32 37 29 3a e0 0d 02 26  20 20 dd f2 70 61 75 73  |27):...&  ..paus|
00000520  65 3a e3 20 54 3d 30 20  b8 20 33 30 30 30 30 3a  |e:. T=0 . 30000:|
00000530  ed 20 54 3a e1 0d ff                              |. T:...|
00000537