[] [ T U R I N G M A S C H I N E ] [] BEGINN WIEDERHOLE @SPEICHERAUTOMAT; SCHREIB "WIEVIELE ZEICHEN HAT DAS ZU BEARBEITENDE ALPHABET "!; LIES ALPHABETLAENGE;ALAENGE:=VAL(ALPHABETLAENGE); WENN NICHT(ALAENGE TEILT PROLAENGE) DANN FUEHRE SCHREIB"DIE ANZAHL DER PROGRAMMZEILEN IST NICHT KORREKT !"; SCHREIB"DU MUSST DAS PROGRAMM LEIDER NEU EINGEBEN !; AUS BIS ALAENGE TEILT PROLAENGE; @ABSPEICHERN; @ARBEITSBANDEINGABE; [] ZW:=1; POS:=1; WIEDERHOLE [ DIE -TE ZELLE WIRD ABGEARBEITET ] [] [ AUSGABE DES ARBEITSBANDES VOR JEDEM ABARBEITEN EINER ] [ ZELLE MIT MARKIERUNG DES ARBEITSFELDES ] SCHREIB ABAND; ZAEHLER:=1; SOLANGE ZAEHLER72; WENN POS>72 DANN SCHREIB"UNZULAESSIGE RECHTSVERSCHIEBUNG !PROGRAMM BEENDET !"; SCHREIB;SCHREIB ABAND ENDE; [] SPEICHERAUTOMAT:BEGINN SCHREIB"IST DAS ZU VERARBEITENDE PROGRAMM NEU ODER ALT "!; LIES OLDNEW; SOLANGE OLDNEW<>"NEU" ODER OLDNEW<>"ALT" FUEHRE SCHREIB"DIESE EINGABE WAR FALSCH.GIB BITTE >ALT<"; SCHREIB"ODER >NEU< EIN !"; LIES OLDNEW AUS; SCHREIB"JETZT GIB BITTE EIN--FILE:PROGRAMMNAME.EXTENSION "; LIES PROANGABEN; WENN OLDNEW="NEU" DANN FUEHRE SCHREIB; SCHREIB"GIB MIR JETZT DIE PROGRAMMZEILEN HINTEREINANDER EIN."; SCHREIB"EINE LEERZEILE BEENDET DIE EINGABE !"; PROLAENGE:=0; WIEDERHOLE PROLAENGE:=PROLAENGE+1; LIES ZEILE(PROLAENGE) BIS ZEILE(PROLAENGE=""; PROLAENGE:=PROLAENGE-1 AUS SONST FUEHRE OEFFNE#1:PROANGABEN; PROLAENGE:=1; SOLANGE NICHT ED#1 FUEHRE LIES#1:Z$; ZEILE (PROLAENGE):=Z$; PROLAENGE:=PROLAENGE+1 AUS; PROLAENGE:=PROLAENGE-1 AUS [;WENN PROANGABEN(12,14)=".MK" DANN @MARKOV-UEBERSETZER ] ENDE; [] ABSPEICHERN:BEGINN OEFFNEV#1:PROANGABEN; VON I:=1 BIS PROLAENGE MACH SCHREIB#1:ZEILE(I); SCHLIESS#1 ENDE; [] ARBEITSBANDEINGABE:BEGINN WENN ALAENGE=2 DANN FUEHRE SCHREIB"GIB MIR BITTE EIN,WIE DAS ARBEITSBAND AUSSEHEN"; SCHREIB"SOLL (Z.B.:15*I,O,32*I)!"; WIEDERHOLE LIES BASTRUK; PUNKT:=1;Q:=1; WIEDERHOLE [ * WIRD IN BASTRUK GESUCHT ] SOLANGE BASTRUK(PUNKT,PUNKT)<>"*" MACH PUNKT:=PUNKT+1; MAL(Q):=PUNKT; Q:=Q+1;PUNKT:=PUNKT+1 BIS Q=3; SUMME:=VAL(BASTRUK(1,MAL(1)-1)+VAL(BASTRUK(MAL(1)+5,MAL(2)-1)+1; WENN SUMME>72 DANN FUEHRE SCHREIB"MEHR ALS 72 ZEICHEN KRIEG ICH NICHT AUF'S"; SCHREIB"ARBEITSBAND !GIB BITTE NEU EIN !"; CONTROLLETTI:="WRONG" AUS SONST CONTROLLETTI:="RIGHT" BIS CONTROLLETTI="RIGHT"; [] A:=1;E:=VAL(BASTRUK(1,MAL(1)-1)); Q:=1; WIEDERHOLE FUER I:=A BIS E MACH ABAND:=ABAND&BASTRUK(MAL(Q)+1,MAL(Q)+1); ABAND:=ABAND&BASTRUK(MAL(1)+3,MAL(1)+3); A:=2+E;E:=SUMME;Q:=Q+1 BIS Q=3 AUS SONST FUEHRE SCHREIB"GIB MIR BITTE DAS ARBEITSBAND EIN(NICHT MEHR"; SCHREIB"ALS 72 ZEICHEN )!; LIES ABAND AUS ENDE