1 PLEASE NOTE THAT THIS PROGRAM SORTS AN ENTERED LIST OF NUMBERS 2 NUMBERS ARE ENTERED UNTIL A ZERO IS RECEIVED, THEN THE SORTED 3 LIST IS OUTPUT, USING INSERTION SORT ALGORITHM 4 5 PLEASE NOTE THAT THIS PROGRAM USES COMPUTED ABSTAIN, TRY AGAIN, 6 BUT NO NEXTING, COMING FROM, OR ARRAYS 7 8 PLEASE NOTE .5 .6 .7 .8 ARE ALL TEMPORARIES 9 PLEASE NOTE .1 AND .4 ARE STASHED TO ACT LIKE ARRAYS 10 11 (8) DO .1 <- #0 12 (9) DO STASH .1 13 (10) DO .2 <- #0 14 (13) DO .4 <- #0 15 (14) DO STASH .4 16 PLEASE NOTE .2 HOLDS CURRENT STATE OF PROGRAM; .2 IS #0 DURING 17 INPUT, #1 WHEN INSERTING A VALUE, #3 WHEN RESETTING THE STASH, 18 #7 WHEN OUTPUTTING THE SORTED VALUES 19 DO REINSTATE (10) 20 DO REINSTATE (13) 21 DO REINSTATE (14) 22 DO REINSTATE (10) 23 DO REINSTATE (13) 24 DO REINSTATE (14) 25 DO ABSTAIN FROM (8) 26 DO ABSTAIN FROM (9) 27 DO ABSTAIN FROM (10) 28 PLEASE DO ABSTAIN FROM (13) 29 DO ABSTAIN FROM (14) 30 PLEASE NOTE THE ABOVE LINES ENSURE 10+13+14 ARE ABSTAINED FROM EXACTLY ONCE 31 32 PLEASE NOTE WRITING IN AN ELEMENT IFF .2 IS #0 33 DO ABSTAIN FROM (15) 34 DO ABSTAIN "!2~.2'~#1"$#1 FROM (15) 35 PLEASE NOTE LINE 15 ABSTAINED FROM 2 OR 4 TIMES 36 DO REINSTATE (15) 37 DO REINSTATE (15) 38 (15) DO WRITE IN .3 39 DO REINSTATE (15) 40 DO REINSTATE (15) 41 42 PLEASE NOTE SETTING LSB OF .2 43 DO .2 <- 'V.2$#1'~"#0$#65535" 44 45 PLEASE NOTE INSERTING .3 INTO OUR STASH IF .2 IS #1 46 DO .8 <- '?.2$#1'~"#0$#65535" 47 DO .8 <- !8~.8'~#1 48 DO .8 <- '?.8$#1'~"#0$#65535" 49 DO ABSTAIN FROM (33) 50 DO ABSTAIN .8$#1 FROM (33) 51 DO REINSTATE (33) 52 DO REINSTATE (33) 53 (33) DO ABSTAIN #1 FROM STASHING + RETRIEVING + CALCULATING + ABSTAINING + READING OUT 54 DO REINSTATE (33) 55 DO REINSTATE (33) 56 DO RETRIEVE .1 57 PLEASE NOTE IF .1 IS LESS THAN OR EQUAL TO .3, WE STASH .3 ON STASH .4 AND SET .2 TO #3 58 PLEASE NOTE IF .1 IS GREATER THAN .3, WE STASH .1 ON STASH .4 AND LEAVE .2 AS IT IS 59 PLEASE NOTE IF .1 IS #0, THIS NEEDS THE SAME ACTIONS AS IF .1 WAS LOWER 60 PLEASE NOTE ADDING .1 TO THE COMPLEMENT OF .3, STORING THE RESULT IN .8, OVERFLOW IN .7 61 DO .8 <- '?.3$#65535'~"#0$#65535" 62 DO .5 <- .1 63 DO .7 <- #0 64 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 65 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 66 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 67 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 68 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 69 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 70 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 71 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 72 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 73 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 74 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 75 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 76 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 77 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 78 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 79 PLEASE DO .6<-"&!8$.5'"~'#0$#65535' DO .8<-"?!8$.5'"~'#0$#65535' DO .5<-!6$#0'~"#32767$#1" DO .7<-'V.7$".6~#32768"'~"#0$#65535" 80 PLEASE NOTE THAT IF .1 IS GREATER THAN .3, .7 WILL BE 1; OTHERWISE .7 WILL BE 0 81 PLEASE NOTE .4 MUST BECOME .1 IF .7 IS 1 OR .3 IF .7 IS 0 82 DO .7 <- '.7$.7'$".7$.7" 83 DO .7 <- '.7$.7'$".7$.7" 84 PLEASE NOTE .7 IS NOW 65535 OR 0, SO WE WANT .4 <- (.1 & .7)|(.3 & ~.7) 85 DO .5 <- '&.1$.7'~"#0$#65535" 86 PLEASE DO .6 <- '?.7$#65535'~"#0$#65535" 87 DO .6 <- '&.3$.6'~"#0$#65535" 88 DO .4 <- 'V.5$.6'~"#0$#65535" 89 DO STASH .4 90 PLEASE NOTE SETTING BIT 1 OF .2 IFF .7 IS #0 91 PLEASE DO .7 <- '?.7$#65535'~"#0$#65535" 92 DO .7 <- '&.7$#2'~"#0$#65535" 93 PLEASE DO .2 <- 'V.2$.7'~"#0$#65535" 94 DO ABSTAIN FROM (1) 95 (1) DO REINSTATE STASHING + RETRIEVING + CALCULATING + ABSTAINING + READING OUT 96 DO REINSTATE (1) 97 PLEASE NOTE END OF CODE FOR .2 = #1 98 99 PLEASE NOTE .9 KEEPS TRACK OF WHAT .2 WAS 100 DO .9 <- .2 101 102 PLEASE NOTE THAT IF .3 IS #0 AND .2 IS #3 THEN .2 SHOULD BECOME #7 103 DO .8 <- '?.2$#3'~"#0$#65535" 104 DO .8 <- 'V.3$.8'~"#0$#65535" 105 DO .8 <- ".8~.8"~#1 106 DO .8 <- '?.8$#1'~"#0$#65535" 107 DO .8 <- .8$!8$.8' 108 DO .2 <- 'V.2$.8'~"#0$#65535" 109 110 PLEASE NOTE THAT IF .9 != .2 WE MUST POP A #0 OFF .4'S STASH 111 DO .8 <- '?.2$.9'~"#0$#65535" 112 DO .8 <- !8~.8'~#1 113 DO .8 <- '?.8$#1'~"#0$#65535" 114 DO ABSTAIN FROM (113) 115 DO ABSTAIN .8$#1 FROM (113) 116 DO REINSTATE (113) 117 DO REINSTATE (113) 118 (113) DO RETRIEVE .4 119 DO REINSTATE (113) 120 DO REINSTATE (113) 121 122 PLEASE NOTE OUTPUTTING SORTED LIST IF .2 IS #7 123 DO ABSTAIN FROM (125) 124 DO .8 <- '?.2$#7'~"#0$#65535" 125 DO .8 <- !8~.8'~#1 126 DO .8 <- '?.8$#1'~"#0$#65535" 127 DO ABSTAIN FROM (54) 128 DO ABSTAIN .8$#1 FROM (54) 129 DO REINSTATE (54) 130 DO REINSTATE (54) 131 (54) DO ABSTAIN #1 FROM CALCULATING + ABSTAINING + READING OUT + RETRIEVING 132 DO REINSTATE (54) 133 DO REINSTATE (54) 134 DO ABSTAIN FROM (60) 135 DO ABSTAIN FROM (133) 136 DO RETRIEVE .4 137 PLEASE NOTE IF .4 IS #0 THEN END PROGRAM 138 DO .8 <- !4~.4'~#1 139 DO .8 <- '?.8$#1'~"#0$#65535" 140 DO ABSTAIN .8$#1 FROM (125) 141 (60) PLEASE DO REINSTATE CALCULATING + ABSTAINING + RETRIEVING 142 DO REINSTATE (60) 143 DO REINSTATE (125) 144 DO REINSTATE (125) 145 (125) DO ABSTAIN FROM (999) 146 DO REINSTATE (125) 147 DO REINSTATE (125) 148 (999) DO ABSTAIN FROM RETRIEVING + CALCULATING + ABSTAINING + REINSTATING + TRYING AGAIN + READING OUT 149 DO REINSTATE (999) 150 DO READ OUT .4 151 (133) DO REINSTATE READING OUT 152 DO REINSTATE (133) 153 PLEASE NOTE END OF CODE FOR .2 = #7 154 155 PLEASE NOTE MOVING STASH .4 BACK TO STASH .1 IF .2 IS #3 156 DO .8 <- '?.2$#3'~"#0$#65535" 157 DO .8 <- !8~.8'~#1 158 DO .8 <- '?.8$#1'~"#0$#65535" 159 DO ABSTAIN FROM (34) 160 DO ABSTAIN .8$#1 FROM (34) 161 DO REINSTATE (34) 162 DO REINSTATE (34) 163 (34) DO ABSTAIN #1 FROM STASHING + RETRIEVING + CALCULATING + ABSTAINING 164 DO REINSTATE (34) 165 DO REINSTATE (34) 166 PLEASE DO RETRIEVE .4 167 DO STASH .1 168 DO .1 <- .4 169 PLEASE NOTE THAT IF .1 IS NOW #0, WE NEED TO SET .2 BACK TO #0 AND STASH A #0 BACK IN STASH .4 170 THIS IS ACCOMPLISHED BY ABSTAINING ONCE OR THREE TIMES FROM 10+13+14 171 PLEASE DO .7 <- !1~.1'~#1 172 DO ABSTAIN .7$#1 FROM (10) 173 PLEASE DO ABSTAIN .7$#1 FROM (13) 174 DO ABSTAIN .7$#1 FROM (14) 175 DO ABSTAIN FROM (104) 176 PLEASE DO ABSTAIN FROM (110) 177 PLEASE DO ABSTAIN FROM (111) 178 DO ABSTAIN FROM (112) 179 (104) DO REINSTATE STASHING + RETRIEVING + CALCULATING + ABSTAINING 180 DO REINSTATE (104) 181 PLEASE NOTE ABSTAINING #3 FROM 10+13+14 IF .2 != #3 182 (110) DO ABSTAIN #3 FROM (10) 183 (111) DO ABSTAIN #3 FROM (13) 184 (112) PLEASE DO ABSTAIN #3 FROM (14) 185 DO REINSTATE (110) 186 DO REINSTATE (111) 187 DO REINSTATE (112) 188 PLEASE DO REINSTATE (10) 189 PLEASE DO REINSTATE (13) 190 DO REINSTATE (14) 191 DO REINSTATE (10) 192 DO REINSTATE (13) 193 DO REINSTATE (14) 194 PLEASE NOTE END OF CODE FOR .2 = #3 195 196 PLEASE TRY AGAIN 197