コード例 #1
0
        public HarfDizisi cozumlemeIcinEkUret(HarfDizisi ulanacak, HarfDizisi giris, List <EkUretimBileseni> bilesenler)
        {
            HarfDizisi sonuc    = new HarfDizisi(4);
            TurkceHarf sonSesli = ulanacak.sonSesli();

            for (int i = 0; i < bilesenler.Count; i++)
            {
                EkUretimBileseni ekUretimBileseni = bilesenler[i];
                TurkceHarf       harf             = ekUretimBileseni.harf();
                switch (ekUretimBileseni.kural())
                {
                case UretimKurali.HARF:
                    sonuc.ekle(harf);
                    break;

                case UretimKurali.KAYNASTIR:
                    if (ulanacak.sonHarf().sesliMi())
                    {
                        sonuc.ekle(harf);
                    }
                    break;

                case UretimKurali.SERTLESTIR:
                    if (ulanacak.sonHarf().sertMi())
                    {
                        sonuc.ekle(harf.sertDonusum());
                    }
                    else
                    {
                        sonuc.ekle(harf);
                    }
                    break;

                case UretimKurali.SESLI_AE:
                    if (i == 0 && ulanacak.sonHarf().sesliMi())
                    {
                        break;
                    }
                    else
                    {
                        sonSesli = sesliUretici.sesliBelirleAE(sonSesli);
                        sonuc.ekle(sonSesli);
                    }
                    break;

                case UretimKurali.SESLI_IU:
                    if (i == 0 && ulanacak.sonHarf().sesliMi())
                    {
                        break;
                    }
                    else
                    {
                        sonSesli = sesliUretici.sesliBelirleIU(sonSesli);
                        sonuc.ekle(sonSesli);
                    }
                    break;
                }
            }
            return(sonuc);
        }
コード例 #2
0
ファイル: EkUreticiTr.cs プロジェクト: ibrahimatay/nzemberek
  public HarfDizisi cozumlemeIcinEkUret(HarfDizisi ulanacak, HarfDizisi giris, List<EkUretimBileseni> bilesenler)
  {
     HarfDizisi sonuc = new HarfDizisi(4);
     TurkceHarf sonSesli = ulanacak.sonSesli();
     for (int i = 0; i < bilesenler.Count; i++) {
         EkUretimBileseni ekUretimBileseni = bilesenler[i];
         TurkceHarf harf = ekUretimBileseni.harf();
         switch (ekUretimBileseni.kural()) {
             case UretimKurali.HARF:
                 sonuc.ekle(harf);
                 break;
             case UretimKurali.KAYNASTIR:
                 if (ulanacak.sonHarf().sesliMi())
                     sonuc.ekle(harf);
                 break;
             case UretimKurali.SERTLESTIR:
                 if (ulanacak.sonHarf().sertMi())
                     sonuc.ekle(harf.sertDonusum());
                else
                     sonuc.ekle(harf);
                 break;
             case UretimKurali.SESLI_AE:
                 if (i == 0 && ulanacak.sonHarf().sesliMi())
                     break;
                 else {
                     sonSesli = sesliUretici.sesliBelirleAE(sonSesli);
                     sonuc.ekle(sonSesli);
                 }
                 break;
             case UretimKurali.SESLI_IU:
                 if (i == 0 && ulanacak.sonHarf().sesliMi())
                     break;
                 else {
                     sonSesli = sesliUretici.sesliBelirleIU(sonSesli);
                     sonuc.ekle(sonSesli);
                 }
                 break;
         }
     }
     return sonuc;
 }
コード例 #3
0
        public void testSonHarfYumusat()
        {
            HarfDizisi kelime = new HarfDizisi("kitap", alfabe);

            kelime.sonHarfYumusat();
            Assert.AreEqual(kelime.sonHarf(), alfabe.harf('b'));
            kelime = new HarfDizisi("armut", alfabe);
            kelime.sonHarfYumusat();
            Assert.AreEqual(kelime.sonHarf(), alfabe.harf('d'));
            kelime = new HarfDizisi("kulak", alfabe);
            kelime.sonHarfYumusat();
            Assert.AreEqual(kelime.sonHarf(), alfabe.harf(Alfabe.CHAR_gg));
        }
コード例 #4
0
 public void testSonHarfYumusat()
 {
     HarfDizisi kelime = new HarfDizisi("kitap", alfabe);
     kelime.sonHarfYumusat();
     Assert.AreEqual(kelime.sonHarf(), alfabe.harf('b'));
     kelime = new HarfDizisi("armut", alfabe);
     kelime.sonHarfYumusat();
     Assert.AreEqual(kelime.sonHarf(), alfabe.harf('d'));
     kelime = new HarfDizisi("kulak", alfabe);
     kelime.sonHarfYumusat();
     Assert.AreEqual(kelime.sonHarf(), alfabe.harf(Alfabe.CHAR_gg));
 }
コード例 #5
0
 public void testSonHarf()
 {
     Assert.AreEqual(dizi1.sonHarf(), alfabe.harf('m'), "harf ekleme problemi");
 }