Marcos, um analista do TJ contratado para otimizar o desempenho de um servidor de alta capacidade, enfrenta desafios com lentidão durante períodos de alta demanda. Uma investigação minuciosa revelou que a raiz do problema reside na gestão ineficaz da memória cache. Para abordar isso, Marcos sugere a adoção de um algoritmo de substituição de cache mais eficiente.
Considerando os algoritmos de substituição de cache mais comuns, Marcos resolverá o problema de desempenho do servidor com o algoritmo:
Julgue os itens seguintes a respeito da construção de algoritmos, dos conceitos de variáveis e de bloco de comandos e das estruturas de controle.
Durante a execução de um programa, o conteúdo de uma variável pode mudar ao longo do tempo, no entanto ela só pode armazenar um valor por vez.
Considere a tabela a seguir, que contém dados do IMC (Índice de Massa Corporal) de uma pessoa, com uma escala típica de valores, dentre as várias existentes.

A fórmula para o cálculo do IMC é

Das expressões abaixo, em pseudocódigo, qual a que expressa corretamente a lógica para calcular e imprimir o IMC dos dois casos extremos da tabela?
A questão refere-se ao algoritmo abaixo, escrito em uma pseudolinguagem. Considere X um arranjo; length, uma função que devolve o tamanho do arranjo passado como parâmetro. A endentação demarca blocos de comandos.

Qual é a característica principal desse algoritmo?
Tendo como referência o algoritmo precedente, julgue o próximo item.
Na linha 6 do algoritmo em pauta, são realizadas cinco unidades de tempo, as quais são executadas n vezes, o que totaliza unidades de tempo.
A questão refere-se ao algoritmo abaixo, escrito em uma pseudolinguagem. Considere X um arranjo; length, uma função que devolve o tamanho do arranjo passado como parâmetro. A endentação demarca blocos de comandos.

Considerando o arranjo X = [5, 2, 4, 6, 1, 3], qual o estado de X após a execução do algoritmo?
Considerando que um algoritmo pode ser entendido como uma ferramenta para resolver um problema computacional bem especificado, analise as afirmações abaixo.
I - Um algoritmo descreve um procedimento compu-tacional específico para obter uma determinada saída que tem um relacionamento com a entrada do algoritmo.
II - Pode-se analisar a eficiência de um algoritmo em termos de tempo de execução e de espaço ocupado.
III - Quando se analisa o “pior caso” em termos de tempo, tenta-se determinar o limite superior de tempo de execução relacionado com o número de elementos de saída do algoritmo.
Quais estão corretas?
Tendo como referência o algoritmo precedente, julgue o próximo item.
A linha 5 do algoritmo em apreço demanda unidades de tempo.
Julgue os itens subsequentes, relativos à lógica de programação.
O pseudocódigo a seguir, após executado, apresentará como
resultado 2.370.
Julgue os itens subsequentes, relativos à lógica de programação.
O pseudocódigo a seguir, após executado, apresentará como resultado 13.
funcao X (n) {
se (n == 1 ou n == 2) então
retorne n;
senão
retorne X (n-1) + n * X (n-2);
}
escreva X(4);
Tendo como referência o algoritmo precedente, julgue o próximo item.
As declarações e a instrução na linha 7 do algoritmo em questão não contribuem para a contagem total de unidades de tempo.
Considere o algoritmo em pseudocódigo descrito a seguir.

Assinale a opção que indica o número de vezes em que o código irá executar a função f para n igual a 8.
Considere o algoritmo em pseudocódigo abaixo.
De acordo com os fundamentos da aritmética computacional e com o pseudocódigo acima,
Considere o seguinte algoritmo de criptografia. Ele irá receber na entrada um string S de caracteres s1,s2,…,sm e irá gerar uma nova sequência C de caracteres de saída c1,c2,…,cn, baseada nas seguintes instruções:
Sobre o algoritmo de criptografia acima, é correto afirmar que
O código de Huffman, comumente utilizado em procedimentos para compressão de dados, baseia-se na utilização de códigos de tamanho: