Analise o algoritmo Teste apresentado a seguir:1234567891011...
Analise o algoritmo Teste apresentado a seguir:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
Algoritmo“Teste” Var Res, X, Y: real Inicio procedimento ENTRADA() Inicio escreval(“”) escreva(“X: “) leia(X) escreva(“Y: “) leia(Y) fimprocedimento procedimento SAIDA() inicio escreval(“”) se X > Y então RES <- X – Y senão RES <- Y – X fimse escreval (“RES: “,RES) escreval (“”) fimprocedimento repita ENTRADA() SAIDA() Até X=Y Fimalgoritmo |
Ao executar esse algoritmo, o que acontece quando se lê o mesmo valor 10 para as variáveis X e Y?
- Gabarito Comentado (1)
- Aulas (1)
- Comentários (0)
- Estatísticas
- Cadernos
- Criar anotações
- Notificar Erro
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: A
Vamos entender o algoritmo "Teste" descrito na questão. Este algoritmo realiza a leitura de dois valores reais, X e Y, através do procedimento ENTRADA(). Depois, ele executa o procedimento SAIDA() para calcular e exibir a diferença absoluta entre X e Y.
O algoritmo é repetido até que X e Y sejam iguais, conforme a estrutura de repetição repita...até:
repita
ENTRADA()
SAIDA()
Até X = Y
No procedimento SAIDA(), a diferença entre X e Y é calculada e exibida. O algoritmo verifica se X é maior que Y:
se X > Y então
RES <- X – Y
senão
RES <- Y – X
fimse
Assim, o valor absoluto da diferença (RES) é sempre calculado e exibido. Vamos analisar as alternativas:
A - Correta: Se X e Y forem ambos 10, a diferença X - Y será 0. Este valor é exibido e o algoritmo termina, pois a condição X = Y é satisfeita.
B - Incorreta: A alternativa diz que o procedimento ENTRADA() é chamado novamente após exibir o valor 0. Isso não é verdade, pois o algoritmo termina quando X = Y.
C - Incorreta: A alternativa sugere que nenhum valor é exibido porque X não é maior nem menor que Y. No entanto, o algoritmo exibe 0 como resultado da operação.
D - Incorreta: Novamente, a alternativa diz que o procedimento ENTRADA() é chamado novamente, mas o algoritmo termina quando X = Y.
E - Incorreta: A alternativa alega que o algoritmo não pode ser executado porque X = Y não satisfaz a condição do comando condicional. Contudo, a condição X = Y é exatamente a condição de término do loop.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo