Domácí práce z předmětu X36PJC - Programování v jazyku C++. Jedná se o textovou kalkulačku. Zadání se očekává na standardním vstupu (konzole). Jeden řádek představuje jeden vzorec. Pro ukončení zadávání se použije znak pro konec souboru (EOF) nebo prázdný řádek. Výsledky jsou obdobně odeslány na standardní výstup po řádcích.\
Příklad
Vstup:
156*pi+ log 6
Výstup:
490.867
Podporované funkce a operátory
(podle priority od nejnižší po nejvyšší)
+
,-
*
,/
sqrt()
,sin()
,cos()
,tan()
,asin()
,acos()
,atan()
,ln()
,log()
,exp()
,pi()
,abs()
,deg()
(převod z radiánů na stupně),rad()
(ze stupňů na radiány),^
- obecná mocninae
- dekadický exponent, tj.×10^n
(
,)
- závorky, mají úplně nejvyšší prioritu
Goniometrické funkce se počítají v radiánech, použijte konverzní funkce deg
a rad
.
Je vhodné přesměrovat vstup/výstup pomocí příkazové řádky, např:
stringcalc < vstup.txt > vystup.txt
Zatím tu je jenom kompilace pro Windows: Stringcalc (Win32 konzole)