PROGRAM ZAHLWOERTER(INPUT,OUTPUT); VAR N: INTEGER; PROCEDURE EINER(E: INTEGER); BEGIN CASE E OF 1: WRITE("EIN"); 2: WRITE("ZWEI"); 3: WRITE("DREI"); 4: WRITE("VIER"); 5: WRITE("FUENF"); 6: WRITE("SECHS"); 7: WRITE("SIEBEN"); 8: WRITE("ACHT"); 9: WRITE("NEUN"); 10: WRITE("ZEHN"); 11: WRITE("ELF"); 12: WRITE("ZWOELF"); END END (* EINER *); PROCEDURE ZEHNER(Z: INTEGER); BEGIN CASE Z OF 1: WRITE("ZEHN"); 2: WRITE("ZWANZIG"); 3: WRITE("DREISSIG"); 4: WRITE("VIERZIG"); 5: WRITE("FUENFZIG"); 6: WRITE("SECHZIG"); 7: WRITE("SIEBZIG"); 8: WRITE("ACHTZIG"); 9: WRITE("NEUNZIG") END END (* ZEHNER *); BEGIN READLN; WHILE NOT EOF DO BEGIN READ(N); WRITE("ZAHL:",N:5," WORT: "); IF N=1 THEN WRITE("EINS") ELSE IF N<=12 THEN EINER(N) ELSE IF N<=19 THEN BEGIN EINER(N-10);WRITE("ZEHN") END ELSE IF N MOD 10 = 0 THEN ZEHNER(N DIV 10) ELSE BEGIN EINER(N MOD 10); WRITE("UND"); ZEHNER(N DIV 10) END; WRITELN END END.