Questão FC374691
Qual das alternativas a seguir corresponde à sequência correta dos elementos que são escritos pelo algoritmo?
Algoritmos e Lógica de Programação
Instituto Consulplan · 2024
Arrays multidimensionais, ou matrizes, são tabelas de elementos organizados em linhas e colunas. Em Portugol, matrizes são representadas como arrays de arrays, permitindo o acesso aos elementos usando índices de linha e coluna. A forma de inicialização de uma matriz em Portugol se assemelha à utilizada em várias outras linguagens de programação. Por exemplo:
cadeia B[4][4] = {
{"sol", "lua", "terra", "marte"},
{"venus", "mercúrio", "júpiter", "saturno"},
{"urano", "netuno", "plutão", "ceres"},
{"haumea", "makemake", "eris", "sedna"}
}
Analise o algoritmo em Portugol abaixo, que percorre a matriz B usando uma lógica de saltos calculados para acessar elementos de forma não sequencial:
programa{
funcao inicio()
{
cadeia B[4][4] = {{"sol", "lua", "terra", "marte"},
{"venus", "mercúrio", "júpiter", "saturno"},
{"urano", "netuno", "plutão", "ceres"},
{"haumea", "makemake", "eris", "sedna"}}
inteiro i, j
para (i = 0; i < 4; i++)
{
j = (i * 2 + 1) % 4
escreva(B[i][j] + " ")
}
}
}
Qual das alternativas a seguir corresponde à sequência correta dos elementos que são escritos pelo algoritmo?
- “sol”, “júpiter”, “ceres”, ‘eris”.
- “terra”, “vênus”, “plutão”, “sedna”.
- “lua”, “saturno”, “netuno”, “sedna”.
- “lua”, “saturno”, “urano”, “makemake”.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
O índice de coluna é calculado por j usando a expressão \(j = (i \times 2 + 1) \bmod 4\). Para cada linha i (0..3) o algoritmo calcula j e imprime B[i][j].
Calculando passo a passo:
i = 0 → \(j=(0\times2+1)\bmod4=1\) → B[0][1] = lua.
i = 1 → \(j=(1\times2+1)\bmod4=3\) → B[1][3] = saturno.
i = 2 → \(j=(2\times2+1)\bmod4=1\) → B[2][1] = netuno.
i = 3 → \(j=(3\times2+1)\bmod4=3\) → B[3][3] = sedna.
Assim, a sequência impressa é: “lua”, “saturno”, “netuno”, “sedna”. A alternância ocorre porque a operação \(\bmod 4\) faz j oscilar entre 1 e 3 ao multiplicar i por 2 e somar 1.
Conteúdo do catálogo FC Concursos · Atualizado em