Filtrar


Questões por página:

Analise as afirmativas abaixo sobre lógica de programação e assinale a alternativa correta.


I.  A estrutura de seleção If/Else (Se/Então) permite alterar o fluxo de execução do algoritmo, de forma a selecionar qual parte do algoritmo deve ser executada.


II. A estrutura de repetição For (Para/Faça) permite que uma sequência de instruções seja executada várias vezes.


III. Um algoritmo é uma sequência de passos que podem ser executados em qualquer ordem.


IV. Variáveis lógicas podem assumir valores “verdadeiro”, “falso” e “neutro”.


V. O operador “>” é um operador lógico.


Sobre os algoritmos de ordenação Merge Sort e Bubble Sort (Método da Bolha), assinale a alternativa INCORRETA: 
A Ordenação por Inserção (Insertion Sort) é um algoritmo eficiente para ordenar um número pequeno de elementos (Cormen et al., 2024). Em cada passo, a partir de i = 2, o i-ésimo elemento da sequência é transferido para o seu lugar apropriado no arranjo (vetor).

Sobre o método de ordenação por inserção, assinale a alternativa INCORRETA:
Um método recursivo é aquele que chama a si mesmo, direta ou indiretamente. Métodos recursivos permitem uma descrição mais clara e concisa dos algoritmos, especialmente quando o problema a ser resolvido pode ser definido em termos recursivos. No entanto, isso não significa que um método recursivo será sempre a melhor opção para resolver um problema (Ziviani, 2012).
O código em Python, a seguir, tem como objetivo calcular, recursivamente, o n-ésimo número de Fibonacci. Esse código é extremamente ineficiente, pois recalcula o mesmo valor várias vezes. Por exemplo, para calcular fib(5) são necessários os valores de fib(4) e fib(3). Entretanto, fib(4) também chama recursivamente fib(3). 
Imagem associada para resolução da questão
Considerando a execução do código apresentado para n = 5, assinale a alternativa que representa CORRETAMENTE o número de chamadas de fib(5), fib(4), fib(3), fib(2) e fib(1), nessa ordem. 
Durante o desenvolvimento de um sistema interno de controle de chamados em um órgão público, um técnico de tecnologia da informação foi encarregado de revisar a lógica de um algoritmo responsável por registrar e classificar solicitações de usuários. Para isso, ele analisou um pseudocódigo inicial elaborado por outro membro da equipe, cujo objetivo é contabilizar quantos chamados possuem prioridade alta. Considere o seguinte pseudocódigo simplificado:

Imagem associada para resolução da questão

Com base nos conceitos de lógica de programação, algoritmos, fluxogramas, pseudocódigo, variáveis, operadores e estruturas de decisão e repetição, analise as assertivas a seguir e assinale V, para verdadeiro, ou F, para falso:

(__)O valor de N funciona como variável de controle da repetição, determinando quantas vezes o bloco de instruções será executado.
(__)A variável contador atua como acumulador, sendo incrementada condicionalmente dentro da estrutura de decisão.
(__)Em um fluxograma equivalente, a verificação da prioridade seria representada por um símbolo de decisão, normalmente indicado por um losango.
(__)Caso o comando de incremento estivesse fora da estrutura condicional, o algoritmo ainda contabilizaria apenas os chamados de prioridade alta.
(__)A leitura da variável prioridade ocorre dentro da estrutura de repetição porque o algoritmo precisa avaliar múltiplos registros de chamados.
(__)A substituição da estrutura "para i de 1 até N" por uma estrutura "enquanto" exigiria um mecanismo adicional de controle da variável de iteração.

Assinale a alternativa que apresenta a sequência CORRETA de V (verdadeiro) e F (falso):