Parsuman

C++ Parsuman

Parsuman je freeware program na vykreslování grafů. Aplikace podporuje rovnice zadané ve tvaru y=f(x), základní operace (sčítaní, odčítání...) a goniometrické funkce. Priorita operací odpovídá reálnému používání, pro úpravu lze použít závorky (kulaté, hranaté i složené).

Uživatel zadává rovnice do políčka v horní části okna. Zadané grafy se zapisují do seznamu grafů, kde mimo jiné můžete vybrat, které grafy budou skryté, ukládat seznamy rovnic či načítat seznamy již vytvořené. Syntaxe operací a také použitelné konstanty jsou popsány v nápovědě programu.


Galerie

Program byl vytvořen v roce 2012.

 

Stáhnout

Staženo 354x (312.23 kB)

 

  Aktivity (1)

Program pro vás napsal Primo Victoria
Avatar

Jak se ti líbí článek?
Ještě nikdo nehodnotil, buď první!


 


Miniatura
Všechny články v sekci
C a C++

 

 

Komentáře

Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:

Mohu se zeptat, jakým způsobem parsuješ výraz?

Odpovědět 7.6.2012 12:07
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Primo Victoria
Redaktor
Avatar
Odpovídá na David Čápka
Primo Victoria:

Nejdřív převedu rovnici do postfixového tvaru (http://cs.wikipedia.org/…C3%A1_notace), pak probíhá dosazování a výpočet.

Používám 2 LIFO zásobníky - znakový pro převod a číselný pro počítání. :)

 
Odpovědět 7.6.2012 16:06
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Primo Victoria
David Čápka:

To je zajímavé. Dělal jsem něco podobného, ale to jsem ještě začínal. Fungovalo to replacováním podřetězců v závorkách, jejich převodem na čísla, vyhodnocením a poté převodem výsledku zpět na řetězec: http://www.itnetwork.cz/index.php?…

Dnes už bych to řešil jinak :)

Koukal jsem, že je to jako maturitní práce, nemáš k tomu nějakou dokumentaci toho algoritmu?

Odpovědět 7.6.2012 17:13
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Primo Victoria
Redaktor
Avatar
Odpovídá na David Čápka
Primo Victoria:

:D Původně jsem to taky řešil nahrazováním řetězců, ale převádět např. pí na řetězec bylo trochu neohrabané, tak jsem toho nechal.

Jinak moje dokumentace je dosti obecná, algoritmu se věnuje jen okrajově, ale velice pěkně je to vysvětleno na http://www.youtube.com/watch?… ;)

 
Odpovědět 7.6.2012 20:09
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovědět 7.6.2012 21:52
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Primo Victoria
Kit:

Na to video jsem se podíval. Princip je OK. Jen ten postfixový mezikód bych nedával do stringu, ale jako seznam dvojic (symbol, atribut). Ten výsledný program v Javě byl dost neohrabaný, určitě bych to tak nedělal.

Odpovědět 26.6.2012 15:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.