Source: http://mathematiques.ac-bordeaux.fr/college2010/mathsettice/six_cinq/prog_calc/prog_calc.pdf