Skip to content

Vatsalsoni13/Equation-Parser-Interpreter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Equation-Parser-Interpreter

This is an file based interpriter for Equation Parser.

Basic Usage

Compiling

generate the runfile using makefile and make command (on linux), requires gcc and g++, with c++ std 14 support.

For manual compiling :

  1. gcc -c cparser.c -lm ; which will give cparser.o
  2. g++ -c main.cpp; which will give main.o
  3. g++ -o eqparse cparser.o main.o; which will give eqparse

running

eqparse <script_file> [output_file] (Without Brackets)

script file is any valid text file written with valid syntax.
output file is optional. If not given output will be given on standerd output - either console or redirected file if output redirection is done. If given output will Overwrite the file.

Syntax :

  • All Non-comment Lines should be less than 150 characters long in total.
  • Lines starting with ' // ' and empty lines will be ignored.
  • Contents of line starting with ' # ' will be copied as it is (except #) in the output.
  • All inbuilt commands, equations and variable assignments must be given on a line by themselves,i.e. Comments cannot start mid-way in a line.
  • Allowed inbuild commands Are : showvars , vardump , varload , varclear.
  • to solve an equation, or for variable assignment, give the expression on the line by itself.
  • Assignment of variable can be done as :
    1. $0 to $9 = expr ---for inbuilt variables
    2. varname = expr ---for custom named variables.
  • To find roots of a polynomial equation , use polysolve <space> expr
  • To solve system of linear equation with less than 9 variables:
    • First give linsolve <space> <number of variables (n)>
    • Then give the linear equations using variables x0 to x(n-1) on next consecutive lines.

Also look at syntax of Equation Parser Mk II for general syntax.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 90.0%
  • C++ 9.6%
  • Other 0.4%