le 5 avril 2007
Université Paris X Nanterre
UFR SEGMI 1ère année UPA + MMIA
Mme HANEN

PARTIEL DE CONTROLE CONTINU OUTILS INFORMATIQUE 2 -- durée : 45 mn
Vous devez répondre sur cette feuille.


Groupe de TD :
Nom et Prénom :
Numéro de carte d'étudiant :
Exercice n°1 : L'indice de masse corporelle (IMC) est défini par le poids d'une personne (en kg) divisé par le carré de sa taille (exprimée en mètres).
Question 1:
Ecrire un programme qui demande à un utilisateur son poids et sa taille, calcule son indice de masse corporelle et affiche la phrase suivante (« vous pesez x kg et mesurez y cm, votre indice de masse corporelle est de z ») où x,y,z, dépendent de l'individu utilisateur.
Sub imasco() Dim Poids As double Dim Taille As double Dim Imc As double Poids=InputBox("Entrez votre poids en kilogrammes") Taille= InputBox("Entrez votre taille en centimètres") Imc=Poids/((Taille/100)*(Taille/100)) MsgBox("Vous pesez " & Poids & " kg et mesurez " & Taille & " cm. Votre indice de masse corporelle est de : " & Imc) End Sub

TSVP->


Question 2 :
Les médecins classent les patients selon leur IMC de la manière suivante :
IMC <18,518,5-25 25-30 30-35 35-40 >40
qualificationMaigreurPoids idéalSurpoidsObésité
modérée
Obésité
sévère
Obésité
morbide
Compléter le programme de la question 1 pour qu'il affiche pour l'utilisateur la qualification médicale de son IMC
Sub imasco() Dim Poids As Double Dim Taille As Double Dim Imc As Double Dim Qualif As String Poids=InputBox("Entrez votre poids en kilogrammes") Taille= InputBox("Entrez votre taille en centimètres") Imc=Poids/((Taille/100)*(Taille/100)) If Imc<18.5 Then Qualif= "Maigreur" Else If Imc<25 Then Qualif= "Poids idéal" Else If Imc<30 Then Qualif= "Surpoids" Else If Imc<35 Then Qualif= "Obésité modérée" Else If Imc<=40 Then Qualif= "Obésité sévère" Else Qualif= "Obésité morbide" End If End If End If End If End If MsgBox("Vous pesez " & Poids & " kg et mesurez " & Taille & " cm. Votre indice de masse corporelle est de : " & Imc) MsgBox("votre état est qualifié médicalement de : " & Qualif) End Sub
Sub imasco() Dim Poids As Double Dim Taille As Double Dim Imc As Double Dim Qualif As String Poids=InputBox("Entrez votre poids en kilogrammes") Taille= InputBox("Entrez votre taille en centimètres") Imc=Poids/((Taille/100)*(Taille/100)) If Imc<18.5 Then Qualif= "Maigreur" Elseif Imc<25 Then Qualif= "Poids idéal" Elseif Imc<30 Then Qualif= "Surpoids" Elseif Imc<35 Then Qualif= "Obésité modérée" Elseif Imc<=40 Then Qualif= "Obésité sévère" Else Qualif= "Obésité morbide" End If MsgBox("Vous pesez " & Poids & " kg et mesurez " & Taille & " cm. Votre indice de masse corporelle est de : " & Imc) MsgBox("votre état est qualifié médicalement de : " & Qualif) End Sub
Sub imasco() Dim Poids As Double Dim Taille As Double Dim Imc As Double Dim Qualif As String Poids=InputBox("Entrez votre poids en kilogrammes") Taille= InputBox("Entrez votre taille en centimètres") Imc=Poids/((Taille/100)*(Taille/100)) If Imc<18.5 Then Qualif= "Maigreur" If Imc>=18.5 and Imc<25 Then Qualif= "Poids idéal" If Imc>=25 and Imc<30 Then Qualif= "Surpoids" If Imc>=30 and Imc<35 Then Qualif= "Obésité modérée" If Imc>=35 and Imc<=40 Then Qualif= "Obésité sévère" If Imc>40 then Qualif= "Obésité morbide" MsgBox("Vous pesez " & Poids & " kg et mesurez " & Taille & " cm. Votre indice de masse corporelle est de : " & Imc) MsgBox("votre état est qualifié médicalement de : " & Qualif) End Sub
Question 3 :
Un magazine féminin propose deux régimes amincissants A et B destinés respectivement aux personnes en surpoids ou en obésité modérée. Compléter le programme de la question 1 pour indiquer le régime recommandé. Lorsque celui-ci n'existe pas, indiquer :
consulter un médecin.
Ajouter juste avant End Sub If Qualif="Surpoids" Then MsgBox("On vous recommande le régime A") Else If Qualif="Obésité modérée" Then MsgBox("On vous recommande le régime B") Else MsgBox("Consultez un médecin") End If End If

TSVP->


Exercice n°2 :
Question 1 : Indiquer ce qui est affiché par la macro suivante lorsque l'utilisateur rentre la valeur 5 :Sub P1() Dim n As integer, i As Integer n=InputBox( "Entrez un nombre entier" ) i=0 While i<=n MsgBox(i) i=i+2 Wend End Sub
Trois boites de dialogue apparaissent successivement avec les valeurs 0, 2 et 4.
Question 2: Expliquer d'une phrase ce que fait cette macro en fonction de l'entier entré par l'utilisateur.
Elle affiche tous les entiers pairs inférieurs ou égaux à la valeur rentrée par l'utilisateur.
Question 3: Que fait cette macro si l'on remplace l'instruction i=0 par l'instruction i=1 ?
Elle affichera tous les entiers impairs inférieurs ou égaux à la valeur rentrée par l'utilisateur.