A small geekism for your enjoyment: A system of batch files that generates prime numbers in "prisoners notation". (It's rather sloooooooow.) END.BAT is really an empty file, by the way. Start with "PRIEMGEN" ("priem" is Dutch for "prime"). -- Dirk van Deun http://student.vub.ac.be/~dvandeun Translations: Priem = prime, deelbaar = divisible, deeltal = (the thing that is divided), deler = divisor. ------------------ File CDR.BAT ------------------------- SET CDR-OUT=%2 :LOOP IF "%3"=="" END SHIFT SET CDR-OUT=%CDR-OUT% %2 GOTO LOOP ------------------ File NULL.BAT ------------------------- IF "%1"=="" SET NULL-OUT=TRUE IF NOT "%1"=="" SET NULL-OUT=FALSE ------------------ File MINUS.BAT ------------------------- CALL NULL %MIN-IN2% IF %NULL-OUT%==TRUE SET MIN-OUT=%MIN-IN1% IF %NULL-OUT%==TRUE SET MIN-ERR= IF %NULL-OUT%==TRUE END CALL NULL %MIN-IN1% IF %NULL-OUT%==TRUE SET MIN-ERR=UNDERFLOW IF %NULL-OUT%==TRUE END CALL CDR %MIN-IN1% SET MIN-IN1=%CDR-OUT% CALL CDR %MIN-IN2% SET MIN-IN2=%CDR-OUT% MINUS ------------------ File DEELBAAR.BAT ------------------------- CALL NULL %DEELTAL% IF %NULL-OUT%==TRUE SET DEEL-OUT=TRUE IF %NULL-OUT%==TRUE END SET MIN-IN1=%DEELTAL% SET MIN-IN2=%DELER% CALL MINUS IF "%MIN-ERR%"=="UNDERFLOW" SET DEEL-OUT=FALSE IF "%MIN-ERR%"=="UNDERFLOW" END SET DEELTAL=%MIN-OUT% DEELBAAR ------------------ File PRIEM.BAT ------------------------- CALL CDR %PRIEM-IN% :LOOP SET DEELTAL=%PRIEM-IN% SET DELER=%CDR-OUT% CALL CDR %CDR-OUT% CALL NULL %CDR-OUT% IF %NULL-OUT%==TRUE SET PRIEM-OUT=TRUE IF %NULL-OUT%==TRUE END CALL DEELBAAR IF %DEEL-OUT%==TRUE SET PRIEM-OUT=FALSE IF %DEEL-OUT%==TRUE END CALL CDR %DELER% GOTO LOOP ------------------ File PRIEMGEN.BAT ------------------------- @ECHO OFF SET PRIEM-IN=I I :LOOP CALL PRIEM IF %PRIEM-OUT%==TRUE ECHO %PRIEM-IN% SET PRIEM-IN=I %PRIEM-IN% GOTO LOOP ------------------ File END.BAT ------------------------- ---------------- end of files -----------------