Questão 45 · Informática: Programação e algoritmos
Assinale a opção que indica o resultado apresentado para o seguinte script. #!/bin/bash echo "Resultado..." for i in {0..12..2} do a=$ (($ i%3)) if [ $ a -eq 0 ] then echo "Alo valor $ i" fi done
- A) Resultado... Alo valor 0 Alo valor 12 Alo valor 2
- B) Resultado... Alo valor 0 Alo valor 6 Alo valor 12
- C) Resultado... Alo valor 0 Alo valor 1 Alo valor 2
- D) Resultado... Alo valor 1 Alo valor 2 Alo valor 3
- E) Resultado...
Marque a alternativa correta:
Gabarito: B
Gabarito definitivo divulgado pela banca Cebraspe (MP/AP 2021).
Comentário
Gabarito: B.
O laço percorre i de 0 a 12 com passo 2: 0, 2, 4, 6, 8, 10 e 12 (só valores pares). Para cada um calcula-se a = i % 3 (resto da divisão por 3) e imprime-se "Alo valor i" apenas quando a = 0:
- 0 % 3 = 0 imprime
- 2 % 3 = 2 não
- 4 % 3 = 1 não
- 6 % 3 = 0 imprime
- 8 % 3 = 2 não
- 10 % 3 = 1 não
- 12 % 3 = 0 imprime
A saída é "Resultado...", "Alo valor 0", "Alo valor 6" e "Alo valor 12", alternativa B.
- (A) Inclui "Alo valor 2", mas 2 % 3 = 2, diferente de 0, então não é impresso; além disso, a saída seria em ordem crescente (0, 6, 12), nunca 0, 12, 2.
- (C) Inclui os valores 1 e 2: o 1 nem é percorrido (o passo 2 gera apenas pares) e o 2 tem resto 2, não 0.
- (D) Inclui os valores 1, 2 e 3: o 1 e o 3 não são percorridos (passo 2 a partir de 0 gera só pares), o 2 tem resto 2, e ainda faltam 0, 6 e 12, que são impressos.
- (E) Mostra só o cabeçalho, mas o valor 0 (resto 0) já satisfaz a condição e é impresso, assim como 6 e 12.
Dica: nas questões de script, monte a tabela de valores do laço antes de testar a condição; o passo do intervalo {0..12..2} é o detalhe que costuma enganar.
Fundamentos: Sintaxe do Bash: expansão {início..fim..passo} e aritmética $((i%3)) · Cálculo do resto de i por 3 para os valores pares de 0 a 12
Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.
Fonte: prova Cebraspe MP/AP 2021 (Analista Ministerial – Especialidade: Tecnologia da Informação), questão 45, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.