Múltiplos de 2 com um loop infinito. Escreva um programa que continue imprimindo os múltiplos do inteiro 2, a saber 2, 4, 8, 16, 32, 64 e assim por diante. Seu loop não deverá terminar (ou seja, você deverá criar um loop infinito). O que acontece quando você executa esse programa?
Passo 1
Fala Galera!!! Tudo certo? Espero que sim!!! Bora para mais um exercício.
Vamos criar um programa que contenha um loop infinito de múltiplos de 2, ou seja, vamos multiplicar o numero 2 por eles mesmo infinitas vezes. Para isso vamos usar uma estrutura de repetição sem condição se parada.
Passo 2
Escrevendo o programa:
#include
int main()
{
int multiple = 1; /
/* contador */
/* Loop infinito */
while ( multiple > 0 ) {
/* calcula a próxima potência de dois */
multiple *= 2;
printf( "%d\n", multiple );
} /* end while */
return 0;
} /* end main */
Passo 3
A saída será:

A execução do programa termina quando o maior inteiro é excedido (ou seja, o teste de continuação do loop falha quando o valor máximo de um inteiro é excedido. Em um sistema de 4 bytes, o maior valor inteiro é 2147483647 e qualquer coisa acima que é representado por um número negativo, que falha no teste de continuação de loop).
E assim finalizamos mais um exercício!!! Até o próximo galera!!
Resposta
#include
int main()
{
int multiple = 1;
/* contador */
/* Loop infinito */
while ( multiple > 0 ) {
/* calcula a próxima potência de dois */
multiple *= 2;
printf( " %d\n", multiple );
} /* end while */
return 0;
} /* end main */