RosettaCodeData/Task/Sylvesters-sequence/Seed7/sylvesters-sequence.seed7
2023-07-01 13:44:08 -04:00

22 lines
635 B
Text

$ include "seed7_05.s7i";
include "bigint.s7i";
include "bigrat.s7i";
const func bigInteger: nextSylvester (in bigInteger: prev) is
return prev * prev - prev + 1_;
const proc: main is func
local
var bigInteger: number is 2_;
var bigRational: reciprocalSum is 0_ / 1_;
var integer: n is 0;
begin
writeln("First 10 elements of Sylvester's sequence:");
for n range 1 to 10 do
writeln(number);
reciprocalSum +:= 1_ / number;
number := nextSylvester(number);
end for;
writeln("\nSum of the reciprocals of the first 10 elements:");
writeln(reciprocalSum digits 210);
end func;