Subversion Repositories distributed

Rev

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"