Zählen von Buchstaben II

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

LetterCount.om
   (* count letters *)
   WHILE Streams.ReadByte(Streams.stdin, ch) DO
      CASE ch OF
      | "a".."z":
         (* convert it to upper-case *)
         ch := CAP(ch);
         letter := TRUE;
      | "A".."Z":
         letter := TRUE;
      ELSE
         letter := FALSE;
      END;
      IF letter THEN
         i := ORD(ch) - ORD("A");
         INC(count[i]);
      END;
   END;

*Streams.ReadByte liest ein Zeichen von dem angegebenen Stream und liefert TRUE, falls die Operation erfolgreich war. Die Verwendung von Streams.ReadByte führt im Vergleich zu Read.Char zu eleganteren Schleifen.
 
*Mit CAP werden Kleinbuchstaben zu Großbuchstaben konvertiert.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 2004, 2005 Andreas Borchert, in HTML konvertiert am 18.02.2005