Para cada programa a seguir, monte a tabela de acompanhamento, exibindo o valor das variáveis após a execução de cada instrução.
a=8
b=5
while (a+b<20):
c=a-b
if (c>4):
d=7+c
else:
d=2+c
a=a+1
b=b+2

Passo 1

O enunciado pede que acompanhemos, passo a passo, o valor das variáveis após cada instrução do seguinte trecho em Python (estrutura de repetição e de decisão):
a \(=8\)
b \(=5\)
while (a \(+\) b < \(20\)):
    c \(=\) a - b
    if (c > \(4\)):
        d \(=7+\) c
    else:
        d \(=2+\) c
    a \(=\) a \(+1\)
    b \(=\) b \(+2\)
Vamos montar uma tabela de acompanhamento com as colunas Instrução, a, b, c, d e preencher o valor após cada atribuição.

Passo 2

Registramos as duas primeiras atribuições e iniciamos a tabela:
Instrução a b c d
a = 8 8
b = 5 8 5

Passo 3

Primeira iteração do while, já que 8+5=13<20:
Instrução a b c d
c = a - b 8 5 8 - 5 = 3
d = 2 + c 8 5 3 2 + 3 = 5 a = a + 1 9 5 3 5 b = b + 2 9 7 3 5

Passo 4

Segunda iteração, pois 9+7=16<20:
Instrução a b c d
c = a - b 9 7 9 - 7 = 2 5 d = 2 + c 9 7 2 2 + 2 = 4 a = a + 1 10 7 2 4 b = b + 2 10 9 2 4

Passo 5

Terceira iteração, pois 10+9=19<20:
Instrução a b c d
c = a - b 10 9 10 - 9 = 1 4 d = 2 + c 10 9 1 2 + 1 = 3 a = a + 1 11 9 1 3 b = b + 2 11 11 1 3
Na próxima verificação 11+11=22>=20, o loop termina.

Resposta

Instrução a b c d
a = 8 8
b = 5 8 5
c = a - b 8 5 3
d = 2 + c 8 5 3 5 a = a + 1 9 5 3 5 b = b + 2 9 7 3 5 c = a - b 9 7 2 5 d = 2 + c 9 7 2 4 a = a + 1 10 7 2 4 b = b + 2 10 9 2 4 c = a - b 10 9 1 4 d = 2 + c 10 9 1 3 a = a + 1 11 9 1 3 b = b + 2 11 11 1 3

Exercícios relacionados