Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Döngü eşitlik sağlama
#1
Bir adet stringgridim var içerisini bir döngü sayesinde dolduruyorum 7000 satır var hepsi doluyor ama şunu yapmak istiyorum 5 adet sütun misal 6 7 8 9 10. sütunlardaki en son değerler birbirine eşit olunca stringgrid satır sayısının o satıra kadar olmasını istiyorum yani 2900 de eşit olursa satır sayısı 2900 olsun. 2. for döngüsü ile denedim ama yapamadım yardımcı olabilecek birisi var mı?
Cevapla
#2
(17-05-2019, Saat: 17:09)metehangumusay Adlı Kullanıcıdan Alıntı: Bir adet stringgridim var içerisini bir döngü sayesinde dolduruyorum 7000 satır var hepsi doluyor ama şunu yapmak istiyorum 5 adet sütun misal 6 7 8 9 10. sütunlardaki en son değerler birbirine eşit olunca stringgrid satır sayısının o satıra kadar olmasını istiyorum yani 2900 de eşit olursa satır sayısı 2900 olsun. 2. for döngüsü ile denedim ama yapamadım yardımcı olabilecek birisi var mı?

Selamlar Sorunuzu umarım yanlış anlamamışımdır.
Bu kontrolü doldurma sırasında 6,7,8,9,10. sütunlara değeri yazmadan yada yazdıktan sonra karşılaştır ve eşitse döngüden çık (Break)
işini görmez mi
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#3
(17-05-2019, Saat: 18:14)adelphiforumz Adlı Kullanıcıdan Alıntı:
(17-05-2019, Saat: 17:09)metehangumusay Adlı Kullanıcıdan Alıntı: Bir adet stringgridim var içerisini bir döngü sayesinde dolduruyorum 7000 satır var hepsi doluyor ama şunu yapmak istiyorum 5 adet sütun misal 6 7 8 9 10. sütunlardaki en son değerler birbirine eşit olunca stringgrid satır sayısının o satıra kadar olmasını istiyorum yani 2900 de eşit olursa satır sayısı 2900 olsun. 2. for döngüsü ile denedim ama yapamadım yardımcı olabilecek birisi var mı?

Selamlar Sorunuzu umarım yanlış anlamamışımdır.
Bu kontrolü doldurma sırasında 6,7,8,9,10. sütunlara değeri yazmadan yada yazdıktan sonra karşılaştır ve eşitse döngüden çık (Break)
işini görmez mi

hocam döngüyü 2. döngü olarak düşünüyorum yani ilk başta dolduracak 7000 satır sonrasında 2. döngüde tek tek kontrol ettiriyorum eşitlik durumunda stringgrid satır sayısını düşürmek istiyorum döngüden çıkmasını sağlamayı denedim yapamadım 2. seçenek daha makul geldi ama o da işte eşitliğin olduğu satırın kaçıncı satır olduğunu bulmak sıkıntı oluyor
Cevapla
#4
Döngüde seçili olan değerden sonra gelen değer seçili değere eşitse yazmasın gibi birşeymi olucak ?
WWW
Cevapla
#5
(17-05-2019, Saat: 17:09)metehangumusay Adlı Kullanıcıdan Alıntı: Bir adet stringgridim var içerisini bir döngü sayesinde dolduruyorum 7000 satır var hepsi doluyor ama şunu yapmak istiyorum 5 adet sütun misal 6 7 8 9 10. sütunlardaki en son değerler birbirine eşit olunca stringgrid satır sayısının o satıra kadar olmasını istiyorum yani 2900 de eşit olursa satır sayısı 2900 olsun. 2. for döngüsü ile denedim ama yapamadım yardımcı olabilecek birisi var mı?

Kurduğunuz döngü kodunu paylaşır mısınız.
Peyami Safa:"Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır"
Can Yücel:"Toprak gibi olmalısın! Ezildikçe sertleşmelisin! Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı"
Sinan Canan:"Bildiğini zannettiğin an hiç bir şey öğrenemezsin"
WWW
Cevapla
#6
(18-05-2019, Saat: 09:27)esistem Adlı Kullanıcıdan Alıntı: Döngüde seçili olan değerden sonra gelen değer seçili değere eşitse yazmasın gibi birşeymi olucak ?

hayır hocam şöyle şimdi döngüde belli satırlar eşit olunca eşit olunan satır misal 2000. satırsa stringgrid rowcount 2000 olacak ama eşitliğin sağlandığı satırda olacak yani belli bir sayı yok ortada girilen değerlerle eşitlik 3000. satırda da çıkabilir 200. satırda da.

(18-05-2019, Saat: 10:40)uparlayan Adlı Kullanıcıdan Alıntı:
(17-05-2019, Saat: 17:09)metehangumusay Adlı Kullanıcıdan Alıntı: Bir adet stringgridim var içerisini bir döngü sayesinde dolduruyorum 7000 satır var hepsi doluyor ama şunu yapmak istiyorum 5 adet sütun misal 6 7 8 9 10. sütunlardaki en son değerler birbirine eşit olunca stringgrid satır sayısının o satıra kadar olmasını istiyorum yani 2900 de eşit olursa satır sayısı 2900 olsun. 2. for döngüsü ile denedim ama yapamadım yardımcı olabilecek birisi var mı?

Kurduğunuz döngü kodunu paylaşır mısınız.

for satir:=0 to 5000 do
begin

