Open luizsci42 opened 1 year ago
Primeira tentativa de implementar a bissecção em Haskell. Verificações adicionais ainda devem ser realizadas
funcao :: Float -> Float
funcao x = x^3 - 9*x + 3
bisseccao :: Float -> Float -> Float -> Float
bisseccao a b erro
| (b - a) < erro = (b + a) / 2
| (funcao ((a + b) / 2) * funcao a) < 0 = bisseccao a ((a + b) / 2) erro
| (funcao ((a + b) / 2) * funcao b) < 0 = bisseccao ((a + b) / 2) b erro
| otherwise = ((a + b) / 2)
main :: IO()
main = print (bisseccao 2.0 3.0 0.0001)
O uso de programação funcional parece bem propício às funções recursivas. O desempenho seria melhor aproveitao com o uso de uma linguagem funcional.