CLEAR Y # loop times INCREASE Y INCREASE Y INCREASE Y INCREASE Y INCREASE Y INCREASE Y INCREASE Y INCREASE Y INCREASE Y INCREASE Y REPEAT Y TIMES ( REPEAT Y TIMES ( INCREASE Y ) ) PRINT X #print REPEAT Y TIMES ( CLEAR A # temp variable CLEAR B # temp variable CLEAR C REPEAT X TIMES ( INCREASE B REPEAT A TIMES ( CLEAR A CLEAR B INCREASE C ) REPEAT B TIMES ( INCREASE A ) ) REPEAT C TIMES ( CLEAR C INCREASE C ) # now B is 0 if X = 1 and in other cases its 1 REPEAT C TIMES ( # now lets put the current number through alogrithm # since it was not 1 # PARILLINEN CHECK: CLEAR A CLEAR V CLEAR P REPEAT X TIMES ( INCREASE P ) INCREASE P REPEAT P TIMES ( INCREASE V REPEAT A TIMES ( CLEAR A CLEAR V ) REPEAT V TIMES ( INCREASE A ) ) # now V is 1 if its parillinen and 0 if its pariton! REPEAT V TIMES # PARILLISEN LUVUN KÄSITTELY ( # this happens only if X is parillinen # tehdään jakolasku X / 2 # JAKOLASKU ALKAA # Sitten käytetään jakofunktiota A:han ja tallennetaan vastaus C:hen CLEAR A # temp variable CLEAR B # temp variable CLEAR C REPEAT X TIMES ( INCREASE B REPEAT A TIMES ( CLEAR A CLEAR B ) REPEAT B TIMES ( INCREASE A INCREASE C ) ) # JAKOLASKU LOPPUU ja lasku tallennettu E:hen CLEAR M REPEAT C TIMES ( INCREASE M # Tallennetaan X / 2 M:ään ) ) # Now lets check if the luku X is pariton: # PARITTOMAN LUVUN CHECK CLEAR A CLEAR V REPEAT X TIMES ( INCREASE V REPEAT A TIMES ( CLEAR A CLEAR V ) REPEAT V TIMES ( INCREASE A ) ) # now V is 1 if X is pariton and 0 if X is parillinen! REPEAT V TIMES # PARITTOMAN LUVUN KÄSITTELY ( # eli kerro kolmella ja lisää yksi CLEAR T # temp to be X REPEAT X TIMES ( INCREASE T # set T to X ) CLEAR M # clearataan M jotta se voidaan asettaa CLEAR K # temp variable to be 3 INCREASE K INCREASE K INCREASE K # set K to 3 REPEAT T TIMES ( REPEAT K TIMES ( INCREASE M ) ) INCREASE M # last increase CLEAR X REPEAT M TIMES ( INCREASE X ) PRINT X #print # TEHDÄÄN PARILLISEN LUVUN KÄSITTELY HETI PERÄÄN # this happens only if X is parillinen # tehdään jakolasku X / 2 # JAKOLASKU ALKAA # Sitten käytetään jakofunktiota A:han ja tallennetaan vastaus C:hen CLEAR A # temp variable CLEAR B # temp variable CLEAR C REPEAT X TIMES ( INCREASE B REPEAT A TIMES ( CLEAR A CLEAR B ) REPEAT B TIMES ( INCREASE A INCREASE C ) ) # JAKOLASKU LOPPUU ja lasku tallennettu E:hen CLEAR M REPEAT C TIMES ( INCREASE M # Tallennetaan X / 2 M:ään ) ) # viimeisenä asetetaan X M:ään CLEAR X REPEAT M TIMES ( INCREASE X ) PRINT X #print ) )