Amine Ziadi Algorithme & Programmation LI1.
2 ISET Mahdia
Compte Rendu : TP2
Exercice1 :
#include<stdio.h>
void main()
int nbr;
printf("Donner un entier\n");
scanf("%d",&nbr);
if (nbr<0) {
printf("Le nbr %d est negatif\n",nbr );
} else
if (nbr>0) {
printf("Le nbr %d est positif\n",nbr );
} else {
printf("Le nbr %d est nul\n",nbr );
Exercice2 :
#include<stdio.h>
void main() {
int a,b ;
printf("Donner un entier a : ");
scanf("%d",&a);
printf("Donner un entier b : ");
scanf("%d",&b);
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
if (((a<0) && (b>0)) || ((a>0) && (b<0))) {
printf("Le signe est -\n");
} else {
printf("Le signe est +\n");
}Exercice3 :
#include<stdio.h>
#include<math.h>
void main() {
int nb, u, d, c, g;
printf("Donner un nombre de 3 chiffres : ");
scanf("%d",&nb);
c = nb/100;
d = (nb-c*100)/10;
u = nb%10;
g = pow(c,3)+pow(d,3)+pow(u,3);
if(g == nb){
printf("Le nombre %d est cubique\n",nb);
} else{
printf("Le nombre %d n'est pas un nombre cubique\n",nb);
Exercice4 :
#include <stdio.h>
void main(){
float a, b;
float x=0;
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
printf("La resolution de l'equation : ax+b=0\n\n");
printf("Saisir 'a' : ");
scanf("%f", &a);
printf("Saisir 'b' : ");
scanf("%f", &b);
printf("\n\n");
x =-b/a ;
if (a != 0 && b != 0) {
printf("La solution de l'equation est : x = %f\n", x);
else if (a != 0 && b == 0) {
printf("La solution de l'equation est : x = %f\n", x);
else{
printf("Il n'y a pas de solution a l'equation\n");
Exercice5 :
a) Avec l’instruction if-else :
#include<stdio.h>
void main() {
int jj;
printf("Saisir le nombre de jour 1..7 : ");
scanf("%d",&jj);
if (jj==1) {
printf("Le jour numero %d est Demanche\n",jj );
} else if (jj==2) {
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
printf("Le jour numero %d est Lundi\n",jj );
} else if (jj==3) {
printf("Le jour numero %d est Mardi\n",jj );
} else if (jj==4) {
printf("Le jour numero %d est Mercredi\n",jj );
} else if (jj==5) {
printf("Le jour numero %d est Jeudi\n",jj );
} else if (jj==6) {
printf("Le jour numero %d est Vendredi\n",jj );
} else if (jj==7){
printf("Le jour numero %d est Samedi\n",jj );
} else {
printf("Le jour numero %d est n'existe pas\n",jj );
b) Avec l’instruction switch :
#include<stdio.h>
void main() {
int jj;
printf("Saisir le nombre de jour1..7 : ");
scanf("%d",&jj);
switch(jj) {
case 1 :
printf("Le jour numero %d est Demanche\n",jj );
break;
case 2 :
printf("Le jour numero %d est Lundi\n",jj );
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
break;
case 3 :
printf("Le jour numero %d est Mardi\n",jj );
break;
case 4 :
printf("Le jour numero %d est Mercredi\n",jj );
break;
case 5 :
printf("Le jour numero %d est Jeudi\n",jj );
break;
case 6 :
printf("Le jour numero %d est Vendredi\n",jj );
break;
case 7 :
printf("Le jour numero %d est Samedi\n",jj );
break;
default :
printf("Le jour numero %d est n'existe pas\n",jj );
Exercice6 :
a) Avec Si-sinon :
#include<stdio.h>
void main() {
float temp;
printf("Donner le temperature de l'eau : ");
scanf("%f",&temp);
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
if (temp<=0) {
printf("Glace\n");
} else if ( (temp>0) && (temp<=100) ) {
printf("Eau\n");
} else {
printf("Vapeur\n");
b) Avec Selon :
#include<stdio.h>
void main() {
int temp;
printf("Donner le temperature de l'eau : ");
scanf("%f",&temp);
switch(temp) {
case <=0 :
printf("Glace\n");
break;
case >100 :
printf("Vapeur\n");
break;
default :
printf("Eau\n");
NB : Il y’a un problème car l’instruction « Switch » ne ce marche jamais avec la comparaison !
Exercice7 :
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
#include<stdio.h>
void main() {
int jj, mm, aaaa;
printf("Saisir une date formet par num de jour,num de moi, num de l'anne : ");
scanf("%d %d %d",&jj,&mm,&aaaa);
switch(mm) {
case 1 :
printf("%d Janvier %d\n",jj,aaaa);
break;
case 2 :
printf("%d Fevrier %d\n",jj,aaaa);
break;
case 3 :
printf("%d Mars %d\n",jj,aaaa);
break;
case 4 :
printf("%d Avril %d\n",jj,aaaa);
break;
case 5 :
printf("%d Mai %d\n",jj,aaaa);
break;
case 6 :
printf("%d Juin %d\n",jj,aaaa);
break;
case 7 :
printf("%d Juillet %d\n",jj,aaaa);
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
break;
case 8 :
printf("%d Aout %d\n",jj,aaaa);
break;
case 9 :
printf("%d Septembre %d\n",jj,aaaa);
break;
case 10 :
printf("%d Octobre %d\n",jj,aaaa);
break;
case 11 :
printf("%d Novembre %d\n",jj,aaaa);
break;
case 12 :
printf("%d Decembre %d\n",jj,aaaa);
break;
default :
printf("Le num de le mois n'existe pas!");
Exercice8 :
#include<stdio.h>
void main() {
int jj, mm, aaaa;
printf("Saisir une date formet par num de moi, num de l'anne : ");
scanf("%d %d",&mm,&aaaa);
switch(mm) {
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
case 1 :
jj = 31;
break;
case 2 :
if ( ( (aaaa%4==0) && (aaaa%100!=0)) || ( (aaaa%400==0) ) ) {
jj = 29;
} else {
jj = 28;
break;
case 3 :
jj = 31;
break;
case 4 :
jj = 30;
break;
case 5 :
jj = 31;
break;
case 6 :
jj = 30;
break;
case 7 :
jj = 31;
break;
case 8 :
jj = 31;
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
break;
case 9 :
jj = 30;
break;
case 10 :
jj = 31;
break;
case 11 :
jj = 30;
break;
case 12 :
jj = 31;
break;
default :
printf("Le num de mois est incorrect!");
printf("Le nombre de jours dans le mois num %d est %d\n",mm,jj);
Exercice9:
#include<stdio.h>
void main() {
int jour;
printf("Donner le num de jour : ");
scanf("%d",&jour);
switch(jour) {
case 1 :
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
printf("C\'est lundi, il y a cours\n");
break;
case 2 :
printf("C\'est Mardi, il y a cours\n");
break;
case 3 :
printf("C\'est Mercredi, il y a cours\n");
break;
case 4 :
printf("C_'est Jeudi, il y a cours\n");
break;
case 5 :
printf("C\'est Vendredi, il y a cours\n");
break;
case 6 :
printf("C\'est le Samedi, il y a devoir surveille\n");
break;
case 7 :
printf("C\'est le Dimanche, on se repose!\n");
break;
default :
printf("Le num de jour est incorrect!!\n");
Exercice10 :
#include<stdio.h>
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
void main() {
char opc;
int oper, opera;
float operat;
printf("Donner le premier operande : ");
scanf("%d",&oper);
printf("Taper une operateur (+,*,-,/):");
opc = getch();
printf("\nDonner le second operande : ");
scanf("%d",&opera);
if (opc=='+') {
operat = oper+opera;
} else if (opc=='-') {
operat = oper-opera;
} else if (opc=='*') {
operat = oper*opera;
} else if (opc=='/') {
operat = oper/opera;
} else {
printf("L'operateur est incorrect\n");
printf("Le resultat est : %f \n",operat);
Exercice11 :
#include<stdio.h>
void main() {
int nbr_copie;
Amine Ziadi Algorithme & Programmation LI1.2 ISET Mahdia
float facture=0;
printf("Donner le nombre de copier : ");
scanf("%d",&nbr_copie);
if (nbr_copie<=10) {
facture = facture+nbr_copie*0.15;
} else {
facture = facture+10*0.15;
nbr_copie = nbr_copie-10;
if (nbr_copie<=20) {
facture += nbr_copie*0.1;
} else {
facture = facture+20*0.1;
nbr_copie = nbr_copie-20;
if (nbr_copie > 0) {
facture += nbr_copie*0.075;
printf("Le fature = %.3f DT",facture);