
Recursivité
Question 1.2 :
Le résulta affiché, avec le nombre 8, est 34. De plus avec étude du programme et test de différente valeur, on observe que le programme sert à exécuter une suite de Fibonacci.
Question 1.3 :
dans la fonction setup(), on affecte à la variable "un" l'entier fib(3). 3>1 donc un=fib(2)+fib(1). Or 2>1 donc un=fib(1)+fib(0)+fib(1)=3 étant donné que 0 et 1 sont inférieur ou égaux à 1.
Question 2 :
Dans la fonction setup(), on définit la taille de la fenêtre de 640px horizontal et 360px vetical, on efface les arrêtes/bordures de toute les formes dessiner par processing.
Dans la fonction draw(), on appele la fonction drawCircle() de paramètre "largeur/2", "280", "6".
Dans la fonction drawCircle( x, radius, level), on définie la variable réel tt à 126*level/0.4 (donc au 1er tour : 126*6/4=189); on remplit les forme, dessiner grâce à processing, avec la teinte égale à la valeur tt. Puis on dessine une ellipse à la coordonné x (1er : x=largeur/2) à la hauteur "longueur/2", et le rayon x et y correspond à la valeur de la variable radius (1er tour radius=280). La condition qui suit sert arrêter la récursivité si level<1 sinon on rapelle la fonction, avec les paramètres suivant "x-radius/2, radius/2, level-1" puis une deuxième fois juste après avec des paramètre quasi identique : "x+radius/2, radius/2, level-1". De plus si dans les fonction drawCircle que l'on vient d'appeler level est toujours supérieur à 1, elles rappellent elles aussi des fonctions drawCircle.
Question 3 :