Tuesday 07th of September 2010

 
lexical analyzer PDF Yazdır e-Posta
Kullanıcı Değerlendirmesi: / 0
ZayıfEn iyi 
ilyas tarafından yazıldı   
Salı, 18 Kasım 2008 18:35

S -> BbA A -> aA | a B -> bB | b Verilen Gramerimiz bu sekilde. Ve biz bu gramere uygun language ler yazdiracagiz. Bunuda c# console application olarak yapalim. Ilk olarak harfimiz b ile basliyacak ve sonrasinda tekrardan be gelmesi lazim. Gramer e uydurabilecegimiz en küçük language "bba" dir. bb den sonra b veya a gelebilir gramere göre.Fakat bba dersek a dana sonra b gelemez.Örnek olarak bbbbbbbbba languge olabilir .bbbbbaaaaaa da olabilir Fakat bbbbbaaaab olmaz cünkü gramerimize göre b den sonra a gelme olasiligi yok.Buna uygun c# kodumuz:


 

using System;

using System.Collections.Generic;

using System.Text;

namespace ConsoleApplication1i

{

class Program

{

static void Main(string[] args)

{

string a;

int i = 0, flaga = 0 ,cnt=0;a =

Console.ReadLine();a = a + '*';

 

while (a[i] != '*')

{

if (a[i] != 'a' && a[i] != 'b' && a[i] != ' ')

{

Console.WriteLine("failed recognized to string");

Console.ReadLine();return;

}

if (a.Length < 3)

{

Console.WriteLine("failed recognized to string");

Console.ReadLine();return;

}

while (a[i] == 'b')

{

if (flaga == 1)

{

Console.WriteLine("failed recognized to string");

Console.ReadLine();return;

}

//a[i]=a[i+1];

cnt++;

i++;

}

 

while (a[i] == 'a' && a[i]!='*')

{

 

//a[i]=a[i+1];

i++;

flaga = 1;

 

}

}

if(cnt<2)

{

Console.WriteLine("failed recognized to string");

Console.ReadLine();

return;

}

Console.WriteLine("recognized");Console.ReadLine();

}

}

}

 

Son Güncelleme ( Cumartesi, 20 Aralık 2008 17:17 )
 

HOŞGELDINIZ

Ne kadar küçük şeyler için ağlardık,
Bir tutam saç, bir oyuncak araba, bir bebek.
Şimdi büyüdük,
Çok büyük olaylar bile aglatamıyor bizleri
ölümler, iflaslar, sawaşlar..
Şimdi dahami qüçlüyüz
yoksa dahami alışkın.
Hayatı öğrenmek
alışmakmı acaba.

PC BAKIM

Istatistikler

Üyeler : 36
İçerik : 46
Web Bağlantıları : 6
İçerik Tıklama Görünümü : 24660

Anketler

Site Yorumu
 

Google Reklamları


Destekleyen Joomla!. Designed by: Joomla Template, WebSiteSource. Valid XHTML and CSS.