program sprawdzający poprawność użycia nawiasów

demka
Użytkownik
Użytkownik
Posty: 133
Rejestracja: 7 cze 2009, o 12:49
Płeć: Kobieta
Podziękował: 4 razy
Pomógł: 11 razy

program sprawdzający poprawność użycia nawiasów

Post autor: demka »

nie potrafie poradzic sobie z zadaniem
Napisać program sprawdzający poprawność użycia nawiasów zgodnie ze składnią języka C, sygnalizujący błędy, podający numer linii i kolumny, w których wystąpił błąd
a) dla nawiasów (), [] i {}
b) dodatkowo dla nawiasów łańcucha tekstowego i nawiasów komentarza.

wiem jak napisac program który sprawdza czy po otwartym nawiasie np [ jest jego domkniecie ]
ale nie wiem co zrobic w przypadku nawiasów zagnieżdżonych tzn np {[()]} program nie powinien sygnalizowac bledow a robi to bo idąc po kolei zapamietuje np { czytając kolejny znaki nie mo odrazu domkniecia bo napotyka inne nawiasy i "glupieje"
prosze chociaz o wskazówki
soku11
Użytkownik
Użytkownik
Posty: 6607
Rejestracja: 16 sty 2007, o 19:42
Płeć: Mężczyzna
Podziękował: 119 razy
Pomógł: 1823 razy

program sprawdzający poprawność użycia nawiasów

Post autor: soku11 »

Najprościej użyć stosu. Napotykasz nawias - wrzucasz go na stos. Spotykasz następny - znów wrzucasz itd. Jak znajdziesz domknięcie - zrzucasz jedną wartość ze stosu. Jeśli wartość ze stosu to ten sam nawias, co domknięcie - idziesz dalej. Jeśli nie - błąd składniowy.

Pozdrawiam.
demka
Użytkownik
Użytkownik
Posty: 133
Rejestracja: 7 cze 2009, o 12:49
Płeć: Kobieta
Podziękował: 4 razy
Pomógł: 11 razy

program sprawdzający poprawność użycia nawiasów

Post autor: demka »

tylko problem w tym ze nie potrafie tego zrobic
soku11
Użytkownik
Użytkownik
Posty: 6607
Rejestracja: 16 sty 2007, o 19:42
Płeć: Mężczyzna
Podziękował: 119 razy
Pomógł: 1823 razy

program sprawdzający poprawność użycia nawiasów

Post autor: soku11 »

No i co ja mam w takiej sytuacji zrobić? Metodę ci podałem. Wczytujesz sobie po linijce tekst i go parsujesz. Dalej korzystasz ze stosu i działa.

Pozdrawiam.
Awatar użytkownika
Szemek
Użytkownik
Użytkownik
Posty: 4819
Rejestracja: 10 paź 2006, o 23:03
Płeć: Mężczyzna
Lokalizacja: Gdańsk
Podziękował: 43 razy
Pomógł: 1407 razy

program sprawdzający poprawność użycia nawiasów

Post autor: Szemek »

demka, skorzystaj z przykładowej
demka
Użytkownik
Użytkownik
Posty: 133
Rejestracja: 7 cze 2009, o 12:49
Płeć: Kobieta
Podziękował: 4 razy
Pomógł: 11 razy

program sprawdzający poprawność użycia nawiasów

Post autor: demka »

na pierwszy rzut oka troche to skomplikowane - ale mysle ze sobie poradze
dzięki wielkie
ODPOWIEDZ