Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

<= ou == Uma dúvida que sempre tive...

Uma dúvida que sempre tive...

Por que um for só funciona com a condição <= e não com ==. Por exemplo: Quero imprimir todos os números de 1 a 100:

se fizer isso:for(int i = 0; i <=100; i++) vai funcionar.

se fizer isso:for(int i = 0; i ==100; i++) não vai funcionar.

Pelo o que entendo, ambos pagariam o intervalo de 0 a 100.

i = 0; i== 100 --> Números que vão de quando o i vale 0 até quando o i vale 100.

2 respostas
solução!

Oi Gustavo, na verdade o segundo for não é "enquanto i não valer 100" é justamente o contrário, ele só vai entrar nessa condição quando o i valer exatamente 100.

Vamos passo a passo,

Você iniciou o i valendo 0

A segunda coisa que acontece é verificar a condição do for que é i == 100, como i vale 0 a condição fica

0 == 100 // o que retorna false

Portanto ele nem entra no for.

Agora quando a condição é com <=

0 <= 100 // o que retorna true.

Ficou mais claro a diferença?

Espero ter ajudado, abraços e bons estudos.

Gustavo, boa tarde!

Isso é a mesma coisa em todas as linguagens.

A instrução do meio é um while, ou seja, enquanto i for menor que 100.