Source: http://ressources.unisciel.fr/algoprog/s11bases/emodules/bs10mexerc1/res/bs10exerc1-enonce-alg-xxx.pdf