For döngüsünü şarta göre bitirmek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
forisicle
Üye
Mesajlar: 11
Kayıt: 01 May 2019 05:45

For döngüsünü şarta göre bitirmek

Mesaj gönderen forisicle » 15 May 2019 12:10

StringGrid içerisinde for döngüsü ile gerekli yerler formüller ile dolduruluyor 5 sütundaki en son hücreler birbirine eşit olduğu zaman döngünün sonlanmasını istiyorum bunu nasıl gerçekleştirebilirim

Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7497
Kayıt: 09 Haz 2003 11:26
Konum: İstanbul
İletişim:

Re: For döngüsünü şarta göre bitirmek

Mesaj gönderen mussimsek » 15 May 2019 07:19

Break komutu işinizi görür.

Kod: Tümünü seç

var
  i : Integer;
  s : string;

begin
  s := '';

  // A big loop
  for i := 1 to 10 do
  begin
    s := s + IntToStr(i) + ' ';
    // Exit loop when a certain condition is met
    if Random(4) = 2 then Break;
  end;

  ShowMessage('i = '+IntToStr(i));
  ShowMessage('s = '+s);
end;

forisicle
Üye
Mesajlar: 11
Kayıt: 01 May 2019 05:45

Re: For döngüsünü şarta göre bitirmek

Mesaj gönderen forisicle » 15 May 2019 05:14

mussimsek yazdı:
15 May 2019 07:19
Break komutu işinizi görür.

Kod: Tümünü seç

var
  i : Integer;
  s : string;

begin
  s := '';

  // A big loop
  for i := 1 to 10 do
  begin
    s := s + IntToStr(i) + ' ';
    // Exit loop when a certain condition is met
    if Random(4) = 2 then Break;
  end;

  ShowMessage('i = '+IntToStr(i));
  ShowMessage('s = '+s);
end;
döngüden çıkmak yerine daha farklı bir şey düşünüyorum mesela stringgrid içerisinde 6 7 8 9 ve 10. sütunlarda hesaplamalar yapılıyor ve döngü 5000 kere döndürülüyor ama bir süreden sonra o sütünlardaki değerler birbirine eşit oluyor ben bu eşitlik sağlandığında stringgrid satır sayısını o eşitliğin sağlandığı satır kadar yapmak istiyorum atıyorum 100 satırda eşit oldular stringgrid satır sayısı 100 olsun bunu çözemedim if ile deniyorum ama yine bir şey çıkmıyor

Kullanıcı avatarı
sunye
Üye
Mesajlar: 101
Kayıt: 24 Ağu 2004 03:49
Konum: izmir

Re: For döngüsünü şarta göre bitirmek

Mesaj gönderen sunye » 30 May 2019 09:08

For yerine repeat untili kullanabilirsin. Until için şartı kontrol edersin döngü otomatik biter. Döngü içerisinde de değişkeni sürekli 1 artırırsan elinde grid satır sayısı olur.
Bildiğim tek şey, hiç bir şey bilmediğim.

ertank
Üye
Mesajlar: 1192
Kayıt: 11 Eyl 2015 11:45

Re: For döngüsünü şarta göre bitirmek

Mesaj gönderen ertank » 09 Haz 2019 01:44

forisicle yazdı:
15 May 2019 05:14
mussimsek yazdı:
15 May 2019 07:19
Break komutu işinizi görür.

Kod: Tümünü seç

var
  i : Integer;
  s : string;

begin
  s := '';

  // A big loop
  for i := 1 to 10 do
  begin
    s := s + IntToStr(i) + ' ';
    // Exit loop when a certain condition is met
    if Random(4) = 2 then Break;
  end;

  ShowMessage('i = '+IntToStr(i));
  ShowMessage('s = '+s);
end;
döngüden çıkmak yerine daha farklı bir şey düşünüyorum mesela stringgrid içerisinde 6 7 8 9 ve 10. sütunlarda hesaplamalar yapılıyor ve döngü 5000 kere döndürülüyor ama bir süreden sonra o sütünlardaki değerler birbirine eşit oluyor ben bu eşitlik sağlandığında stringgrid satır sayısını o eşitliğin sağlandığı satır kadar yapmak istiyorum atıyorum 100 satırda eşit oldular stringgrid satır sayısı 100 olsun bunu çözemedim if ile deniyorum ama yine bir şey çıkmıyor
Merhaba,

Mevcut kodunuzu paylaşabilir misiniz?

Cevapla