Data update
This commit is contained in:
parent
81fd053722
commit
52a6ef48dd
10248 changed files with 63654 additions and 6775 deletions
|
|
@ -0,0 +1,25 @@
|
|||
MODULE SierpinskiTriangle;
|
||||
IMPORT S := SYSTEM, Out;
|
||||
|
||||
CONST
|
||||
N = 4;
|
||||
size = LSL(1, N); (* size = 2^N *)
|
||||
|
||||
VAR x, y, i: INTEGER;
|
||||
|
||||
BEGIN
|
||||
FOR y := size - 1 TO 0 BY -1 DO
|
||||
FOR i := 0 TO y - 1 DO Out.Char(" ") END;
|
||||
x := 0;
|
||||
WHILE x + y < size DO
|
||||
(* use SET intersection (bitwise AND) *)
|
||||
IF ORD(S.VAL(SET, x) * S.VAL(SET, y)) # 0 THEN
|
||||
Out.String(" ")
|
||||
ELSE
|
||||
Out.String("* ")
|
||||
END;
|
||||
INC(x)
|
||||
END;
|
||||
Out.Ln
|
||||
END
|
||||
END SierpinskiTriangle.
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
const
|
||||
order = 4;
|
||||
|
||||
begin
|
||||
var size := 1 shl order - 1;
|
||||
for var y := size downto 0 do
|
||||
begin
|
||||
write(' ' * y);
|
||||
for var x := 0 to size - y do
|
||||
if (x and y) <> 0 then write(' ')
|
||||
else write('* ');
|
||||
writeln
|
||||
end;
|
||||
end.
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
templates sierpinski
|
||||
@: ['*'];
|
||||
1..$ -> #
|
||||
'$@... -> '$;$#10;';' !
|
||||
otherwise
|
||||
def spaces: $ -> \(
|
||||
@: ' ';
|
||||
1..~$ -> @: '$@;$@;';
|
||||
$@!
|
||||
\);
|
||||
@: [$@... -> '$spaces;$;$spaces;', $@... -> '$; $;'];
|
||||
end sierpinski
|
||||
|
||||
4 -> sierpinski -> !OUT::write
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
sierpinski templates
|
||||
@ set ['*'];
|
||||
1..$ -> ! #
|
||||
'$@... -> '$;$#10;';' !
|
||||
otherwise
|
||||
spaces is $ -> templates
|
||||
@ set ' ';
|
||||
1..~$ -> @ set '$@;$@;';
|
||||
$@!
|
||||
end;
|
||||
@ set [$@... -> '$spaces;$;$spaces;', $@... -> '$; $;'];
|
||||
end sierpinski
|
||||
|
||||
4 -> sierpinski !
|
||||
Loading…
Add table
Add a link
Reference in a new issue