include "cowgol.coh"; sub multifac(n: uint32, d: uint32): (r: uint32) is r := 1; loop r := r * n; if n <= d then break; end if; n := n - d; end loop; end sub; var d: uint32 := 1; while d <= 5 loop print_i32(d); print(": "); var n: uint32 := 1; while n <= 10 loop print_i32(multifac(n, d)); print(" "); n := n + 1; end loop; print_nl(); d := d + 1; end loop;