Source: https://www.capes-de-maths.com/3eme/Devoirs0910/3DM2_E_C.pdf