Source: http://desaintar.free.fr/python/tp/tp_euler.pdf