| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- (*
- adapted to Oberon-07 by 0CodErr, KolibriOS team
- *)
- MODULE SierpinskiTriangle;
- IMPORT In, Out, Console;
- VAR
- order: INTEGER;
- PROCEDURE PrintSierpinski(order: INTEGER);
- VAR
- x, y, k, size: INTEGER;
- BEGIN
- size := LSL(1, order) - 1;
- FOR y := size TO 0 BY -1 DO
- FOR k := 1 TO y DO
- Out.Char(" ")
- END;
- FOR x := 0 TO size - y DO
- IF BITS(x) * BITS(y) = {} THEN
- Out.String("* ")
- ELSE
- Out.String(" ")
- END
- END;
- Out.Ln
- END
- END PrintSierpinski;
- BEGIN
- Console.open;
- Out.String("Input triangle order(0..5):");
- In.Int(order);
- PrintSierpinski(order);
- In.Ln;
- Console.exit(TRUE)
- END SierpinskiTriangle.
|