#!/usr/bin/ruby
#
#
func faulhaber_s_formula(p) {
"1/#{p + 1} * (" + gather {
{ |j|
take "#{binomial(p+1, j) * j.bernfrac -> as_rat}*n^#{p+1 - j}"
} << 0..p
}.join(' + ') + ")"
}
{ |p|
printf("%2d: %s\n", p, faulhaber_s_formula(p))
} << ^10
#!/usr/bin/ruby
#
#
func faulhaber_s_formula(p) {
"1/#{p + 1} * (" + gather {
{ |j|
take "#{binomial(p+1, j) * j.bernfrac -> as_rat}*n^#{p+1 - j}"
} << 0..p
}.join(' + ') + ")"
}
{ |p|
printf("%2d: %s\n", p, faulhaber_s_formula(p))
} << ^10