@Sasha_88

На Haskell можно задать систему уравнений, чтобы он сам ее решил? А не писать функции для решения самостоятельно?

К примеру есть система уравнений5cb76300d4c00212311445.jpeg
На функциональном языке нужно написать решение самому? Функциональный стиль декларативный, как например пролог? А то просто в определении декларативного сказано напиши что нужно получить и получишь решение. Система сама его найдет. Но вроде как функциональные языки(компиляторы) этой плюшки не дают. Я как понял функциональные языки просто функциональные. Функции, чистота это все есть, но весь код по решению приходится писать самому, так же как и в императивном программировании. Так ведь?
Спасибо.
Саша
  • Вопрос задан
  • 242 просмотра
Пригласить эксперта
Ответы на вопрос 1
@AlexSku
Программист по автоматике
Пролога не знаю, но функциональный стиль действительно декларативный. Напр. x = x +1 в императивном означает сложить значение x с единицей и положить результат в x.
В ФП это будет рекурсивный вызов функции x.
По поводу решения. Напр., в Матлабе эта система записывается как A*x = b, где А - матрица 2х2, x - вектор 2х1 неизвестных (x и y), а b - вектор 2х1 левой части. Решение находится в виде левого деления: x = A \ b.
На Хаскеле надо бы описать тип данных "матрица" и оператора "левое деление" (можно методом треугольника) и тогда - вуаля, всё получится.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы