Exercice
1 :
Écrire une
fonction search qui recherche une valeur particulière dans un tableau de
flottants
(float).
La fonction prendra en paramètre le tableau, sa taille et la valeur à
rechercher. Elle
retourna une
valeur entière qui sera une position de la valeur dans le tableau si
elle est
présente dans le
tableau et -1 sinon. Inclure cette fonction dans un programme qui saisit
les
valeurs du
tableau et la valeur à rechercher.
Exercice
2 :
Ecrire un
programme qui permet de saisir le sexe (M/F), la taille, et le poids d’une
personne et
d’afficher :
1) PI, le poids
idéal d’une personne, sachant que ce poids théorique est donné par la formule
de Lorenz comme
suit :
Pour un homme : PI=
(taille-100)-(taille-150)/4
Pour une femme : PI= (taille-100)-(taille-120)/4
2) BMI,
l’indicateur d’obésité (Body Mass Index) où BMI=poids/taille*taille.
3) Si une
personne est considérée comme : normale (BMI<=27), ou obèse (BMI>27) ou
malade
(BMI>=32).
Exercice
3:
Écrire un
programme qui demande trois valeurs entières à l’utilisateur, affecte la plus
grande
valeur à une
variable grand, la valeur intermédiaire à une variable moyen et
la plus petite des
trois à une
variable petit, puis affiche les valeurs de grand, moyen et
petit.
Correction :
Exercice 1 :
#include<stdio.h>
#include<stdlib.h>
/* Définition de la fonction
search*/
Int search(float T[], int size, float Valeur)
{
int i; /* Indice courant */
for (i=0; i<size;i++)
if (T[i] == Valeur)
return i; /* Position de la
valeur */
return -1; /* Valeur non
trouvée */
}
/* Le programme principale*/
int main(int argc, char
*argv[])
{
const int size = 10; /*
Taille du tableau */
float T[size]; /* Tableau */
float x; /* Valeur à
rechercher */
int i; /* Indice */
/* Remplissage du tableau */
printf("Remplissage du
tableau:\n");
for (i = 0; i < size; i++)
{
printf("Entrer
T[%d]=:",i);
scanf("%f",&T[i]);
}
/* Affichage du tableau */
printf("Affichage du
tableau:\n");
for (i = 0; i < size; i++)
printf("T[%d] =
%f\n", i, T[i]);
/* Saisie de la clé à
rechercher */
printf("Entrer la
valeur : ");
scanf("%f",
&x);
/* Affichage du résultat */
printf(" %d\n",
search(T, size, x));
system("PAUSE");
return 0;
}
Exercice 2 :
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char
*argv[])
{ char Sexe;
float taille;
float poids;
float PI;
float BMI;
printf("Introduire le
sexe (M ou F):");
scanf("%c",&Sexe);
printf("Introduire la
taille :");
scanf("%f",&taille);
printf("Introduire le
poids:");
scanf("%f",&poids);
if (Sexe=='M') PI=
(taille-100)-(taille-150)/4;
if (Sexe=='F') PI= (taille-100)-(taille-120)/4;
printf(" Le poids idéal
de cette personne est %f et ",PI);
BMI=poids/taille*taille;
if(BMI<=27) printf
("Cette personne est normale");
else if (BMI>27) printf
("Cette personne est obèse");
else if (BMI>=32)printf
("Cette personne est malade");
system("PAUSE");
return 0;
}
Exercice 3:
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char *argv[])
{ int A,B,C; /* Les
variables d'entrées*/
int Grand, Petit, Moyen; /*
Les variables de sorties*/
printf("Introduisez
trois nombres entiers :");
scanf("%d %d %d", &A, &B, &C);
if(A<=B) { if(B<=C) {Petit=A; Moyen=B; Grand=C;}
else {if (C<=A){Petit=C; Moyen=A; Grand=B;}
else {Petit=A; Moyen=C; Grand=B;}
}} else { if(A<=C){Petit=B; Moyen=A; Grand=C;}
else { if(C<=B) {Petit=C; Moyen=B; Grand=A;}
else {Petit=B; Moyen=C;
Grand=A;}}}
printf(" Les valeurs
sont: \t Grand = %d\t Moyen = %d\t Petit
= %d\n", Grand, Moyen,
Petit);
system("PAUSE");
return 0;}
salut,
RépondreSupprimerL'exercice 2 ne marche pas bien, quelque soit les donnée entrées il dit toujours que la personne est obèse.
OK JE VOIS L'ERREUR, VOUS DEVEZ DOUBLE LE "=" AU NIVEAU DU BMI
SupprimerBonsoir
RépondreSupprimerexercice 2 lire et affiche sans PI et BMI