Bases de la programmation (trace de pseudo-code)

Les indices du tableau commencent à 1. Que contient le tableau a après l'exécution du programme suivant ?

integer array: a ← {5, 1, 4, 2, 3}
integer: t ← a[1]
for (i from 1 to 4 step 1)
  a[i] ← a[i + 1]
endfor
a[5] ← t
  1. A{1, 4, 2, 3, 5}
  2. B{1, 4, 2, 3, 3}
  3. C{3, 5, 1, 4, 2}
Afficher la réponse et l'explication

Réponse : A. {1, 4, 2, 3, 5}

Après avoir mis de côté la première valeur, 5, dans t, a[i] ← a[i + 1] avance chaque élément d'une place. Comme i croît, chaque valeur est déplacée avant d'être écrasée, ce qui donne {1, 4, 2, 3, 3}. Enfin, a[5] ← t place 5 à la fin : {1, 4, 2, 3, 5}. Le programme effectue une rotation de tout le tableau d'une place vers la gauche.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases de la programmation (trace de pseudo-code)

  1. Les indices du tableau commencent à 1. Le programme suivant compare des éléments voisins. Quelle est la valeur de c après son exécution ?
  2. m[i, j] désigne l'élément de la ligne i et de la colonne j du tableau à deux dimensions m, et les indices commencent à 1. Quelle est la valeur de s après l'exécution du programme suivant ?
  3. Le programme suivant copie les éléments du tableau à deux dimensions m, de 4 lignes et 5 colonnes, dans le tableau b de 20 éléments. m[i, j] désigne l'élément de la ligne i et de la colonne j, et les indices commencent à 1. À quel indice de b m[3, 2] est-il stocké ?
  4. Les indices du tableau commencent à 1, et + concatène des chaînes. Quelle est la valeur de r après l'exécution du programme suivant ?
  5. La fonction isPal suivante renvoie true si les caractères du tableau de chaînes s se lisent de la même façon dans les deux sens (un palindrome). Les indices du tableau commencent à 1. Que faut-il écrire à la place de 【a】 dans le programme ?