scripts: add onetest_gesamt for arm64
[testub10.git] / gesamt / codeb_georg_fib_043.0
1 /* fibonacci */
2
3 /* F_0 = 0 */
4 /* F_1 = 1 */
5 /* F_n = F_{n-1} + F_{n-2} */
6
7 struct f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 end;
8
9 method fib(x)
10         var t := this;
11         if x < 0 then return -1; end;   t.f0 := 0;
12         if x < 1 then return f0; end;   t.f1 := 1;
13         if x < 2 then return f1; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
14         if x < 3 then return f2; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
15         if x < 4 then return f3; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
16         if x < 5 then return f4; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
17         if x < 6 then return f5; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
18         if x < 7 then return f6; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
19         if x < 8 then return f7; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
20         if x < 9 then return f8; end;   t.f2 := t.f0-(0-t.f1);  t := t--8;
21         return f9;
22 end;