O programa em FORTRAN abaixo faz a leitura de um número digi...

Próximas questões
Com base no mesmo assunto
Q2319457 Arquitetura de Software
O programa em FORTRAN abaixo faz a leitura de um número digitado pelo usuário e verifica se esse número é primo. Os números à frente das diretivas são apenas para referência como identificador da linha de programa. 
1 - program numeroprimo 2 - integer::i,x,cont 3 - write(*,*) “Entre o numero para testar se e primo ou nao” 4 - read(*,*)x 5 - cont=0 6 - do i=1,x 7 - if(mod(x,i)/=0) then 8 - cont=cont+1 9 - end if 10 - end do 11 - if (cont<=2) then write(*,*)”O numero e primo” else write(*,*) “O numero nao e primo " 12 - end if 13 - end program

Identifique a resposta correta: 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos começar pela alternativa correta para esclarecer a questão:

Alternativa D: A função da diretiva “end if” na linha 9 é finalizar a avaliação do módulo do número inserido definido na linha 7.

A linha 7 contém uma verificação usando a função mod para determinar se o número x é divisível por i. Se essa condição for atendida, o contador cont é incrementado. A linha 9 marca o final deste bloco if, encerrando a verificação. Portanto, a alternativa D é correta.

Agora vamos analisar as alternativas incorretas:

Alternativa A: A linha 2 identifica as variáveis i, x e cont como números integrais.

Comentário: Na linha 2, as variáveis corretas são i, x e cont. A alternativa menciona j em vez de i, o que torna essa alternativa incorreta.

Alternativa B: A atribuição do contador “cont = 0” na linha 5 não é necessária.

Comentário: Inicializar o contador cont com valor zero é essencial para garantir que ele comece do estado inicial correto antes de entrar no laço do. Sem isso, o contador poderia conter um valor residual de execuções anteriores, levando a resultados errados.

Alternativa C: A linha 11 possui uma diretiva “if” que identifica o número inserido pelo usuário como inferior a 2 sempre.

Comentário: A linha 11 verifica se o contador cont é igual a 2 para identificar se o número é primo. Este if não considera o valor de entrada diretamente, mas verifica a quantidade de divisores que o número x teve. Logo, essa alternativa está incorreta.

Alternativa E: Nenhuma das alternativas está correta.

Comentário: Esta alternativa é incorreta porque já identificamos que a alternativa D está correta.

Resumo e Conhecimentos Necessários:

Para resolver essa questão, é fundamental entender a estrutura básica de um programa em FORTRAN, incluindo a declaração de variáveis, a utilização de laços de repetição (do), e as condicionais (if). Também é importante compreender como se determina se um número é primo, que envolve verificar a divisibilidade desse número pelos números menores que ele.

Essa questão testa a capacidade do candidato de entender e rastrear a lógica de um código, além de identificar a função específica de cada parte do programa. Atenção aos detalhes e conhecimento da sintaxe de FORTRAN são essenciais para responder corretamente.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo