Calculateur d’IMC

Calculez votre IMC

Saisissez votre taille en centimetres et votre poids en kilogrammes. L’outil calcule votre indice de masse corporelle et indique la categorie correspondante selon l’OMS.

Homme
Femme

Sedentaire
Modere (2 a 3 seances semaine)
Actif (4 a 5 seances semaine)
Intense (sportif confirme)

(function(){
var btn = document.getElementById(« rpImcBtn »);
if (!btn) return;
btn.addEventListener(« click », function(){
var t = parseFloat(document.getElementById(« rpImcT »).value)||0;
var p = parseFloat(document.getElementById(« rpImcP »).value)||0;
var act = document.getElementById(« rpImcAct »).value;
if (t<=0 || p<=0){ alert("Taille et poids requis."); return; }
var m = t/100;
var imc = p / (m*m);
document.getElementById("rpImcVal").textContent = imc.toFixed(1);
var cat = "–", adv = "";
if (imc < 18.5){ cat = "Insuffisance ponderale"; adv = "Un IMC inferieur a 18,5 peut signaler une masse corporelle insuffisante. Consultez un medecin du sport pour evaluer votre apport calorique et adapter votre pratique."; }
else if (imc < 25){ cat = "Corpulence normale"; adv = "Votre IMC est dans la zone consideree comme optimale par l'OMS. Maintenez une activite reguliere et une alimentation equilibree."; }
else if (imc < 30){ cat = "Surpoids"; adv = "L'OMS classe cette zone comme surpoids. Une activite physique reguliere d'au moins 150 minutes par semaine et un suivi nutritionnel peuvent vous aider a evoluer en douceur."; }
else if (imc < 35){ cat = "Obesite moderee"; adv = "Un suivi medical est recommande. Une activite physique adaptee et progressive, encadree par un professionnel, doit etre privilegiee."; }
else { cat = "Obesite elevee"; adv = "Un avis medical est indispensable avant toute reprise sportive. Plusieurs hopitaux marocains proposent des consultations specialisees."; }
if (act === "int") adv += " Attention : si vous etes tres muscle, l'IMC peut surestimer votre masse corporelle. Mesurer le tour de taille est complementaire.";
document.getElementById("rpImcCat").textContent = cat;
var ideal = (22 * m * m).toFixed(1);
document.getElementById("rpImcIdeal").textContent = ideal + " kg";
document.getElementById("rpImcAdv").textContent = adv;
var r = document.getElementById("rpImcRes"); r.hidden = false; r.scrollIntoView({behavior:"smooth"});
});
})();

Autres outils du site

← Retour à l\'accueil