cwtests/cw02/fib.while
author Christian Urban <christian.urban@kcl.ac.uk>
Tue, 19 Oct 2021 22:51:51 +0100
changeset 846 c24d16c89c48
parent 833 7c3b8bb4a174
child 853 851d8c00f033
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
833
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     1
write "Fib";
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     2
read n;  
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     3
minus1 := 0;
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     4
minus2 := 1;
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     5
while n > 0 do {
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     6
       temp := minus2;
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     7
       minus2 := minus1 + minus2;
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     8
       minus1 := temp;
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
     9
       n := n - 1
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
    10
};
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
    11
write "Result";
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
    12
write minus2 
7c3b8bb4a174 cwupdates
Christian Urban <christian.urban@kcl.ac.uk>
parents:
diff changeset
    13