Vous êtes sur la page 1sur 7

TD N°1 : langage C

Exercice 1 :
Ecrire un programme qui lit un nombre réel puis affiche sa racine carrée s’il est positif ou
impossible s’il est négatif.

Exercice 2 :
Ecrire un programme qui résout l’équation du 1ere degré dans R

Exercice 3 :

Ecrire un programme permettant à un utilisateur de résoudre l’équation du second degré a coefficients


constants : ax²+bx+c =0 / (a, b, c) appartiennent à R.

Exercice 4 :

Ecrire un programme qui donne une appréciation en fonction d’une note entière positive entre 0 et 5.

Exercice 5 :

Ecrire un programme qui permet d’afficher des chiffres paires commençant du 0 tant que la variable « i »
est inferieure à la valeur maximale noté « m ».

Exercice 6 :

Fait un programme qui permet d’afficher les multiples de chaque chiffre « m » entré par l’utilisateur tant
que ce chiffre est inférieur à la valeur limite « M ».

Exercice 7 :

Ecrire un programme pour calculer :


1. La somme des nombres pairs.
2. La somme des nombres impairs.
3. La somme de tous les nombres.

Exercice 8 :

Ecrire un programme pour afficher la table de multiplication par 7.

Exercice 9 :

Ecrire un programme qui affiche la table de multiplication de chaque nombre saisi.

Exercice 10 :

