Какой простой способ сделать полномочия в PHP? - PullRequest
0 голосов
/ 22 сентября 2010

Я пытаюсь сделать сценарий, чтобы помочь мне с моей математикой

пример уравнения: y=(4*(x*2)^(2x+4))+4*x^2

Чтобы это работало, мне просто нужно понять, что только(x*2) должен быть приведен к степени (2x+4), а затем подставить это обратно в исходное уравнение, которое, конечно, вы можете просто eval() ответить.

Я хочу вычислить значенияу, когда я знаю значение х.Это было бы относительно легко, если бы не полномочия.Я просто не могу понять, как это сделать.

Я знаю, что вы можете использовать pow(), но я пытаюсь сделать скрипт для работы с любым уравнением.Так что вроде как нужно понимать синтаксис.

Есть предложения, как это сделать?

Ответы [ 4 ]

3 голосов
/ 23 сентября 2010

Для нативной песочницы PHP для оценки формул, которая работает так, как описывает ответ Sjoerd, взгляните на класс evalMath в PHPClasses.

1 голос
/ 22 сентября 2010

Кроме того, вам определенно не следует использовать eval (), чтобы позволить пользователям оценивать числовые выражения. Это катастрофа, ожидающая, чтобы случиться.

1 голос
/ 22 сентября 2010

Однажды я создал скрипт калькулятора .

  • Он анализирует вычисления и помещает каждое число и оператор в стек в обратной польской записи .
  • Он вычисляет результаты путем выполнения операций всех операций в стеке.
1 голос
/ 22 сентября 2010

Попробуйте реализовать анализатор калькулятора .(Связанный пример - C ++, но это должно дать вам идею. Вы можете добавить возможность разбирать ^ на мощность.)

Это поможет вам частично достичь желаемого.В противном случае вам, вероятно, понадобится полноценный символьный математический пакет, если вы начнете слишком усложнять свои типы функций.

...