smart_math 1.0.2
smart_math: ^1.0.2 copied to clipboard
Smart Math is an advanced Dart mathematics library providing calculator engine, expression parser, scientific functions, finance calculators, unit conversions, fractions, complex numbers, statistics, [...]
Smart Math #
Smart Math is an advanced, lightweight mathematics library for Dart and Flutter applications.
It provides calculators, mathematical operations, scientific functions, financial calculations, conversions, statistics, fractions, complex numbers, and more.
Features #
🧮 Calculator Engine #
- Addition
- Subtraction
- Multiplication
- Division
- Percentage
- Average calculation
🔢 Expression Parser #
Supports:
- Basic expressions
- Operator precedence
- Brackets
- Decimal numbers
- Power operations
Example:
final parser = ExpressionParser();
final result = parser.evaluate(
"10 + (5 * 2)"
);
print(result);
Output:
20
Scientific Calculator #
Available functions:
- Square root
- Power
- Sin
- Cos
- Tan
- Logarithm
- Natural logarithm
- Absolute value
- Rounding
Example:
ScientificCalculator.power(
2,
3,
);
Output:
8
Fraction Calculator #
Supports:
- Addition
- Subtraction
- Multiplication
- Division
- Simplification
- Decimal conversion
Example:
final a = Fraction(1,2);
final b = Fraction(1,3);
print(a + b);
Output:
5/6
BigInt Mathematics #
Supports large number calculations:
- Factorial
- Power
- Fibonacci
- Combination
Example:
BigIntMath.factorial(100);
Complex Numbers #
Supports:
- Addition
- Subtraction
- Multiplication
- Magnitude
Example:
final number =
ComplexNumber(2,3);
print(
number.magnitude()
);
Finance Calculators #
EMI Calculator #
Calculate loan EMI easily.
final emi = EMI.calculate(
principal: 100000,
annualRate: 8,
years: 5,
);
SIP Calculator #
Calculate future investment value.
final value = SIP.calculate(
monthlyInvestment: 500,
annualReturn: 12,
years: 10,
);
Interest Calculator #
Supports:
- Simple Interest
- Compound Interest
Health Calculators #
BMI Calculator #
final bmi = BMI.calculate(
weightKg: 70,
heightMeter: 1.75,
);
print(
BMI.category(bmi)
);
Output:
Normal
Age Calculator #
Calculate age from birth date.
Age.calculate(
birthDate:
DateTime(2000,1,1),
);
Unit Conversion #
Supported conversions:
Length #
- Meter
- Kilometer
- Feet
Weight #
- Kilogram
- Gram
- Pound
Temperature #
- Celsius
- Fahrenheit
- Kelvin
Example:
TemperatureConverter
.celsiusToFahrenheit(25);
Output:
77
Statistics #
Available functions:
- Mean
- Median
- Mode
- Variance
- Standard deviation
Example:
Statistics.mean(
[
10,
20,
30
]
);
Output:
20
Matrix Operations #
Supports:
- Matrix addition
- Matrix multiplication
- Determinant calculation
Example:
final matrix = Matrix(
[
[1,2],
[3,4]
]
);
print(
matrix.determinant()
);
Output:
-2
Getting started #
Requirements #
- Dart SDK >= 3.0.0
- Flutter >= 3.0.0 (if used in Flutter projects)
Installation #
Add dependency:
dependencies:
smart_math: ^1.0.0
Run:
dart pub get
or:
flutter pub get
Usage #
Import the package:
import 'package:smart_math/smart_math.dart';
Example:
void main(){
final result =
SmartCalculator.add(
10,
20
);
print(result);
}
Output:
30
Example Project #
A complete example application is available:
example/
└── main.dart
Run:
dart run example/main.dart
Documentation #
API documentation:
https://pub.flutter-io.cn/documentation/smart_math/latest/
Generate locally:
dart doc
Testing #
Run tests:
dart test
Analyze code:
dart analyze
Contributing #
Contributions are welcome.
Steps:
-
Fork the repository
-
Create a feature branch
git checkout -b feature/new-feature
-
Make changes
-
Run tests
dart test
dart analyze
- Create Pull Request
Issues #
Report bugs or request features:
https://github.com/Githubsaveme/smart_math/issues
Repository #
GitHub:
https://github.com/Githubsaveme/smart_math
License #
Smart Math is released under the MIT License.
See:
LICENSE
Roadmap #
Future improvements:
- ❌ Advanced AST expression parser
- ❌ Graph plotting support
- ❌ Trigonometric equation solver
- ❌ Unit conversion expansion
- ❌ Currency API integrations
- ❌ More matrix algorithms
- ❌ Symbolic mathematics
Made with ❤️ using Dart