This project was build during Sber's School 21 bootcamp.
Team 70:
- lambertm (Team Lead): worked on graph renderer and initial lexer version
- atruskat: worked on infix to rpn conversion, and expression evaluation
- wittenbb (me): tooling, expression parser and string tokenizer,
str
anddarray
datastructures
Compile and run.
NOTE: Has range from
0
to4 PI
on X axis and from-1
to1
on Y axis.
Example input:
$ ./build/rpn
x * x
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
**..............................................................................
..*.............................................................................
...*............................................................................
................................................................................
....*...........................................................................
................................................................................
................................................................................
.....*..........................................................................
................................................................................
................................................................................
................................................................................
......*.........................................................................
+
- plus-
- minus (binary and unary)*
- multiplication/
- division(
and)
- left and right parenssin(...)
- sincos(...)
- costan(...)
- tanctg(...)
- ctgsqrt(...)
- sqrtln(...)
- lnx
- variable
List of tokens avaiable in token.h.
Release build:
make release
Development build:
make all
Tests:
make test
Lint or format:
make lint
make fmt
Install git-hooks:
make hooks