Bases de la programmation (trace de pseudo-code)

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 ?

integer array: a ← {2, 2, 3, 3, 3, 1, 1}
integer: c ← 0
for (i from 1 to length(a) − 1 step 1)
  if (a[i] = a[i + 1])
    c ← c + 1
  endif
endfor
  1. A4
  2. B6
  3. C7
Afficher la réponse et l'explication

Réponse : A. 4

Le programme compte les paires d'éléments voisins égaux. i varie de 1 à 6, et quatre paires sont égales : a[1] et a[2], a[3] et a[4], a[4] et a[5], et a[6] et a[7] ; donc c = 4. Il y a 7 − 1 = 6 comparaisons. La valeur finale est length − 1 pour que a[i + 1] ne sorte pas du tableau.

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

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

  1. 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 ?
  2. 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é ?
  3. 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 ?
  4. 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 ?
  5. ÷ est la division ; quand le résultat est affecté à une variable entière (y compris un argument de fonction), la partie fractionnaire est supprimée. Quelle est la valeur de retour de la fonction f suivante appelée sous la forme f(9087) ?