StringGrid1.Cells[2,satir+2]:=FloatToStr(k*(((strtofloat(StringGrid1.Cells[7,satir+1])-strtofloat(StringGrid1.Cells[6,satir+1]))/abs(dx))*((strtofloat(StringGrid1.Cells[7,satir+1])+strtofloat(StringGrid1.Cells[6,satir+1])))/2));
StringGrid1.Cells[3,satir+2]:=FloatToStr(k*(((strtofloat(StringGrid1.Cells[8,satir+1])-strtofloat(StringGrid1.Cells[6,satir+1]))/abs(dx))*((strtofloat(StringGrid1.Cells[8,satir+1])+strtofloat(StringGrid1.Cells[6,satir+1])))/2));
StringGrid1.Cells[4,satir+2]:=FloatToStr(k*(((strtofloat(StringGrid1.Cells[6,satir+1])-strtofloat(StringGrid1.Cells[9,satir+1]))/abs(dx))*((strtofloat(StringGrid1.Cells[6,satir+1])+strtofloat(StringGrid1.Cells[9,satir+1])))/2));
StringGrid1.Cells[5,satir+2]:=FloatToStr(k*(((strtofloat(StringGrid1.Cells[6,satir+1])-strtofloat(StringGrid1.Cells[10,satir+1]))/abs(dx))*((strtofloat(StringGrid1.Cells[6,satir+1])+strtofloat(StringGrid1.Cells[10,satir+1])))/2));

StringGrid1.Cells[6,satir+2]:=FloatToStrF(strtofloat(StringGrid1.Cells[6,satir+1])+strtofloat(StringGrid1.Cells[1,satir+2])/(dx*dx*sy)*(strtofloat(StringGrid1.Cells[2,satir+2])+strtofloat(StringGrid1.Cells[3,satir+2])-strtofloat(StringGrid1.Cells[4,satir+2])-strtofloat(StringGrid1.Cells[5,satir+2])),ffGeneral,8,6);
StringGrid1.Cells[7,satir+2]:=FloatToStrF(strtofloat(StringGrid1.Cells[7,satir+1])-strtofloat(StringGrid1.Cells[1,satir+2])/(dx*dx*sy)*(strtofloat(StringGrid1.Cells[2,satir+2])),ffGeneral,8,6);
StringGrid1.Cells[8,satir+2]:=FloatToStrF(strtofloat(StringGrid1.Cells[8,satir+1])-strtofloat(StringGrid1.Cells[1,satir+2])/(dx*dx*sy)*(strtofloat(StringGrid1.Cells[3,satir+2])),ffGeneral,8,6);
StringGrid1.Cells[9,satir+2]:=FloatToStrF(strtofloat(StringGrid1.Cells[9,satir+1])-strtofloat(StringGrid1.Cells[1,satir+2])/(dx*dx*sy)*(-strtofloat(StringGrid1.Cells[4,satir+2])),ffGeneral,8,6);
StringGrid1.Cells[10,satir+2]:=FloatToStrF(strtofloat(StringGrid1.Cells[10,satir+1])-strtofloat(StringGrid1.Cells[1,satir+2])/(dx*dx*sy)*(-strtofloat(StringGrid1.Cells[5,satir+2])),ffGeneral,8,6);

end;

bu döngü satırları dolduran döngü.

(17-05-2019, Saat: 18:14)adelphiforumz Adlı Kullanıcıdan Alıntı:
(17-05-2019, Saat: 17:09)metehangumusay Adlı Kullanıcıdan Alıntı: Bir adet stringgridim var içerisini bir döngü sayesinde dolduruyorum 7000 satır var hepsi doluyor ama şunu yapmak istiyorum 5 adet sütun misal 6 7 8 9 10. sütunlardaki en son değerler birbirine eşit olunca stringgrid satır sayısının o satıra kadar olmasını istiyorum yani 2900 de eşit olursa satır sayısı 2900 olsun. 2. for döngüsü ile denedim ama yapamadım yardımcı olabilecek birisi var mı?

Selamlar Sorunuzu umarım yanlış anlamamışımdır.
Bu kontrolü doldurma sırasında 6,7,8,9,10. sütunlara değeri yazmadan yada yazdıktan sonra karşılaştır ve eşitse döngüden çık (Break)
işini görmez mi

dediğiniz gibi yaptım break komutu sayesinde eşitlik sağlandı direk döngüden çıktı şimdi tek yapmak istediğim bu döngünün durduğu satır numarasını satır sayısı yapmak yani 200. satırda durduysa satır sayısı 200 olacak
Cevapla
#7
Break öncesinde stringgrid row count = satır değişkeni
PostgreSQL - Linux - Delphi, Poliüretan
WWW
Cevapla
#8
(18-05-2019, Saat: 15:44)3ddark Adlı Kullanıcıdan Alıntı: Break öncesinde stringgrid row count = satır değişkeni

hocam sorunu çözdüm iterasyon değişkenine göre satır sayısını hesaplattım ve satır sayısını eşitlik durumunda iterasyon değerine atadım yani 2907. iterasyonda satır sayısını 2907 yaptırdım.

Yardımlarınız için çok teşekkür ederim
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi 7- 4 Adet Tablo Döngü Problemi bsrgmsy 2 164 20-05-2019, Saat: 17:17
Son Yorum: bsrgmsy
  Nesneleri döngü içerisinde kullanma dnzmobile 8 1.286 19-04-2017, Saat: 09:57
Son Yorum: SimaWB



Konuyu Okuyanlar: 1 Ziyaretçi