12,395,143 members (59,698 online)
alternative version

89.3K views
78 bookmarked
Posted

# MathParser - Math Formula Parser

, 20 Jan 2008 CPOL
 Rate this:
MathParser is a class that can calculate the result of mathematic operations given as string such as "3+5/2-3*(1+3)". It can also calculate the result of parametric formulas such as 3A+5B/2C. Calculation is made by operation order(/,*,-,+) and parenthesis rule.

## Introduction

`MathParser` is a class that can calculate the result of mathematic operations given as `string `such as "`3+5/2-3*(1+3)`". It can also calculate the result of parametric formulas such as `3A+5B/2C`. Calculation is made by operation order(/,*,-,+) and parenthesis rule. In some projects, users want to create a formula dynamically. This is a useful method for calculating the values of these types of formulas.

## Background

The basic idea of this code is parsing the `string `correctly, converting values to decimal and calculating them with the operator.

## Using the Code

Using the code is pretty simple.

For basic use, developers should call the `calculate `method by passing the formula.

```MathFunctions.MathParser mp = new MathFunctions.MathParser();
decimal result = mp.Calculate("5/(1-2)+(3+(2/1))");```

For parametric use, developers should declare parameters before calling the `calculate `method, then call the method passing the formula as seen below:

```MathFunctions.MathParser mp = new MathFunctions.MathParser();
decimal result = mp.Calculate("3D-2B/C+(A-B)");```

## History

• 20.01.2007: Initial release
For bug reports and suggestions, feel free to contact me at oztamer@hotmail.com.

## Share

Tamer Oz is a Microsoft MVP and works as Assistant Unit Manager.

## You may also be interested in...

 FirstPrev Next
 1/2 and 1.0/2 jiming liu26-Dec-10 8:02 jiming liu 26-Dec-10 8:02
 thanks va12310-Sep-10 6:33 va123 10-Sep-10 6:33
 dispite of correct term -> exception (negative numbers) xparet020923-Oct-09 12:12 xparet0209 23-Oct-09 12:12
 Re: dispite of correct term -> exception (negative numbers) JWillmott1236-Jul-11 3:03 JWillmott123 6-Jul-11 3:03
 NOT WORK dataminers10-Jul-09 7:43 dataminers 10-Jul-09 7:43
 Re: NOT WORK onurr30-Aug-09 12:50 onurr 30-Aug-09 12:50
 Thanks GoDeep11-May-09 4:09 GoDeep 11-May-09 4:09
 Some Bugs Member 285390016-Jul-08 10:47 Member 2853900 16-Jul-08 10:47
 Re: Some Bugs xginox13-Nov-08 14:33 xginox 13-Nov-08 14:33
 Re: the download project doesn't work Tamer Oz20-Jan-08 17:32 Tamer Oz 20-Jan-08 17:32