Mxparser

Mxparser
MathParser.org-mXparser
원저작자마리우즈 그로마다
초기 릴리즈2010년 1월, 12년 전(2010-01)
안정된 릴리스
5.0.4 / 2022년 5월 22일; 57일 전(2022-05-22)
저장소github.com/mariuszgromada/MathParser.org-mXparser/
기입처자바, C#
플랫폼JVM, Android NET, .NET Core,NET Standard, Windows Phone, MONO, Xamarin, Xamarin.iOS, 자마린안드로이드
웹 사이트mathparser.org

mXparser오픈소스 수학식 파서/평가자로 런타임[1]다양한 식을 계산하는 기능을 제공합니다.표현식 정의는 일반 텍스트로 제공된 다음 문법/구문으로 확인되고 최종적으로 계산됩니다.라이브러리 소스 코드는 Java와 C#으로 별도로 유지되며 Java/JVM, Android 동일한 API를 제공합니다.NET모노(공통 언어 사양 준수)

주요 기능/사용 예

mXparser는 기본 계산, 암시적 곱셈, 내장 상수 함수, 수치 연산, 반복 연산자, 사용자 정의 상수, 사용자 정의 함수, 사용자 정의 재귀, 유니코드 수학 기호 지원 등의 기능을 제공합니다.

기본[2] 연산자

mXparser는 더하기 '+', 빼기 '-', 곱하기 '*', 나누기 '/', 요인 '!', 검정력 '^', 모듈로 '#'과 같은 기본 연산자를 지원합니다.

표현 e = 신규 표현("2+3/(4+5)^4"); 이중으로 하다 v = e.계산한다.(); 

암묵적[2] 곱셈

표현 e = 신규 표현("2(3+4)3"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("2pi(3+4)2sin(3)e"); 이중으로 하다 v = e.계산한다.(); 

이항 관계[2]

각 관계 평가는 참된 결과에 대해 '1' 또는 거짓에 대해 '0'이 되므로 일반적인 표현식을 이진 관계(예: '>보다 큼', '=', 부등식 '<>', '>=', '<=')와 결합할 수 있습니다.

표현 e = 신규 표현((2<3)+5 인치); 이중으로 하다 v = e.계산한다.(); 

부울 논리[2]

부울 로직은 또한 '1이 참' 및 '0이 거짓'의 동등성을 가정하여 작동합니다.지원되는 부울 연산자는 AND 결합, OR 분리, NAND 셰퍼 스트로크, NOR, XOR Exclusive OR, IMP 시사, CIMP Converse 시사, NIMP 재료 비복제, CIMP Converse 비복제, EQV 논리 바이컨디셔널, 부정입니다.

표현 e = 신규 표현("1 --> 0"); 이중으로 하다 v = e.계산한다.(); 

내장[2] 수학 함수

삼각함수, 역삼각함수, 로그함수, 지수함수, 쌍곡함수, 역쌍곡함수, 벨수, 루카스수, 스털링수, 소수계수함수, 지수적분재미를 포함한 지원되는 공통 수학함수(단항수, 이진수 및 변수수)ction, 로그 적분 함수, 오프셋 로그 적분, 이항 계수 등입니다.

표현 e = 신규 표현("sin(0)+ln(2)+log(3,9)"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("min(1,2,3,4)+gcd(1000,100,10)"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("if (2 < 1, 3, 4)"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현(iff(2<1, 1, 3<4, 2; 10<2, 3; 5<10, 4))); 이중으로 하다 v = e.계산한다.(); 

내장 산술[2] 상수

높은 정밀도로 내장된 수학 상수입니다.

표현 e = 신규 표현("sin(pi)+ln(e)"); 이중으로 하다 v = e.계산한다.(); 

반복[2] 연산자

요약 연산자와 제품 연산자를 반복했습니다.

표현 e = 신규 표현("sum(i, 1, 10, ln(i)"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("sin(i, 1, 10, sin(i)"); 이중으로 하다 v = e.계산한다.(); 

수치적 차별화통합[2]

mXparser는 미적분 연산(미분과 통합)을 구현합니다.

표현 e = 신규 표현(der( sin(x), x )); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("int(sqrt(1-x^2), x, -1, 1)"); 이중으로 하다 v = e.계산한다.(); 

소수점[2] 지원

표현 e = 신규 표현("ispr(21)"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("PI(1000)"); 이중으로 하다 v = e.계산한다.(); 

Unicode 수학 기호 지원[2]

표현 e = 신규 표현("√2"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("∜16 + ∛27 + √16"); 이중으로 하다 v = e.계산한다.(); 
표현 e = 신규 표현("color(i, 1, 5, i^2)"); 이중으로 하다 v = e.계산한다.(); 

사용자가 정의한 요소

라이브러리는 상수, 인수, 함수 등의 사용자 정의 개체를 생성하기 위한 API를 제공합니다.

사용자 정의[3] 상수

일정한 t = 신규 일정한("t = 2*pi"); 표현 e = 신규 표현("sin(t)", t); 이중으로 하다 v = e.계산한다.(); 

사용자 정의[3] 인수

논쟁 x = 신규 논쟁("x = 5"); 논쟁 y = 신규 논쟁("y = 2*x", x); 표현 e = 신규 표현("sin(x)+y", x, y); 이중으로 하다 v = e.계산한다.(); 

사용자 정의[3] 함수

기능. f = 신규 기능.("f(x, y) = sin(x)+cos(y)"); 표현 e = 신규 표현("f(1,2)", f); 이중으로 하다 v = e.계산한다.(); 

사용자 정의 가변 함수[3]

기능. f = 신규 기능.(f(...) = sum(i, 1, [npar], par(i))); 표현 e = 신규 표현("f(1, 2, 3, 4)", f); 이중으로 하다 v = e.계산한다.(); 

사용자 정의 재귀[3]

기능. 파이브 = 신규 기능.("param(n) = ifff(n>1, fib(n-1)+param(n-2), n=1, 1, n=0, 0 )"); 표현 e = 신규 표현("controllor(10), 파이브);    이중으로 하다 v = e.계산한다.(); 

요건[3]

문서

mXparser - 소스 코드

소스 코드는 GitHub에서 [5]유지되고 공유됩니다.

「 」를 참조해 주세요.

레퍼런스

외부 링크