IMPLEMENTATION MODULE CE; (*DEE 2014-08-06/2015-12-02*) FROM ST IMPORT putc; FROM STchars IMPORT EXCLAM, character; FROM STutility IMPORT min;*) CONST letterA = 65; (* ORD('A') might work under PIM4 *) PROCEDURE putrep(n: INTEGER; c: character); VAR m: INTEGER; CONST MAXREP = 26; (* assuming 'A'..'Z' *) THRESH = 4; BEGIN WHILE (n >= THRESH) OR ((c = WARNING) & (n > 0)) DO putc(WARNING); putc(min(n, MAXREP) - 1 + letterA); putc(c); n := n - MAXREP END; FOR m := n TO 1 BY -1 DO putc(c) END END putrep; END CE.