Questão FC95983
Julgue o item a seguir, relativos a conceitos de R. A execução do seguinte código R retorna 10100 como resultado. funcaoXX <- function(n) { if(n > 1) { funcaoXX(as.integer(n/2)) }
Linguagens de Programação
CEBRASPE (CESPE) · 2022
A execução do seguinte código R retorna 10100 como resultado.
funcaoXX <- function(n) {
if(n > 1) {
funcaoXX(as.integer(n/2))
}
cat(n %% 2)
}
funcaoXX(20)
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
Comentário: O código define uma função recursiva que converte um número em sua representação binária, imprimindo os restos da divisão por 2, que correspondem aos dígitos binários. Ao chamar `funcaoXX(20)`, a função executa as chamadas recursivas até que `n` seja menor ou igual a 1, imprimindo os restos na ordem inversa. Para o número 20, a sequência de divisões resulta nos restos 0, 1, 0, 1, que ao serem impressos na ordem correta formam o número binário 10100. Portanto, a execução do código retorna 10100, confirmando que a afirmação é correta.
Conteúdo do catálogo FC Concursos · Atualizado em