Как вы можете решить уравнения в PHP? - PullRequest
3 голосов
/ 01 октября 2011

Я ищу решатель обобщенных уравнений в PHP. Это может быть либо в виде встроенной функциональности, библиотеки, либо даже интеграции с другим языком, если речь идет о нем. Мне даже комфортно с совместным решением, которое включает некоторую комбинацию вышеупомянутого. Мне это нужно для образовательного сайта, на котором я работаю.

Позвольте мне привести ряд уравнений, с которыми я бы идеально ожидал, что такой решатель будет иметь дело:

x+5=8 => x=3
x^2=5 => x=+/-sqrt(5) [exact solution in terms of sqrt, ln, or whatever] AND
         x=+/-2.236 [approximate solution to certain number of digits]
x+y=-3 [solve in terms of y] => y=-x-3
x^2=-5 => x=+/5i
x+y=3 and x-y=3 => x=3, y=0

Надеюсь, это не слишком длинный мост. Если это так, я буду создавать функциональность по мере того, как каждая проблема будет возникать самостоятельно, но если кто-нибудь знает, какая библиотека подходит для такого набора проблем, я был бы очень признателен.

Ответы [ 2 ]

6 голосов
/ 01 октября 2011

Первое: Ваши математические решения неверны .

  • x + 5 = 8 оценивается как x = 3
  • x + y = -3, y равно -x-3

и т.д.

Чтобы сделать математику: вызовите API Wolfram | Alpha .

Поскольку это образовательное предприятие, я настоятельно рекомендую вам не создавать собственный продукт и полагаться на стороннее программное обеспечение. Я бы лично выбрал Wolfram Mathematica и, возможно, их решения для дошкольного образования или Web Mathematica для веб-интерфейсов.

Примечание о Web Mathematica: в качестве серверной технологии он использует JSP или Java-сервлеты. Подробнее о конкретных технических деталях для Web Mathematica будет полезно.

5 голосов
/ 05 октября 2011

Проверьте Sage , с их сайта:

Sage - это бесплатная математическая система с открытым исходным кодом, лицензированная по лицензии GPL.Он объединяет мощь многих существующих пакетов с открытым исходным кодом в общий интерфейс на основе Python.Миссия: Создание жизнеспособной бесплатной альтернативы с открытым исходным кодом Magma, Maple, Mathematica и Matlab.

Sage имеет интерфейс ноутбука на основе AJAX , который, вероятно, так же хорош, как API, который вы можете использовать из PHP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...