私は現在、結果を表示するだけでなく、その結果にどのように到達したかを示す電卓を備えたAndroidアプリを作成していますか?Javaで計算をステップバイステップで計算する方法はありますか?
以下のコードの結果について、ステップバイステップの計算を示すライブラリや方法はありますか?
int a = 5;
int b = 6
int c = 7;
int d = 8;
int result = a + (b * c)/d;
編集:ところで、それは物理学の計算機なので、たくさんの公式があります。 exp4jを使って文字列式を式として解析しています。ここにサンプルがあります
//For formula velocity = (finalVelocity - initialVelocity)/time
String formula1 = "(finalVelocity - initialVelocity)/time";
Double result1 = new ExpressionBuilder(formula)
.variables("finalVelocity", "initialVelocity", "time")
.build()
.setVariable("finalVelocity", 4);
.setVariable("initialVelocity", 2);
.setVariable("time", 2)
.evaluate();
//Sample Output
//velocity = (4 - 2)/2
//velocity = 2 /2
//velocity = 1
//For formula finalVelocity = (velocity * time) + initialVelocity
String formula2 = "(velocity * time) + initialVelocity";
Double result12 = new ExpressionBuilder(formula)
.variables("velocity", "time" "initialVelocity")
.build()
.setVariable("velocity", 4);
.setVariable("time", 2)
.setVariable("initialVelocity", 0)
.evaluate();
//Sample Output
//finalVelocity = (4 * 2) + 0
//finalVelocity = 8 + 0
//finalVelocity = 8
多くの数式では、数式ごとに各手順の印刷を排除しようとしています。私は、任意の数式のステップを印刷する関数を持つ方法を見つけることを試みています。
int a = 5;
int b = 6;
int c = 7;
int d = 8;
int ans = (b * c);
System.out.println(ans)
ans /= d;
System.out.println(ans)
ans += a;
System.out.println(ans)
これを行うには、あなたが最初のブラケットを検索し、方程式を解く機能を構築することができます:あなたはその問題を解決するためにBODMASを使用することになります考慮
具体的にこの結果が必要ですか、それとも算術計算の一般的なものにしますか? – Brick
算術計算の場合 –
サンプルの入出力を追加してください。 –