Пример #1
0
 public void kelimeyiSec(List <string> musicalInstrument, KontrolOzellik[] kontrolDizisi, string kelime, int kontrolSayisi, int harfSayisi, int i)
 {
     if (kontrolDizisi[i] != null && kelime.Length <= (((kontrolDizisi[i].Indis - kontrolSayisi)) + harfSayisi))
     {
         if (UygunMu(kelime, kontrolDizisi[i].Harf, kontrolSayisi, harfSayisi) == true)
         {
             var uygunKelime = new UygunKelimelerClass()
             {
                 MusicalEnsturment = kelime,
                 Sayi = kontrolDizisi[i].Indis - BaslangicIndis
             };
             uygunKelimeler.Add(uygunKelime);
         }
         else
         {
             hicHarfYok = true;
         }
     }
 }
Пример #2
0
    public void YereUygunKelimeSec(int TersMiDuzMu)
    {
        for (int i = 0; i < kontrolDizisi.Length; i++)
        {
            if (kontrolDizisi[i]?.Sayi == 0)
            {
                hicHarfYok = false;
                KontrolEdilebilecekIndisleriBulma(i, i);
                if (kontrolSayisi > 1 && harfSayisi > 0)
                {
                    if (TersKelimeler == false || TersMiDuzMu == 0)
                    {
                        foreach (var item in musicalInstruments)
                        {
                            kelimeyiSec(musicalInstruments, kontrolDizisi, item, kontrolSayisi, harfSayisi, i);
                        }
                    }
                    if (TersKelimeler == true && TersMiDuzMu == 1)
                    {
                        foreach (var item in musicalInstruments)
                        {
                            char[] harfler = item.ToCharArray();
                            Array.Reverse(harfler);
                            string tersMusicalInstrument = new string(harfler);

                            kelimeyiSec(musicalInstruments, kontrolDizisi, tersMusicalInstrument, kontrolSayisi, harfSayisi, i);
                        }
                    }
                }
            }
        }
        if (hicHarfYok == true || uygunKelimeler.Count == 0)
        {
            enBuyukBosluklar = new List <EnBuyukBosluklar>();
            hicHarfYok       = true;
            var enBuyukBosluk = new EnBuyukBosluklar();

            for (int i = 0; i < kontrolDizisi.Length; i++)
            {
                if (kontrolDizisi[i] != null)
                {
                    if ((kontrolDizisi[i].Sayi == 0 && kontrolDizisi[i].Indis >= 2 && kontrolDizisi[i - 1].Sayi != 0))
                    {
                        enBuyukBosluk.enBuyukBosluk = kontrolDizisi[i - 1].Sayi;
                        enBuyukBosluklar.Add(enBuyukBosluk);
                        enBuyukBosluk = new EnBuyukBosluklar();
                    }
                    if (kontrolDizisi[i].Indis == (DiziBuyuklugu - 1))
                    {
                        enBuyukBosluk.enBuyukBosluk = kontrolDizisi[i].Sayi;
                        enBuyukBosluklar.Add(enBuyukBosluk);
                        enBuyukBosluk = new EnBuyukBosluklar();
                    }
                    if (kontrolDizisi[i].Sayi == 1)
                    {
                        enBuyukBosluk.BoslukBaslangicIndexi = kontrolDizisi[i].Indis;
                    }
                }
            }
            foreach (var item in musicalInstruments)
            {
                for (int i = 0; i < enBuyukBosluklar.Count; i++)
                {
                    if (item.Length <= enBuyukBosluklar[i].enBuyukBosluk)
                    {
                        var uygunKelime = new UygunKelimelerClass()
                        {
                            MusicalEnsturment = item,
                            Sayi = enBuyukBosluklar[i].BoslukBaslangicIndexi
                        };
                        uygunKelimeler.Add(uygunKelime);
                        break;
                    }
                }
            }
        }
    }