27 lines
636 B
Text
27 lines
636 B
Text
$ include "seed7_05.s7i";
|
|
|
|
const proc: writeFloyd (in integer: rows) is func
|
|
local
|
|
var integer: number is 1;
|
|
var integer: numBeforeLastLine is 0;
|
|
var integer: line is 0;
|
|
var integer: column is 0;
|
|
begin
|
|
numBeforeLastLine := rows * pred(rows) div 2;
|
|
for line range 1 to rows do
|
|
for column range 1 to line do
|
|
if column <> 1 then
|
|
write(" ");
|
|
end if;
|
|
write(number lpad length(str(numBeforeLastLine + column)));
|
|
incr(number);
|
|
end for;
|
|
writeln;
|
|
end for;
|
|
end func;
|
|
|
|
const proc: main is func
|
|
begin
|
|
writeFloyd(5);
|
|
writeFloyd(14);
|
|
end func;
|