Solución:
La
traza del programa es:
Secuencia: |
Acción
(instrucción): |
Valor
de:
i |
Valor
de:
r |
1 |
i
=
4; |
4 |
? |
2 |
r
= 2; |
4 |
2 |
3 |
(Comprobar
si i
+
1 >=
r) |
4 |
2 |
|
5 >= 2
se evalúa a 1.
La condición es verdadera.
Inicio de la iteración 1. |
|
|
4 |
(Evaluar
i
%
2) |
4 |
2 |
|
4
%
2 se evalúa a 0.
La condición es falsa.
|
|
|
5 |
r--; |
4 |
1 |
6 |
printf( "%d", r ); |
4 |
1 |
7 |
i++; |
5 |
1 |
|
Fin
de la iteración 1. |
|
|
8 |
(Comprobar
si i
+
1 >=
r) |
5 |
1 |
|
6
>= 1
se evalúa a 1.
La
condición es verdadera.
Inicio de la iteración 2. |
|
|
9 |
(Evaluar
i
%
2) |
5 |
1 |
|
5
%
2 se evalúa a 1.
La condición es verdadera. |
|
|
10 |
r += 7; |
5 |
8 |
11 |
printf( "%d", r ); |
5 |
8 |
12 |
i++; |
6 |
8 |
|
Fin
de la iteración 2. |
|
|
13 |
(Comprobar
si i
+
1 >=
r) |
6 |
8 |
|
7
>= 8
se evalúa a 0.
La
condición es falsa.
El bucle
finaliza después de 2 iteraciones. |
|
|
14 |
return 0; |
6 |
8 |
Figura. Traza
de la pregunta 13.1 del Test de Autoevaluación del
capítulo 13.
Por
tanto, en pantalla se muestra:
18
→ A
es VERDADERA