#javascript #math.js
#javascript #math.js
Вопрос:
Я пытаюсь оценить физическое уравнение, используя math.js библиотека, которую пользователь записывает в текстовое поле.
Например, F=ma
поскольку нет оператора, между ma
которыми должно быть похоже m*a
на оценку, как я могу добавить отсутствующий оператор в уравнение, если в нем его нет..
var equation = 'f=ma';
var variables={m:7,F:35,a:5};
// separate the left and rhs of the equation
var lhs_rhs = equation.split('=');
var lhs = math.eval(equation_lhs_rhs[0],variables);
var rhs = math.eval(equation_lhs_rhs[1],variables);
if (lhs == rhs) {
alert('Equation is fine');
}
Комментарии:
1. У вас должны быть некоторые правила / ограничения, когда пользователь вводит уравнение в текстовое поле. потому что, как вы узнаете, является ли
ma
один операнд или два операнда, в которых отсутствует operator (,*,/,-
) ?2. Сначала ограничьте пользователя значением alphbet для переменной. Затем, если есть две переменные вместе, вставьте * между ними
3. В уравнении физики в основном пользователь может пропустить только множитель (*), иначе ( ,-,/) ему нужно их записать.