TD 2 :STRUCTURES CONDITIONNELLES
EXERCICE 1 :
Ecrire un algorithme qui demande deux nombres à
l’utilisateur, et l’informe ensuite si les deux nombres sont de même signe ou
nom.
Ecrire un algorithme qui permet de lire deux nombres
entiers n et m et détermine si le nombre n est divisible par m.
EXERCICE 2 :
Ecrire un algorithme qui demande un nombre à
l’utilisateur, et l’informe ensuite si ce nombre est positif ou négatif
(on
inclut de traitement du cas où le nombre vaut zéro)
(on inclut de traitement du cas où le nombre vaut zéro)
EXERCICE 3 :
Ecrire un algorithme qui lit trois nombres et affiche
leur maximum. En utilisant :
- SI-SINON et
une variable d’aide max.
- SI-SIONON
SI-…-SONON sans variable d’aide.
EXERCICE 4 :
Ecrivez un programme qui lit deux valeurs entières (A
et B) au clavier et qui affiche le signe du produit de A et B sans faire la
multiplication.
EXERCICE 5 :
Ecrire un algorithme qui lit trois valeurs entières
(A, B et C) au clavier. Triez les valeurs A, B et C d’une façon décroissante
par échange successifs puis affichez les trois valeurs.
EXERCICE 6 :
Ecrire un algorithme qui demande l’Age d’un enfant a
l’utilisateur. Ensuite, il l’informe de sa catégorie :
«
poussin » Si l’Age est entre 6 et 8 ans.
«
Pupille » Si l’Age est entre 8 et 10
ans.
«
Minime » Si l’Age est entre 10 et 12 ans.
« cadet » Si l’Age est supérieur a 12
ans.
« Pupille » Si l’Age est entre 8 et 10 ans.
« Minime » Si l’Age est entre 10 et 12 ans.
« cadet » Si l’Age est supérieur a 12 ans.
EXERCICE 8 :
écrire un algorithme qui calcule les solutions
réelles d’une équation du second degré : ax2+bx+c=0
Utilisez une variable d’aide D pour la valeur du
discriminant b2-4ac et décidez à l’aide de D. si l’équation a une deux ou
aucune solution réelle.
Modifier votre algorithme pour traiter aussi les cas
ou l’utilisateur entre des valeurs ,nulles pour A et B : pour A, B et C.
Correction :
EXERCICE 1 :
Part 1 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
int b;
printf("entrez la valeur de a");
scanf("%d",&a);
printf("entrez la valeur de b");
scanf("%d",&b);
if(a<0){
if(b<0){
printf("les nombres ont le meme signe");
}
else{
printf("les nombres n'ont pas le meme signe");
}
}
else {
if(b>0){
printf("les nombres ont le meme signe");
}
else{
printf("les nombres n'ont pas le meme signe");
}
}
return 0;
}
Part 2 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int Nb;
printf("entrez un nombre");
scanf("%d",Nb);
if (Nb%2 == 0)
{
printf(" votre nombre est paire");
}
else {
printf("votre nombre n'est pas paire");
}
return 0;
}
Part 3 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n;
int m;
printf("entrez la valeur de n");
scanf("%d",&n);
printf("entrez la valeur de m");
scanf("%d",&m);
if (n%m==0)
{
printf("le nombre %d est divisible par %d",n,m);
}
else {
printf("le nombre %d n'est pas divisible par %d",n,m);
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
int b;
printf("entrez la valeur de a");
scanf("%d",&a);
printf("entrez la valeur de b");
scanf("%d",&b);
if(a<0){
if(b<0){
printf("les nombres ont le meme signe");
}
else{
printf("les nombres n'ont pas le meme signe");
}
}
else {
if(b>0){
printf("les nombres ont le meme signe");
}
else{
printf("les nombres n'ont pas le meme signe");
}
}
return 0;
}
Part 2 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int Nb;
printf("entrez un nombre");
scanf("%d",Nb);
if (Nb%2 == 0)
{
printf(" votre nombre est paire");
}
else {
printf("votre nombre n'est pas paire");
}
return 0;
}
Part 3 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n;
int m;
printf("entrez la valeur de n");
scanf("%d",&n);
printf("entrez la valeur de m");
scanf("%d",&m);
if (n%m==0)
{
printf("le nombre %d est divisible par %d",n,m);
}
else {
printf("le nombre %d n'est pas divisible par %d",n,m);
}
return 0;
}
EXERCICE 2 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int Nb;
printf("entrez un nombre");
scanf("%d",&Nb);
if(Nb<0){
printf("votre nombre est negatif");
}
else if(Nb==0){
printf("votre nombre est nul ");
}
else{
printf("votre nombre est positif");
}
return 0;
}
#include <stdlib.h>
int main()
{
int Nb;
printf("entrez un nombre");
scanf("%d",&Nb);
if(Nb<0){
printf("votre nombre est negatif");
}
else if(Nb==0){
printf("votre nombre est nul ");
}
else{
printf("votre nombre est positif");
}
return 0;
}
EXERCICE 3 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int A;
int B;
int C;
int max;
printf("entrez la valeur de A :");
scanf("%d",&A);
printf("entrez la valeur de B :");
scanf("%d",&B);
printf("entrez la valeur de C :");
scanf("%d",&C);
if (A>=B){
max = A;
}
else{
max = B;
}
if (C>=max){
max = C;
}
else {}
printf("le plus grand nombre est %d ",max);
return 0;
}
#include <stdlib.h>
int main()
{
int A;
int B;
int C;
int max;
printf("entrez la valeur de A :");
scanf("%d",&A);
printf("entrez la valeur de B :");
scanf("%d",&B);
printf("entrez la valeur de C :");
scanf("%d",&C);
if (A>=B){
max = A;
}
else{
max = B;
}
if (C>=max){
max = C;
}
else {}
printf("le plus grand nombre est %d ",max);
return 0;
}
EXERCICE 4 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
int b;
printf("entrez la valeur de a");
scanf("%d",&a);
printf("entrez la valeur de b");
scanf("%d",&b);
if(a>0&b>0){
printf("le produit est positif");
}
else if(a<0&b<0){
printf("le produit est positif");
}
else if(a<0&b>0){
printf("le produit est negatif");
}
else if (a>0&b<0){
printf("le priduit est negatif");
}
else {
printf("le produit est nul");
}
return 0;
}
#include <stdlib.h>
int main()
{
int a;
int b;
printf("entrez la valeur de a");
scanf("%d",&a);
printf("entrez la valeur de b");
scanf("%d",&b);
if(a>0&b>0){
printf("le produit est positif");
}
else if(a<0&b<0){
printf("le produit est positif");
}
else if(a<0&b>0){
printf("le produit est negatif");
}
else if (a>0&b<0){
printf("le priduit est negatif");
}
else {
printf("le produit est nul");
}
return 0;
}
EXERCICE 5 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int A;
int B;
int C;
printf("entrez la valeur de A:");
scanf("%d",&A);
printf("entrez la valeur de B:");
scanf("%d",&B);
printf("entrez la valeur de C:");
scanf("%d",&C);
if(A>B){
if (B>C){
printf ("le tri sera %d %d %d",A,B,C);
}
else if (C<A){
printf("le tri sera %d %d %d",A,C,B);
}
else {
printf("le tri sera %d %d %d",C,A,B);
}
}
else{
if(C<A){
printf("le tri sera %d %d %d",B,A,C);
}
else if (C<B){
printf("le tri sera %d %d %d",B,C,A);
}
else{
printf("le tri sera %d %d %d",C,B,A);
}
}
return 0;
}
#include <stdlib.h>
int main()
{
int A;
int B;
int C;
printf("entrez la valeur de A:");
scanf("%d",&A);
printf("entrez la valeur de B:");
scanf("%d",&B);
printf("entrez la valeur de C:");
scanf("%d",&C);
if(A>B){
if (B>C){
printf ("le tri sera %d %d %d",A,B,C);
}
else if (C<A){
printf("le tri sera %d %d %d",A,C,B);
}
else {
printf("le tri sera %d %d %d",C,A,B);
}
}
else{
if(C<A){
printf("le tri sera %d %d %d",B,A,C);
}
else if (C<B){
printf("le tri sera %d %d %d",B,C,A);
}
else{
printf("le tri sera %d %d %d",C,B,A);
}
}
return 0;
}
EXERCICE 6 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
float Age;
printf("entrez l'age de l'enfant");
scanf("%f",&Age);
if(Age<6){
printf("Hors classement");
}
else if(Age<8){
printf("Poussin");
}
else if(Age<10){
printf("Pupille");
}
else if(Age<12){
printf("Minime");
}
else{
printf("Cadet");
}
return 0;
}
#include <stdlib.h>
int main()
{
float Age;
printf("entrez l'age de l'enfant");
scanf("%f",&Age);
if(Age<6){
printf("Hors classement");
}
else if(Age<8){
printf("Poussin");
}
else if(Age<10){
printf("Pupille");
}
else if(Age<12){
printf("Minime");
}
else{
printf("Cadet");
}
return 0;
}
EXERCICE 8 :
#include <stdio.h>
#include <stdlib.h>
int main()
{
float A;
float B;
float C;
float D;
float X;
float X1;
float X2;
printf("Calcul des solutions réelles d'une équation du second degré de la forme ax^2 + bx + c = 0 \n");
printf("Introduisez les valeurs pour a, b, et c : ");
scanf("%f",&A);
scanf("%f",&B);
scanf("%f",&C);
if (A==0&B==0&C==0){
printf("Tout réel est une solution de cette équation.");
}
else if (A==0&B==0)
printf("Cette équation ne possède pas de solutions.");
else if (A==0)
{
X=(-C)/B;
printf("La solution de cette équation du premier degré est :%f",X);
}
else {
D = B*B - 4*A*C;
if(D<0) {
printf("Cette équation n'a pas de solutions réelles.");
}
else if (D==0)
{
X=-B/A;
printf("Cette équation a une seule solution réelle :%f",X);
}
else
{
X1=(-B-(sqrt(D)))/2*A;
X2=(-B+(sqrt(D)))/2*A;
printf("Les solutions réelles de cette équation sont %f et %f :",X1,X2);
}
}
return 0;
}
#include <stdlib.h>
int main()
{
float A;
float B;
float C;
float D;
float X;
float X1;
float X2;
printf("Calcul des solutions réelles d'une équation du second degré de la forme ax^2 + bx + c = 0 \n");
printf("Introduisez les valeurs pour a, b, et c : ");
scanf("%f",&A);
scanf("%f",&B);
scanf("%f",&C);
if (A==0&B==0&C==0){
printf("Tout réel est une solution de cette équation.");
}
else if (A==0&B==0)
printf("Cette équation ne possède pas de solutions.");
else if (A==0)
{
X=(-C)/B;
printf("La solution de cette équation du premier degré est :%f",X);
}
else {
D = B*B - 4*A*C;
if(D<0) {
printf("Cette équation n'a pas de solutions réelles.");
}
else if (D==0)
{
X=-B/A;
printf("Cette équation a une seule solution réelle :%f",X);
}
else
{
X1=(-B-(sqrt(D)))/2*A;
X2=(-B+(sqrt(D)))/2*A;
printf("Les solutions réelles de cette équation sont %f et %f :",X1,X2);
}
}
return 0;
}