Kalkulator z nieograniczoną liczbą działan C++
Ostatnio zmodyfikowano 2012-10-11 16:23
pekfos |
» 2012-10-10 14:56:27 tylko jak teraz dodać funkcjonalność, żeby parser obsługiwał chociaż jedną zmienną, którą wprowadza użytkownik i to w dowolnym miejscu? |
Krótko mówiąc: chcesz napisać program rozwiązujący równania. Obawiam się, że "masz zdecydowanie za małą wiedzę na zrealizowanie tego". Zapewne masz jeszcze za słaby parser. Czy poradziłby sobie z takim wejściem:? sin(2-0.86*22)
W tym wyrażeniu jest ukryte kilka pułapek, na które zbyt słaby parser się złapie: |
|
crash |
» 2012-10-10 16:24:09 pefkos@ Parser na razie nie obsługuje funkcji trygonometrycznych. Co do wiedzy to rzeczywiście, dopiero trzy lata w C, ale łącznie już 9 jeśli liczyć do tego Delphi. Zamiast w kółko pisać bzdurne bzdury na zaliczenia, chciałbym w końcu coś lepszego napisać, i własnie marzy mi się m.in. parser. Na sam początek zmienne, chociaż jedna.
A co do wiedzy raz jeszcze - człowiek głupi się urodził i głupi umrze
|
|
SeaMonster131 |
» 2012-10-10 16:35:37 Zrób jakiś znak lub słowo kluczowe. Jeżeli się pojawi, to możesz w jakiś sposób operować na std::map (tak mi się wydaje, nie do końca wiem na jakiej zasadzie to działa) bądź stworzyć klasę zmienna, zawierającą nazwę zmiennej i jej wartość, a następnie vector tej klasy (vector <klasa> nazwa). Wtedy tylko dajesz te nazwy i wartości do tego vectora. |
|
pekfos |
» 2012-10-10 18:31:47 pefkos@ Parser na razie nie obsługuje funkcji trygonometrycznych. |
Chyba mylisz pojęcia. Analizator składniowy lub parser – program dokonujący analizy składniowej danych wejściowych w celu określenia ich struktury gramatycznej w związku z określoną gramatyką formalną. Nazwa analizator składniowy podkreśla analogię z analizą składniową stosowaną w gramatyce i językoznawstwie. Analizator składniowy umożliwia przetworzenie tekstu czytelnego dla człowieka w strukturę danych przydatną dla oprogramowania komputera. http://pl.wikipedia.org/wiki/Parser |
Parser ma rozbić skrypt/wyrażenie na strukturę danych którą potem będziesz interpretować. Dopiero później można mówić o obsługiwaniu. PS: pekfos się inaczej pisze :P |
|
crash |
» 2012-10-11 00:03:07 Pisałem pm na jutubie do autora filmiku i wskazał użycie kontenera map. Nie za bardzo widziało mu się cokolwiek więcej napisać więc mu odpuściłem ;) Powoli nabieram motywację by odkurzyć kod i wziąć się w garść. Przyszedł mi pomysł przy okazji, jak rozwiązać problem z f. trygonometrycznymi - np. w instrukcji do programu napisać, by funkcje trygonometryczne poprzedzić znakiem specjalnym, nie wiem #, @ - będzie to ułatwieniem dla analizatora.
Pefkos sorka za nick, oby to był przedostatni raz ;p |
|
SeaMonster131 |
» 2012-10-11 16:23:30 |
|
1 « 2 » |