Bases de la programmation (trace de pseudo-code)
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 ?
2D integer array: m ← {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}
integer: s ← 0
for (i from 1 to 3 step 1)
for (j from 1 to i step 1)
s ← s + m[i, j]
endfor
endfor
- A15
- B26
- C34
Afficher la réponse et l'explication
Réponse : C. 34
Chaque {…} intérieur représente une ligne. j varie de 1 à i : la ligne 1 ajoute m[1, 1] = 1, la ligne 2 ajoute 4 + 5 et la ligne 3 ajoute 7 + 8 + 9, ce qui donne s = 1 + 9 + 24 = 34. C'est la somme de la diagonale et des éléments situés en dessous (le triangle inférieur). Confondre lignes et colonnes en écrivant m[j, i] additionnerait plutôt le triangle supérieur : 1 + 2 + 5 + 3 + 6 + 9 = 26.
Continuer : 9 autres questions sur Bases de la programmation (trace de pseudo-code)