Sylvester's sequence: Difference between revisions
Content added Content deleted
(Added C++ solution) |
(Added Prolog solution) |
||
Line 277: | Line 277: | ||
10: 165506647324519964198468195444439180017513152706377497841851388766535868639572406808911988131737645185443 |
10: 165506647324519964198468195444439180017513152706377497841851388766535868639572406808911988131737645185443 |
||
sum of reciprocals: 0.999999999999999999...99999999999999999635 (213 digits) |
sum of reciprocals: 0.999999999999999999...99999999999999999635 (213 digits) |
||
</pre> |
|||
=={{header|Prolog}}== |
|||
{{works with|SWI Prolog}} |
|||
<lang prolog>sylvesters_sequence(N, S, R):- |
|||
sylvesters_sequence(N, S, 2, R, 0). |
|||
sylvesters_sequence(0, [X], X, R, S):- |
|||
!, |
|||
R is S + 1 rdiv X. |
|||
sylvesters_sequence(N, [X|Xs], X, R, S):- |
|||
Y is X * X - X + 1, |
|||
M is N - 1, |
|||
T is S + 1 rdiv X, |
|||
sylvesters_sequence(M, Xs, Y, R, T). |
|||
main:- |
|||
sylvesters_sequence(9, Sequence, Sum), |
|||
writeln('First 10 elements in Sylvester\'s sequence:'), |
|||
forall(member(S, Sequence), writef('%t\n', [S])), |
|||
N is numerator(Sum), |
|||
D is denominator(Sum), |
|||
writef('\nSum of reciprocals: %t / %t\n', [N, D]).</lang> |
|||
{{out}} |
|||
<pre> |
|||
First 10 elements in Sylvester's sequence: |
|||
2 |
|||
3 |
|||
7 |
|||
43 |
|||
1807 |
|||
3263443 |
|||
10650056950807 |
|||
113423713055421844361000443 |
|||
12864938683278671740537145998360961546653259485195807 |
|||
165506647324519964198468195444439180017513152706377497841851388766535868639572406808911988131737645185443 |
|||
Sum of reciprocals: 27392450308603031423410234291674686281194364367580914627947367941608692026226993634332118404582438634929548737283992369758487974306317730580753883429460344956410077034761330476016739454649828385541500213920805 / 27392450308603031423410234291674686281194364367580914627947367941608692026226993634332118404582438634929548737283992369758487974306317730580753883429460344956410077034761330476016739454649828385541500213920806 |
|||
</pre> |
</pre> |
||