Analise o algoritmo Teste apresentado a seguir:1234567891011...

Próximas questões
Com base no mesmo assunto
Q2645108 Arquitetura de Software

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?

Alternativas

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