Rev 14 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
14 | daniel-mar | 1 | /* Berechnet a[0]..a[n-1], also bis einschliesslich M_5(n) . */ |
2 | /* Es wird vorausgesetzt, dass das Feld a auf einen genuegend grossen Platz fuer n Bytes zeigt! */ |
||
3 | void BerechneUnsterblich (unsigned char *a, int n) |
||
4 | { |
||
5 | int r,s,u,m,k; |
||
6 | if (n <= 0) return; |
||
7 | a[0] = 5; |
||
8 | if (n <= 1) return; |
||
9 | a[1] = 2; |
||
10 | r = 2; |
||
11 | u = 1; |
||
12 | while (u < n-1) |
||
13 | { |
||
14 | r = (r-a[u])/10 + a[u]; |
||
15 | s = 0; |
||
16 | for (m = 1, k = u; m < k; m++,k--) s += a[m]*a[k]; |
||
17 | r += 2*s; |
||
18 | if (m == k) r += a[m]*a[m]; |
||
19 | a[++u] = r % 10; |
||
20 | } |
||
21 | } |
||
22 | |||
23 | "5 Mal editiert" |