11 lines
444 B
Text
11 lines
444 B
Text
fcn lcNum(row){(row*(row+1)/2+1)} // lazy caterer's sequence
|
|
fcn floydsTriangle(rows){
|
|
fmt:=[lcNum(rows-1)..lcNum(rows)-1].pump(String,fcn(n){
|
|
String("%",n.toString().len(),"d ")}); // eg "%2d %2d %3d %3d"
|
|
foreach row in (rows){
|
|
ns:=[lcNum(row)..lcNum(row+1)-1].walk(); // eg L(4.5,6)
|
|
fmt[0,ns.len()*4].fmt(ns.xplode()).println(); // eg "%2d %2d %2d ".fmt(4,5,6)
|
|
}
|
|
}
|
|
floydsTriangle(5); println();
|
|
floydsTriangle(14);
|