Question B)4) : Pour obtenir la pseudo-trace de l'algorithme demandée, rajoutons une instruction affichant l'état des variables en fin de boucle, et programmons-le sur notre calculatrice graphique :
Variables : A est un nombre réel k est un entier n est un entier Traitement : Lire la valeur de n A prend la valeur 0 Pour k allant de 0 à n-1 A prend la valeur A+1/2×sin(2π/n)×(1+k/n)×(1+(k+1)/n) Afficher k et A FinPour Sortie : Afficher A
EXPORT CE2016SO(N) BEGIN A:=0; FOR K FROM 0 TO N-1 DO A:=A+1/2*SIN(2π/N)*(1+K/N)*(1+(K+1)/N); PRINT({K,A}) END; PRINT(A) END;
D'où la trace ainsi complétée :
k
0
1
2
3
4
5
6
7
8
9
A
0,323
0,711
1,170
1,705
2,322
3,027
3,826
4,726
5,731
6,848
Question B)5) : L'algorithme s'articule autour d'une boucle Tant que, et doit se terminer sur An≥7,2, c'est-à-dire dans le contexte de l'algorithme A≥7,2. La condition de poursuite de la boucle Tant que est donc le contraire : A<7,2. L6 Tant que A<7,2
Il doit permettre de déterminer le plus petit entier n vérifiant la condition d'arrêt - il faut donc l'afficher : L13 SORTIE : Afficher N