comando For..end incrementado?

Delphi

05/10/2003

como faço para que um For seja incrementado de 2?
ex:
For i := 1 to 50 do
comandos;
//neste caso o valor de i será incrementado de 1, ou seja, 1, 2, 3, 4...
//mas eu gostaria que ele fosse incrementado de 2, ou seja, 1, 3, 5, 7...

se eu fizer
For i := 1 to 50 do begin
comandos;
inc(i, 2);
end;
//não funciona pq a variável do loop ´i´ não pode ser incrementada desta forma.


Milton Júnior

Milton Júnior

Curtidas 0

Respostas

Adilsond

Adilsond

05/10/2003

I := 1;
while i <= 50 do
begin
comandos;
inc(i, 2);
end;


GOSTEI 0
Ariovaldo Ferreira

Ariovaldo Ferreira

05/10/2003

Existe uma sintaxe no pascal que era
For i:=1 to 50 do pass 2, porém não lembro corretamente como era e isso foi transferido para o delphi

não sei se te ajudei.


GOSTEI 0
Rafaelgm

Rafaelgm

05/10/2003

A solução mais simples a meu ver seria a seguinte:
Para fazer um comando FOR que vai de 1 a N com saltos de INC:

for VARIAVEL := 1 to N do
  if VARIAVEL mod INC = 1 then
  begin
    // Seu código aqui
  end;


Abraços,

Rafael Monteiro


GOSTEI 0
Beppe

Beppe

05/10/2003

[quote:6436bbc117=´Ariovaldo Ferreira´]Existe uma sintaxe no pascal que era
For i:=1 to 50 do pass 2, porém não lembro corretamente como era e isso foi transferido para o delphi

não sei se te ajudei.[/quote:6436bbc117]

Nunquinha!


GOSTEI 0
Rfpsatin

Rfpsatin

05/10/2003

q saiba delphi não permite isto...

java por exemplo permite.


GOSTEI 0
Bacalhau

Bacalhau

05/10/2003

No Pascal era permitido fazer

for i := 1 to 50 step 2 do ......

Tentei no Delphi e ele mandou-me para o outro lado... eheheh

Um ciclo repeat serve? Cá vai:

i := 1;
repeat
<bla, bla, bla... comandos... mais bla bla bla...>

i := i + 2;
until i >= 50;


GOSTEI 0
POSTAR