Considere os abaixo algoritmos e responda:
Algoritmo 1 Algoritmo 2
Algoritmo 2: Calcule o número de vezes que o texto Olá será impresso considerando & int count =0 ; & int i ; & for (i=0 ; i.

Passo 1

Beleza, a questão é sobre o Algoritmo 2. Ele faz um laço onde a variável i começa em 1 e a cada iteração é multiplicada por 2 até ultrapassar n. Dentro do laço, tem uma condição que testa se i é par (i % 2 == 0) e, se for, imprime “Olá”.
Conteúdo: estruturas de repetição (loop), operador módulo e progressão geométrica.
Vamos precisar entender:
  • Como funciona o for com i *= 2.
  • O que significa i % 2 == 0.

Passo 2

Primeiro, vamos listar os valores de i dentro do loop quando n = 15:
O for é for(int i = 1; i <= n; i *= 2), então:
i₁ = 1
i₂ = 1·2 = 2
i₃ = 2·2 = 4
i₄ = 4·2 = 8
i₅ = 8·2 = 16 (aqui já é > 15, então o loop para antes de executar)
Logo, os valores efetivos de i são: 1, 2, 4 e 8.

Passo 3

Agora a condição if (i % 2 == 0) imprime “Olá” só quando i é par. Vamos ver cada caso:
  • i = 1 → 1 % 2 = 1 (ímpar) → NÃO imprime
  • i = 2 → 2 % 2 = 0 (par) → imprime
  • i = 4 → 4 % 2 = 0 (par) → imprime
  • i = 8 → 8 % 2 = 0 (par) → imprime

Passo 4

Contando os “ins” da condição par, temos 3 impressões: para i=2, i=4 e i=8.

Resposta

O texto “Olá” será impresso 3 vezes.

Exercícios relacionados