Um programa concebido está representado na forma de uma pse...

Próximas questões
Com base no mesmo assunto
Q1836555 Algoritmos e Estrutura de Dados
Um programa concebido está representado na forma de uma pseudolinguagem, ou português estruturado, conforme mostrado a seguir. Início [      Inteiro: x, y, z, i;      x ← 2;      y ← 3;      z ← 0;      Para i de 1 até 5 faça       [          Se (x > y)            Então              [                 y ← y + 1;                 x ← x - 1;               ]               Senão               [                    x ← x + 1;                    y ← y - 1;                ]             z ← z + x - y;      ]      Imprima z;  ]  Fim. O resultado impresso por meio da variável z ao final do programa é
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: Alternativa correta é a B - 1.

Vamos entender por que a alternativa B está correta e analisar as outras opções.

Este exercício testa sua habilidade em interpretar pseudocódigo e simular a execução de um algoritmo. É essencial compreender estruturas de controle como a estrutura de repetição "Para" e a estrutura condicional "Se...Senão".

Vamos analisar o pseudocódigo passo a passo:

Início
    Inteiro: x, y, z, i;
    x ← 2;
    y ← 3;
    z ← 0;
    Para i de 1 até 5 faça
        Se (x > y) Então
            y ← y + 1;
            x ← x - 1;
        Senão
            x ← x + 1;
            y ← y - 1;
        Fim Se
        z ← z + x - y;
    Fim Para
    Imprima z;
Fim.

Passo a Passo:

1. Inicialmente, x = 2, y = 3, z = 0.

2. Vamos iterar de i = 1 até i = 5:

Iteração 1:

x = 2, y = 3 -> x não é maior que y

y ← y - 1 = 2

x ← x + 1 = 3

z ← z + x - y = 0 + 3 - 2 = 1

Iteração 2:

x = 3, y = 2 -> x é maior que y

y ← y + 1 = 3

x ← x - 1 = 2

z ← z + x - y = 1 + 2 - 3 = 0

Iteração 3:

x = 2, y = 3 -> x não é maior que y

y ← y - 1 = 2

x ← x + 1 = 3

z ← z + x - y = 0 + 3 - 2 = 1

Iteração 4:

x = 3, y = 2 -> x é maior que y

y ← y + 1 = 3

x ← x - 1 = 2

z ← z + x - y = 1 + 2 - 3 = 0

Iteração 5:

x = 2, y = 3 -> x não é maior que y

y ← y - 1 = 2

x ← x + 1 = 3

z ← z + x - y = 0 + 3 - 2 = 1

Ao final do loop, z = 1. Portanto, a resposta correta é alternativa B - 1.

Explicando as alternativas incorretas:

  • A - 0: Esta alternativa seria correta se a soma acumulada em z resultasse em 0, mas na última iteração, z é incrementada para 1.
  • C - 2: Esta alternativa não leva em conta as variações de incremento e decremento corretas em z.
  • D - 3: O valor 3 não pode ser obtido com as operações descritas.
  • E - 5: Similarmente, a soma das operações não chega a 5.

Espero que essa explicação tenha ajudado a entender a lógica do pseudocódigo e por que a alternativa correta é a B. Caso tenha mais dúvidas, sinta-se à vontade para perguntar!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

x, y, z, i

x = 2

y = 3

z = 0 

for i in range (5):

if x > y:

y = y + 1 

x = x - 1

else:

x = x + 1

y = y - 1

z = z + x - y

print (z)

// laços

1: x = 3; y = 2; z = 1

2: x = 2; y = 3; z = 0

3: x = 3; y = 2; z = 1

4: x = 2; y = 3; z = 0 

5: x = 3; y = 2; z = 1

Qualquer erro pf me corrijam, e sucesso galera

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo