Questão FC266039
Analise o algoritmo abaixo, no qual ocorre passagem de parâmetros por referência de ST para X e de LG para W e por valor de NR para Y. algoritmo "PPMM" var ST : caracter NR : intei
Algoritmos e Lógica de Programação
IDECAN · 2021
Analise o algoritmo abaixo, no qual ocorre passagem de parâmetros por referência de ST para X e de LG para W e por valor de NR para Y.
algoritmo "PPMM"
var
ST : caracter
NR : inteiro
LG : logico
procedimento IFCE(var X:caracter; Y:inteiro;var W:logico)
inicio
X <- "ARACATI"
Y <- 2020
W <- VERDADEIRO
fimprocedimento
inicio
ST <- "JUAZEIRO"
NR <- 2022
LG <- FALSO
escreval("ST = ",ST:10," NR =",NR:4," LG =",LG)
IFCE(ST,NR,LG)
se LG = VERDADEIRO entao
NR <- 2021
fimse
escreva("ST =",ST:10," NR =",NR:4," LG =",LG)
fimalgoritmo
Ao final da execução, serão mostrados para as variáveis ST, NR e LG, respectivamente, os seguintes conteúdos:
- JUAZEIRO, 2021 e FALSO.
- ARACATI, 2021 e VERDADEIRO.
- ARACATI, 2020 e VERDADEIRO.
- JUAZEIRO, 2022 e VERDADEIRO.
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
No enunciado há diferença de parâmetros: passagem por referência para ST (X) e LG (W) e passagem por valor para NR (Y). Isso significa que alterações em X e W dentro de IFCE afetam as variáveis originais, enquanto alterações em Y não.
O procedimento IFCE faz X ← "ARACATI", Y ← 2020 e W ← VERDADEIRO. Assim, ao retornar, ST passa a conter "ARACATI" e LG fica VERDADEIRO. A atribuição Y ← 2020 não altera NR do escopo principal.
Em seguida, executa-se o teste: como LG é VERDADEIRO, executa-se NR ← 2021 no programa principal, atualizando NR.
Portanto, os valores finais são: ST = ARACATI, NR = 2021 e LG = VERDADEIRO.
Conteúdo do catálogo FC Concursos · Atualizado em