![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 54 Pomógł: 0 Dołączył: 22.01.2004 Skąd: LDZ Ostrzeżenie: (0%) ![]() ![]() |
Witam! Chcę zrobić paraser (jeszcze nie bardzo wiem w czym ale cos miedzy 'php' a 'c' - nie bardzo wiem w ktorym latwiej)
Ale moze od poczatku. Co mialby robic program?! Mialby sprawdzac czy podane wyrazenie jest tautologia, a wiec : 1) Wpisanie wyrazenia : np. ~(avb) 2) Sprawdzenie warunków : War. 1 - Czy istnieje jeden operator logiczny i jedna litera (v-alternatywa; f-koniunkcja; >-implikacja; = - równość) War. 2 - Czy ilość nawiasów otwieranych jest równa ilośći nawiasów zamykanych War. 3 - Czy nie występuje pusty nawias - () War. 4 - SPrawdzenie niedozwolonego znaku 3) Wykonanie instrukcji parsera Jeżeli powyższe warunki są spełnione na TAK to przechodzimy do analizy zdania i tak, program sprawdza wg podanej gramatki czy po sobie nastepujace zmienne sa zgodne z regulami # Reguly S->'spacja'S S->(S S->~(S1 S->'Z'S2 S->-S5 S1->'spacja'S1 S1->'Z'S2 S1->(S S2->'spacja'S2 S2->'o2'S3 S2->)S4 S2->-S5 S2->$ S3->'spacja'S3 S3->'Z'S2 S3->(S S3->S1 S4->'spacja'S4 S4->'o2'S3 S4->-S5 S4->$ S5->'Z'S2 S5->(S S5->~S1 o2 - operator logiczny z - liczba # Koniec regul Program ma przejsc hmmm mozna to nazwac kazde "miejsce na litere (S)" i sprawdzic czy podana wartosc jest dobra a dalej sprawdzac w zaleznosci od poprzedniego wyrazenia zgodnie z powyzsza tabela 4) Na sam koniec 'ciasteczka' (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Czyli czy wyrazenie jest tautologia czy nie Ktos moglby podpowiedziec jak to ugrysc ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 02:17 |