(* calculo da derivada dum polinómio de grau positivo ou nulo - o polinómio é dado como uma lista ordenada dos seus coeficientes (o valor 0 representa a ausência deste grau) por exemplo o polinómio 3x^4+5x^2+1 é dado pela lista [3.0;0.0;5.0;0.0;1.0] *) let rec deriv_poli_aux n l acc = match l with [] [_]-> List.rev acc el::li -> let res = (el*.(float_of_int n)) in (deriv_poli_aux (n-1) li (res::acc)) let rec deriv_poli l = (deriv_poli_aux (List.length l -1) l []) (*um teste para experimentar no toplevel *) let derivada = deriv_poli [3.0;0.0;5.0;0.0;1.0];;
This document was generated using caml2html