Cantor set: Difference between revisions

→‎{{header|XPL0}}: cleaner version
(→‎{{header|XPL0}}: cleaner version)
Line 3,841:
 
=={{header|XPL0}}==
<lang XPL0>charproc Cantor(N, LineSeg, Len); \Delete middle third of LineSeg
int N,; Base,char LineSeg; int Len, Third, I;
 
proc Cantor(N, Base, Len); \Delete middle third of LineSeg
int N, Base, Len, Third, I;
[if N>0 and Len>1 then
[Third:= Len/3;
for I:= Base+Third, Base+2*Third-1 do LineSeg(I):= ^ ;
Cantor(N-1, Base+2*ThirdLineSeg, Third);
LineSeg(I):= ^ ;
Cantor(N-1, BaseLineSeg+2*Third, Third);
Cantor(N-1, Base+2*Third, Third);
];
];
 
char LineSeg, N;
int N;
[LineSeg:=
"#################################################################################
";
for N:= 0 to 4 do
[Cantor(N, 0LineSeg, 81);
Text(0, LineSeg);
];
772

edits