Informática, perguntado por valdivo, 1 ano atrás

Qual o resultado da execução do programa abaixo? (Faça o teste de mesa)
#include
#include
main(){
for (int i = 3; i < 100; i = i*2){
printf(“%d”, i);
}
getch();

Soluções para a tarefa

Respondido por cledersonbc
1
Primeiro que vai dar um erro porque no header não foi incluído libs para pré-processamento.
Desconsiderando isso, o programa faz o seguindo:

* Inicia uma laço com "i" no valor 3
* A variável "i" será menor que 100, ou seja, será incrementado de um valor
* A variável "i" será igual a ela mesma multiplicada sempre por 2 até ser menor que 100.

Saída:
i = 3;
i * 2 = 6
i * 2 = 12
i * 2 = 24
i * 2 = 48
i * 2 = 64 (Como 64 ainda é < que 100, o laço repetirá)
i * 2 = 128 //O programa para aqui por i é maior que 100.

valdivo: muito obrigado meu jovem, muito bem detalhado
cledersonbc: De nada ^^
valdivo: Obss: ai i * 2 = 64 não seria 96, pois seria i * 48 = 96
cledersonbc: Sim, é verdade! Perdoe-me, foi por distração.
96
192.
Perguntas interessantes