|
|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2304 (0x900)
Types: TextFile
Names: »VOKALER.PAS«
└─⟦08ea08c61⟧ Bits:30003924 PolyPascal programmer
└─⟦this⟧ »VOKALER.PAS«
PROGRAM vokaler;
CONST
linieantal = 100;
liniebredde = 68;
TYPE
tekstarray = ARRAY(.1 .. linieantal, 1 .. liniebredde.) OF CHAR;
tegn = SET OF CHAR;
str = STRING(.liniebredde.);
VAR
tekst : tekstarray;
konsonanter, vokaler, cifre : tegn;
tekstlinie : str;
i, j, linie, position : INTEGER;
antalvokaler, antalkonsonanter, antalcifre : INTEGER;
ch : CHAR;
BEGIN
vokaler := (. 'A', 'E', 'I', 'O', 'U', 'Y', 'Æ', 'Ø', 'Å',
'a', 'e', 'i', 'o', 'u', 'y', 'æ', 'ø', 'å' .);
konsonanter := ((. 'A' .. 'Å' .) - vokaler)
+ ((. 'a' .. 'å' .) - vokaler);
cifre := (. '0' .. '9' .);
WRITE(CLRHOM);
WRITELN('Du kan nu indtaste en tekst på maximalt ',
linieantal, ' linier.');
WRITELN('Hver linie er på maximalt ', liniebredde, ' tegn.');
WRITELN('Indtastningen afsluttes ved at indtaste ''#'' som første og ');
WRITELN('eneste tegn på en linie');
WRITELN;
linie := 0;
REPEAT
linie := linie + 1;
WRITE('Linie', linie : 4, ': ');
BUFLEN := liniebredde;
READLN(tekstlinie);
IF tekstlinie <> '#'
THEN
BEGIN
FOR position := 1 TO LEN(tekstlinie) DO
tekst(.linie, position.) := COPY(tekstlinie, position, 1);
FOR i := position + 1 TO liniebredde DO
tekst(.linie, i.) := ' ';
END;
UNTIL (tekstlinie = '#') OR (linie = linieantal);
IF tekstlinie = '#'
THEN linie := linie - 1;
antalvokaler := 0;
antalkonsonanter := 0;
antalcifre := 0;
FOR i := 1 TO linie DO
FOR j := 1 TO liniebredde DO
BEGIN
ch := tekst(.i, j.);
IF ch IN vokaler
THEN antalvokaler := antalvokaler + 1;
IF ch IN konsonanter
THEN antalkonsonanter := antalkonsonanter + 1;
IF ch IN cifre
THEN antalcifre := antalcifre + 1;
END;
WRITELN;
WRITELN('Den indtastede tekst indeholder følgende:');
WRITELN('Antal vokaler: ', antalvokaler : 6);
WRITELN('Antal konsonanter: ', antalkonsonanter : 6);
WRITELN('Antal cifre: ', antalcifre : 6);
WRITELN;
END.
«eof»