Source: http://cregut.perso.enseeiht.fr/ENS/2012-apad-algo1/algo1-apad-2012-s0-serie2__Algo-VBA-corrige.pdf