Вычислить физическое уравнение с пропущенным оператором в Javascript

#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. В уравнении физики в основном пользователь может пропустить только множитель (*), иначе ( ,-,/) ему нужно их записать.