Logo Passei Direto
Buscar
Pergunta 11 (1 ponto) Uma equipe de engenharia de software foi incumbida de implementar uma funcionalidade para validar números utilizados como identificadores internos em um sistema de cadastro. De acordo com o critério definido, apenas números primos — ou seja, aqueles divisíveis apenas por 1 e por eles mesmos — são considerados válidos. Para atender a esse requisito, foi sugerido um algoritmo simples de verificação, descrito a seguir em pseudocódigo: Com base na estrutura e na lógica do algoritmo apresentado, avalie as afirmativas a seguir. I) A substituição da condição i ≤ sqrt(n) por i < n torna o algoritmo mais eficiente. II) A presença do incremento de i no interior do laço configura uma estrutura recursiva. III) A variável isPrime deve ser inicializada como true, pois representa a suposição inicial de que o número é primo. IV) A utilização de sqrt(n) como limite superior do laço reduz a quantidade de verificações, sem comprometer o funcionamento da lógica. É correto o que se afirma em Opções da pergunta 11: A) I e II, apenas. B) I e III, apenas. C) III e IV, apenas. D) I, II e III, apenas. E) I, II, III e IV.
User badge image
Paulino

ontem

User badge image
Paulino

ontem

Respostas

User badge image

Ed Verified user icon

ontem

Vamos analisar cada afirmativa: I) A substituição da condição i ≤ sqrt(n) por i < n torna o algoritmo mais eficiente. Falso. A condição i ≤ sqrt(n) é mais eficiente porque não é necessário verificar divisores maiores que a raiz quadrada de n. Portanto, essa substituição não torna o algoritmo mais eficiente. II) A presença do incremento de i no interior do laço configura uma estrutura recursiva. Falso. O incremento de i no laço não caracteriza uma estrutura recursiva. Recursão envolve uma função chamando a si mesma, enquanto aqui estamos apenas lidando com um laço iterativo. III) A variável isPrime deve ser inicializada como true, pois representa a suposição inicial de que o número é primo. Verdadeiro. Inicializar isPrime como true é correto, pois a suposição inicial é que o número é primo até que se prove o contrário. IV) A utilização de sqrt(n) como limite superior do laço reduz a quantidade de verificações, sem comprometer o funcionamento da lógica. Verdadeiro. Usar sqrt(n) como limite superior é uma prática comum para otimizar a verificação de primalidade, pois não é necessário verificar divisores maiores que a raiz quadrada do número. Com base nas análises, as afirmativas verdadeiras são III e IV. Portanto, a alternativa correta que contém todos os itens verdadeiros é: C) III e IV, apenas.

Essa resposta te ajudou?

0
Dislike0

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina