nerede hata yapiyorum

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

nerede hata yapiyorum

Mesaj gönderen sr1111 »

Döngüde nerede hata yapiyorum.
asagidaki gibi eşit kucuk buyuk denedim olmadi.

yapmak istedigim, sadece memo1 de olmayanlari memo2 ye bakarak memo3 e yazmasi
memo1
elma
patates
portakal
limon

memo2
havuc
elma
lahana
portakal

memo3 olmasi gereken
limon
patates

uğraştigim döngü bu
for i := 0 to memo1.lines.Count - 1 do
for j := 0 to memo2.lines.Count - 1 do
begin
if pos(memo1.lines,memo2.lines[j]) = 1 then /// < > denedim olmadi.
memo3.lines.add(memo1.lines);
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: nerede hata yapiyorum

Mesaj gönderen mkysoft »

2. döngü bittiğinde ekleme işlemini yapmalısınız. birtane boolean değişken tanımlayın. 2 döngüye girmeden bunun değerini false yapın. döngünün içinde eğer aynı kaydı bulursanız değerini true yapın. döngü bittiğinde hala değişkenininzin değeri false ise memo3 e ekleme yapabilirsiniz.
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

Re: nerede hata yapiyorum

Mesaj gönderen sr1111 »

kardeş şunu kodlarla izah etsen iyi olur.
yapamadigim icin yazdim buraya zaten.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: nerede hata yapiyorum

Mesaj gönderen sabanakman »

Kod: Tümünü seç

Memo3.Lines.Clear
for i:=0 to Memo1.Lines.Count-1 do
 if Memo2.Lines.IndexOf(Memo1.Lines[i])<0 then
  Memo3.Lines.Add(Memo1.Lines[i]);
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

Re: nerede hata yapiyorum

Mesaj gönderen sr1111 »

tesekkur ederim.
stringliste cevirdim hizli olsun diye ama genede yavaş kalıyor. daha hizli nasil yapariz bu işlemi acaba
biraz yavas kaliyor buyuk dosyalarda
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: nerede hata yapiyorum

Mesaj gönderen mkysoft »

memoları önce sıralayabilrisiniz.
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

Re: nerede hata yapiyorum

Mesaj gönderen sr1111 »

siralamaktan tam neyi kastettginizi anlayamadim. nasil siralanacak ve ne kazanacagim.
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: nerede hata yapiyorum

Mesaj gönderen ikutluay »

iki kümeyi karşılaştırmanın en kolay yolu sıralanmış kümlerde arama yapmaktır. sana mantığını anlatayım kodlamak sana kalmış. Kümeler sıralanmış ise önce kümenin ortasındaki eleman ile senin aradığın değeri kontrol edersin. Eğer 100 ü arayırosan ve sıralanmış kümedeği ortanca değer bundan büyükse kümenin tamamını tek tek kontrol etmekten kurtulmuş olursun. Böylece mesela 1000 elemnalı bir kümede maksimum 1000 hareketle bulmak mümkünken doğrusal eşitmi değilmi diye tek tek kontrolde sen maksimum 5-10 hamlede sonuca gidersin.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
sr1111
Üye
Mesajlar: 220
Kayıt: 06 Mar 2008 01:59

Re: nerede hata yapiyorum

Mesaj gönderen sr1111 »

tm tesekkur ederim.
benim bunu yapmam icin bayagi usta olmam lazim. o zamana kadar bekleyecegiz anlasilan.
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: nerede hata yapiyorum

Mesaj gönderen ikutluay »

alakası yok. sıralama algoritmaları internette bolca bulunur ve örnekleride ... zaten herbiri belli bir materyale göre yazılmıştır. aklımda kalanlar quicksort, bubble sort ve shell sort olsa gerek. ama hafızam yanıltıyor olabilir. çünkü eskiden bunları biz elle kodlarken şimdi

bir çok component hazır sort metodları ile geliyor.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
Cevapla