Ecrivez un programme qui lit N nombres entiers du clavier et qui affiche leur somme, leur
produit et leur moyenne. Choisissez un type approprié pour les valeurs à afficher. Le nombre N est à
entrer par le clavier. Résolvez ce problème :
1. En utilisant « while »
2. En utilisant « do … while »
3. En utilisant « for »
4. Laquelle des trois variantes est la plus naturelle pour ce problème ?
Corrections :
Exercice 1 :
Réponse1 :
#include <stdio.h>
#include <conio.h>
#include<math.h>
void main ()
{
float x, racine ;
printf ("\t**programme de la racine carree**") ;
printf("\n\n") ;
printf (" entrer un nombre reel :") ;
scanf ("%f" ,&x) ;
if (x >= 0)
{
racine = sqrt (x) ;
printf ("\n la racine carree de %f est %f", x, racine) ;
}
else
printf ("impossible") ;
getch() ;
}
Exercice2 :
# include <stdio.h>
#include <conio.h>
void main()
{
float a, b, x ;
printf ("\t programme de resolution d equation du premier ordre :") ;
printf("\n\n") ;
printf ("entrer le coefficient a :");
scanf ("%f", &a);
printf ("entrer le coefficient b :");
scanf ("%f", &b) ;
if (!a) /* si a=0*/
{
if (!b) /*si a=0 et b=0*/
printf ("\n R est l ensemble des solutions de l equation 0x+0= 0") ;
else /* si a=0 et b#0 */
printf ("\n aucun reeln est solution de l equation 0x+%.3f=0", b) ;
}
else /* si a#0*/
{
x= -b/a ;
printf ("\n la solution d equation %.3fx+%.3f= 0 est x=%.3f", a,b, x) ;
}
getch() ;
}
Exercice3 :
#include <stdio.h>
#include <math.h>
#include <conio.h>
void main()
{
int a, b, c ;
float D, X1, X2 ;
printf ("\t resolution de l’équation : ax*x+b*x+c= 0") ;
printf("\n\n") ;
printf ("donner a :") ;
scanf ("%d", &a) ;
printf ("donner b :") ;
scanf ("%d", &b) ;
printf ("donner c :") ;
scanf ("%d", &c) ;
if ((a==0)&&(b==0)&&(c==0))
printf ("\n il y’a une infinite de solutions ") ;
else
{
if ((a==0)&&(b ==0)&&(c!=0))
printf ("\n\t pas de solutions") ;
else
{
if ((a==0)&&(b!=0)&&(c!=0))
printf ("\n\t il y a une seule solution %.3f", float(-c/b)) ;
else
{
D= b*b-4*a*c ;
if (D==0)
printf ("\n\t il y’a une seule solution %.3f ", float(-b/2*a)) ;
else
{
if (D<0)
printf ("\n\t pas de solutions ") ;
else
{
X1= (-b-sqrt(D))/ (2*a);
X2= (-b+sqrt(D))/ (2*a) ;
printf ("\n\t il y a 2 solutions %.3f et %.3f", X1, X2) ;
}
}
}
}
}
getch() ;
}
Exercice 4 :
#include <stdio.h>
#include <conio.h>
voidmain()
{
int i ;
printf ("entrez la note entre 0 et 5 :") ;
scanf ("%d", &i) ;
switch(i)
{
case 0 :
printf("\n\n\t vous etes nul", i) ;
break ;
case 1 :
printf("\n\n\t vousetes mediocre", i) ;
break ;
case 2:
printf("\n\n\t vous etes insuffisant", i) ;
break ;
case 3:
printf("\n\n\t vousetes passable", i) ;
break ;
case 4:
printf("\n\n\t vous etes bien", i) ;
break ;
case 5:
printf("\n\n\t vousetes excellent", i) ;
break ;
default :
printf("\n\n\t votre note n est pas entre 0 et 5") ;
}
getch() ;
}
Exercice5 :
#include <stdio.h>
#include <conio.h>
void main()
{
int m;
int i= 0 ;
printf("entrer la valeur maximale m:");
scanf("%d",&m) ;
printf("\n\n");
while (i<=m)
{
printf("%i \t", i) ;
i+=2 ;
}
getch() ;
}
Exercice6 :
#include <stdio.h>
#include <conio.h>
void main()
{
int m;
int i= 0;
int M;
printf("\t Entrer la valeur maximale M:");
scanf("%d",&M) ;
printf("\t Entrer la valeur du chiffre m :")
scanf("%d",&m)
printf("\n\n");
while (i<=M)
{
printf("%i \t", i) ;
i+=m ;
}
getch() ;
}
Exercice7 :
#include <stdio.h>
#include <conio.h>
void main()
{
int i, N, S ;
printf("\t Calcule De La Somme Des Nombres Impaires") ;
printf("\n\n") ;
printf (" Donner un entier :") ;
scanf ("%d", &N) ;
/*1. La somme des nombres pairs*/
for (i=0, S=0; i<=N; i+=2)
S+= i ;
printf ("\n\t La somme des nombres pairs est : %d", S) ;

/* 2. La somme des nombres impairs*/


for (i=1, S=0; i<=N; i+=2)
S+= i ;
printf ("\n\t La somme des nombres impairs est : %d", S) ;

/* 3. La somme de tous les nombres*/


for (i=0, S=0; i<=N; i++)
S+= i ;
printf ("\n\t La somme de tous les nombres est : %d", S) ;
getch() ;
}
Exercice8 :
Réponse2 :
#include <stdio.h>
#include <conio.h>
void main()
{
int i, j ;
printf("\t\t ** Table de Multiplication de 7 **\n\n") ;
for (i=7; i<=7; i++)
{
for (j=1; j<=10; j++)
printf ("\t %d*%d= %d \n", i, j, i*j) ;
}
getch() ;
}
Exercice9 :
#include <stdio.h>
#include <conio.h>
void main()
{
int i, j ;
printf("\t ** Table de Multiplication **") ;
printf("\n\n Donner un nombre entier i:") ;
scanf ("%d", &i) ;
for (j=1; j<=10; j++)
printf ("\n\n\t %d*%d= %d", i, j, i*j) ;
getch();
}
Exercice 10 :
#include <stdio.h>
#include<conio.h>
void main()
{
int N; // nombre de données
int NOMB; // nombre courant
int I; // compteur
long SOM; // la somme des nombres entrés
double PROD; // le produit des nombres entrés
printf("\t ** Calcul de la Somme, le Factoriel et la Moyenne **");
printf("\n\n Le Nombre de donnees est:");
scanf("%d", &N);
printf("\n\n");

/* 1. En utilisant la boucle while*/

SOM=0;
PROD=1;
I=1;
while(I<=N)
{
printf(" NombreNnumero %d=",I);
scanf("%d", &NOMB);
SOM += NOMB;
PROD *= NOMB;
I++;
}

/* 2. En utilisant la boucle <do…while >*/

SOM=0;
PROD=1;
I=1;
do
{
printf(" NombreNumero %d= ", I);
scanf("%d", &NOMB);
SOM += NOMB;
PROD *= NOMB;
I++;
}
while(I<=N);

/* 3. En utilisant la boucle for*/


for (SOM=0, PROD=1, I=1 ; I<=N ; I++)
{
printf(" NombreNumero %d= ", I);
scanf("%d", &NOMB);
SOM += NOMB;
PROD *= NOMB;
}

/* Affichage des resultats */

printf("\n\n\t La somme des %d nombres est %ld \n", N, SOM);


printf("\t Le produit des %d nombres est %.0f\n", N, PROD);
printf("\t La moyenne des %d nombres est %.3f\n", N, (float)SOM/N);
getch();
}

Vous aimerez peut-être aussi