Bases de la programmation (trace de pseudo-code)

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 ?

string array: s ← {"S", "T", "O", "P"}
string: r ← ""
for (i from 1 to length(s) step 1)
  r ← s[i] + r
endfor
  1. APOTS
  2. BPOT
  3. CSTOP
Afficher la réponse et l'explication

Réponse : A. POTS

r ← s[i] + r ajoute chaque nouveau caractère au début (à gauche) de r. r devient successivement « S », « TS », « OTS » et « POTS » : les caractères se retrouvent dans l'ordre inverse. Écrire r ← r + s[i] ajouterait chaque caractère à la fin et donnerait « STOP », comme à l'origine.

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

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

  1. 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 ?
  2. ÷ 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) ?
  3. ÷ 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 toBin suivante appelée sous la forme toBin(12) ?
  4. Le programme suivant soustrait l'un de l'autre les deux entiers a et b jusqu'à ce qu'ils soient égaux. Quelle est la valeur de k après son exécution ?
  5. La fonction isLeap suivante renvoie true si l'année y est bissextile. and est évalué avant or. Pour quelle valeur de y isLeap(y) renvoie-t-elle true ?