Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Un petit calculateur du IMC et du poids idéal | |
| | Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Un petit calculateur du IMC et du poids idéal Sam 27 Avr 2019 - 1:46 | |
| Voici uun petit gadget pour surveiller votre poids: - Code:
-
' CalculPoids.bas
label calculer dim i% dim taille, age, poids, circonferencepoignet, sveltesse, genre dim IMC, MonnerotDumaine, Broca, Creff, Lorentz
height 0,500 : width 0,400 alpha 1 : top 1,10 : left 1,10 : caption 1,"Genre:" combo 2 : top 2,25 : left 2,10 : width 2,80 item_add 2,"Femme" item_add 2,"Homme" text 2,"Femme"
alpha 3 : top 3,60 : left 3,10 : caption 3,"Taille (cm):" combo 4 : top 4,75 : left 4,10 : height 4,110 : width 4,80 for i%=100 to 210 item_add 4,str$(i%) next i% text 4,"165" alpha 5 : top 5,60 : left 5,100 : caption 5,"Poids (kg):" combo 6 : top 6,75 : left 6,100 : height 6,110 : width 6,80 for i%=40 to 180 item_add 6,str$(i%) next i% text 6,"55" alpha 7 : top 7,60 : left 7,200 : caption 7,"Age (ans):" combo 8 : top 8,75 : left 8,200 : height 8,110 : width 8,80 for i%=18 to 100 item_add 8,str$(i%) next i% text 8,"55" alpha 9 : top 9,110 : left 9,10 : caption 9,"Stature:" combo 10 : top 10,125 : left 10,10 : height 10,110 : width 10,80 item_add 10,"Gracile" item_add 10,"Normale" item_add 10,"Trapue" text 10,"Normale" alpha 11 : top 11,110 : left 11,100 : caption 11,"Circonférence poignet (cm):" combo 12 : top 12,125 : left 12,100 : height 12,110 : width 12,80 for i%=100 to 300 item_add 12,str$(i%/10) next i% text 12,"18" button 99 : top 99,170 : left 99,10 : caption 99,"Calculer" : on_click 99,calculer
memo 100 top 100,200 : left 100,10 : width 100,300 : height 100,240 : bar_vertical 100 font_name 100,"Courier"
end
calculer: parametres() calcul() affichage() return
sub parametres() if text$(2)=item_read$(2,1) then genre = 1 if text$(2)=item_read$(2,2) then genre = 2 taille = val(text$(4)) poids = val(text$(6)) age = val(text$(8)) circonferencepoignet = val(text$(12)) if text$(10)=item_read$(10,1) then Sveltesse = 0.9 : ' gracile if text$(10)=item_read$(10,2) then Sveltesse = 1.0 : ' normale if text$(10)=item_read$(10,3) then Sveltesse = 1.1 : ' trapue end_sub
sub calcul() IMC = int(( poids/((taille/100)*(taille/100)) )*100+0.5)/100 MonnerotDumaine = int(( (taille-100+(4*circonferencepoignet))/2 )*100+0.5)/100 Broca = int(( taille-100 )*100+0.5)/100 Creff = int(( (taille-100+(age/10))*0.9*sveltesse )*100+0.5)/100 Lorentz = int(( taille-100-((taille-150)/2*genre) )*100+0.5)/100 end_sub
sub affichage() clear 100 item_add 100,"Votre profil:" if genre=1 then item_add 100," Femme" if genre=2 then item_add 100," Homme" item_add 100," Age: "+str$(age)+" ans" item_add 100," Taille: "+str$(taille)+" cm" item_add 100," Poids: "+str$(poids)+" kg" item_add 100," Poignet: "+str$(circonferencepoignet)+" cm" if sveltesse=0.9 then item_add 100," Stature: gracile" if sveltesse=1.0 then item_add 100," Stature: normale" if sveltesse=1.1 then item_add 100," Stature: trapue" item_add 100,"" item_add 100,"Vos résultats:" item_add 100," IMC = "+str$(IMC) if IMC<15 then item_add 100," ==> Sous-alimentation" if (IMC>=15) and (IMC<18.5) then item_add 100," ==> Maigreur" if (IMC>=18.5) and (IMC<25) then item_add 100," ==> Normal" if (IMC>=25) and (IMC<30) then item_add 100," ==> Surcharge pondérale" if (IMC>=30) and (IMC<35) then item_add 100," ==> Surpoids" if (IMC>=35) and (IMC<40) then item_add 100," ==> Obésité" if IMC>=40 then item_add 100," ==> Obésité extrème" item_add 100,"" item_add 100," Poids idéal selon:" item_add 100," MonnerotDumaine = "+str$(MonnerotDumaine) item_add 100," Broca = "+str$(Broca) item_add 100," Creff = "+str$(Creff) item_add 100," Lorentz = "+str$(Lorentz) end_sub
| |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Un petit calculateur du IMC et du poids idéal Sam 27 Avr 2019 - 2:33 | |
| Je sais bien que j’ai une surcharge pondérale, merci Klaus : ton programme le confirme. J'ai déjà posté un code similaire mais moins fignolé que le tien. C’était ici C'était dans le cadre de montrer comment on défini une FNC et l'appeler. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Un petit calculateur du IMC et du poids idéal Sam 27 Avr 2019 - 12:05 | |
| Eh bien, du coup, une petite extension, avec le calcul de l'IMG (Indicateur de Masse Graisseuse) selon 4 formules (la première étant la plus utilisée): - Code:
-
' CalculPoids.bas
label calculer dim i% dim taille, age, poids, circonferencepoignet, sveltesse, genre, sexe dim IMC, MonnerotDumaine, Broca, Creff, Lorentz dim Deurenberg1, Deurenberg2, Gallagher, JacksonPollock
height 0,700 : width 0,400 alpha 1 : top 1,10 : left 1,10 : caption 1,"Genre:" combo 2 : top 2,25 : left 2,10 : width 2,80 item_add 2,"Femme" item_add 2,"Homme" text 2,"Femme"
alpha 3 : top 3,60 : left 3,10 : caption 3,"Taille (cm):" combo 4 : top 4,75 : left 4,10 : height 4,110 : width 4,80 for i%=100 to 210 item_add 4,str$(i%) next i% text 4,"165" alpha 5 : top 5,60 : left 5,100 : caption 5,"Poids (kg):" combo 6 : top 6,75 : left 6,100 : height 6,110 : width 6,80 for i%=40 to 180 item_add 6,str$(i%) next i% text 6,"55" alpha 7 : top 7,60 : left 7,200 : caption 7,"Age (ans):" combo 8 : top 8,75 : left 8,200 : height 8,110 : width 8,80 for i%=18 to 100 item_add 8,str$(i%) next i% text 8,"55" alpha 9 : top 9,110 : left 9,10 : caption 9,"Stature:" combo 10 : top 10,125 : left 10,10 : height 10,110 : width 10,80 item_add 10,"Gracile" item_add 10,"Normale" item_add 10,"Trapue" text 10,"Normale" alpha 11 : top 11,110 : left 11,100 : caption 11,"Circonférence poignet (cm):" combo 12 : top 12,125 : left 12,100 : height 12,110 : width 12,80 for i%=100 to 300 item_add 12,str$(i%/10) next i% text 12,"18" button 99 : top 99,170 : left 99,10 : caption 99,"Calculer" : on_click 99,calculer
memo 100 top 100,200 : left 100,10 : width 100,350 : height 100,440 : bar_vertical 100 font_name 100,"Courier"
end
calculer: parametres() calcul() affichage() return
sub parametres() if text$(2)=item_read$(2,1) then genre = 1 if text$(2)=item_read$(2,2) then genre = 2 taille = val(text$(4)) poids = val(text$(6)) age = val(text$(8)) circonferencepoignet = val(text$(12)) if text$(10)=item_read$(10,1) then Sveltesse = 0.9 : ' gracile if text$(10)=item_read$(10,2) then Sveltesse = 1.0 : ' normale if text$(10)=item_read$(10,3) then Sveltesse = 1.1 : ' trapue end_sub
sub calcul() sexe = genre - 1 IMC = int(( poids/((taille/100)*(taille/100)) )*100+0.5)/100 MonnerotDumaine = int(( (taille-100+(4*circonferencepoignet))/2 )*100+0.5)/100 Broca = int(( taille-100 )*100+0.5)/100 Creff = int(( (taille-100+(age/10))*0.9*sveltesse )*100+0.5)/100 Lorentz = int(( taille-100-((taille-150)/2*genre) )*100+0.5)/100 Deurenberg1 = int(( (1.20*IMC) + (0.23*age) - (10.8*sexe) - 5.4 )*100+0.5)/100 Deurenberg2 = int(( (1.29*IMC) + (0.20*age) - (11.4*sexe) - 8.0 )*100+0.5)/100 Gallagher = int(( (1.46*IMC) + (0.14*age) - (11.6*sexe) - 10.0 )*100+0.5)/100 JacksonPollock = int(( (1.61*IMC) + (0.13*age) - (12.1*sexe) - 13.9 )*100+0.5)/100 end_sub
sub affichage() clear 100 item_add 100,"Votre profil:" if genre=1 then item_add 100," Femme" if genre=2 then item_add 100," Homme" item_add 100," Age: "+str$(age)+" ans" item_add 100," Taille: "+str$(taille)+" cm" item_add 100," Poids: "+str$(poids)+" kg" item_add 100," Poignet: "+str$(circonferencepoignet)+" cm" if sveltesse=0.9 then item_add 100," Stature: gracile" if sveltesse=1.0 then item_add 100," Stature: normale" if sveltesse=1.1 then item_add 100," Stature: trapue" item_add 100,"" item_add 100,"Vos résultats:" item_add 100," IMC = "+str$(IMC) if IMC<15 then item_add 100," ==> Sous-alimentation" if (IMC>=15) and (IMC<18.5) then item_add 100," ==> Maigreur" if (IMC>=18.5) and (IMC<25) then item_add 100," ==> Normal" if (IMC>=25) and (IMC<30) then item_add 100," ==> Surcharge pondérale" if (IMC>=30) and (IMC<35) then item_add 100," ==> Surpoids" if (IMC>=35) and (IMC<40) then item_add 100," ==> Obésité" if IMC>=40 then item_add 100," ==> Obésité extrème" item_add 100,"" item_add 100," Poids idéal selon:" item_add 100," MonnerotDumaine = "+str$(MonnerotDumaine) item_add 100," Broca = "+str$(Broca) item_add 100," Creff = "+str$(Creff) item_add 100," Lorentz = "+str$(Lorentz) item_add 100,"" item_add 100," IMG (Indicateur de Masse Graisseuse):" item_add 100," Deurenberg 1 = "+str$(Deurenberg1) InterpreterIMG(Deurenberg1) item_add 100," Deurenberg 2 = "+str$(Deurenberg2) InterpreterIMG(Deurenberg2) item_add 100," Gallagher = "+str$(Gallagher) InterpreterIMG(Gallagher) item_add 100," Jackson-Pollock = "+str$(JacksonPollock) InterpreterIMG(JacksonPollock) end_sub
sub InterpreterIMG(IMG) if sexe=0 if IMG<25 then item_add 100," ==> Trop maigre" if (IMG>=25) and (IMG<30) then item_add 100," ==> Pourcentage normal" if IMG>=30 then item_add 100," ==> Trop de graisse" else if IMG<15 then item_add 100," ==> Trop maigre" if (IMG>=15) and (IMG<20) then item_add 100," ==> Pourcentage normal" if IMG>=20 then item_add 100," ==> Trop de graisse" end_if end_sub
Gare au choc ! | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un petit calculateur du IMC et du poids idéal Sam 27 Avr 2019 - 12:17 | |
| Salut Klaus ! Sympa ce petit outil. Quoi que maintenant ma journée est gâchée car je viens d'apprendre que je suis en Surcharge pondérale. | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Un petit calculateur du IMC et du poids idéal Sam 27 Avr 2019 - 12:19 | |
| Bonjour à tous ! Merci Klaus ! Le test est sans appel ! Il va me falloir modifier quelque chose : soit suivre un régime, soit modifier le calcul dans ton programme... Bonne journée ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 27 Avr 2019 - 13:50 | |
| Serait ce la mauvaise conscience après les fêtes de Pâques et ses chocolats ? | |
| | | Contenu sponsorisé
| Sujet: Re: Un petit calculateur du IMC et du poids idéal | |
| |
| | | | Un petit calculateur du IMC et du poids idéal | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |