On peut se faire un petit tableau pour y voir plus clair.
n | a | b |
0 | 0 | 1 |
1 | 1 | 0 |
2 | 1 | 1 |
3 | 2 | 1 |
4 | 3 | 2 |
5 | 5 | 3 |
6 | 8 | 5 |
Il y a en fait deux possibilités d'interprétation.
Pour b:
- la somme des deux dernières valeurs de b
- la dernière valeur de a
Pour a:
- la somme des deux dernières valeurs de a
- la somme des dernières valeurs de a et b
En effet, b prend les mêmes valeurs que a mais avec un rang de retard.
Maintenant on peut réfléchir aux 3 affectations qui permettent de faire ça
C'est ici la 2ème interprétation qu'il te faut prendre à chaque fois, vu que ton algorithme connaît les dernières valeurs de a et b, mais pas les avant-dernières.