Considere o código abaixo, escrito na linguagem de programa...

Próximas questões
Com base no mesmo assunto
Q1393646 Programação

Considere o código abaixo, escrito na linguagem de programação C++.


#include <iostream>

usingnamespacestd;

intmain(){

int A = 0, B = 7, C = 4, D = 3;

for (A = 0; A < B; A++)

D = D + 1;

for (A = 0;A <= C; A++)

D = D + 2;

if (D>=20)

cout<< "SISTEMAS OPERACIONAIS";

else

cout<< "REDES DE COMPUTADORES";

}


Assinale a alternativa que apresenta o valor que a variável D apresentará ao final da execução do programa e qual mensagem aparecerá na tela do computador.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a B - D = 20 e "SISTEMAS OPERACIONAIS".

Para resolver essa questão, é necessário compreender o funcionamento das estruturas de repetição for na linguagem de programação C++ e como essas estruturas interagem com a variável D ao longo do código.

O primeiro laço for inicializa A com 0 e o incrementa enquanto ele for menor que B, que é 7. Em cada repetição, incrementa-se o valor de D em 1. Portanto, ao final desse primeiro laço, D, que começou com 3, será incrementado 7 vezes, resultando em D = 3 + 7 = 10.

O segundo laço for reinicializa A com 0 e o incrementa enquanto ele for menor ou igual a C, que é 4. Em cada repetição, incrementa-se o valor de D em 2. Como o teste do laço inclui o próprio valor de C (devido ao uso de <=), haverá 5 repetições (para A = 0, 1, 2, 3, 4). Assim, D será incrementado 5 vezes por 2, resultando em D = 10 + (5 * 2) = 20.

Finalmente, a estrutura condicional if verifica se D é maior ou igual a 20. Como D é exatamente 20, a condição é verdadeira e a mensagem "SISTEMAS OPERACIONAIS" será exibida.

Portanto, o valor final de D será 20, e a mensagem exibida será "SISTEMAS OPERACIONAIS". Isso nos permite concluir que a alternativa correta é a B - D = 20 e "SISTEMAS OPERACIONAIS".

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

Sinteticamente:

No primeiro laço for:

for (A = 0; A < B; A++)

D = D + 1;

Iremos iterar 7 vezes (a= 0 a 6), D valerá 10;

No segundo laço for:

Zeramos o valor da variável A, e iteramos 5 vezes (a = 0 a 4 )

for (A = 0;A <= C; A++)

D = D + 2;

D valerá 20;

if (D>=20)

cout<< "SISTEMAS OPERACIONAIS";

O if será verdadeiro e imprimiremos SISTEMAS OPERACIONAIS

GABARITO ALTERNATIVA B

Clique para visualizar este comentário

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