1
0
Fork 0
mirror of https://codeberg.org/DansLeRuSH/c-plus-plus-exercises.git synced 2024-05-18 08:14:57 +00:00

Compilation of all previous exercises (with a menu)

This commit is contained in:
Franck ALBARET 2018-10-23 06:14:44 +00:00
parent 9364306655
commit 87f12c39ee

367
MENU_BEST_OF.cpp Normal file
View file

@ -0,0 +1,367 @@
// Auteur : Franck ALBARET
#include <stdio.h>
#include <conio.h>
void EXO1 (void)
{
clrscr();
puts (" ");
puts (" Programme nø1 :");
puts (" ");
printf(" La taille de la variable en int est de %i octet(s)\n",sizeof (int));
puts (" ");
printf(" La taille de la variable en unsigned int est de %i octet(s)\n",sizeof (unsigned int));
puts (" ");
printf(" La taille de la variable en long int est de %i octet(s)\n",sizeof (long int));
puts (" ");
printf(" La taille de la variable en unsigned long int est de %i octet(s)\n",sizeof (unsigned long int));
puts (" ");
printf(" La taille de la variable en short int est de %i octet(s)\n",sizeof (short int));
puts (" ");
printf(" La taille de la variable en unsigned short int est de %i octet(s)\n",sizeof (unsigned short int));
puts (" ");
printf(" La taille de la variable en char est de %i octet(s)\n",sizeof (char));
puts (" ");
printf(" La taille de la variable en float est de %i octet(s)\n",sizeof (float));
puts (" ");
printf(" La taille de la variable en double est de %i octet(s)\n",sizeof (double));
puts (" ");
printf(" La taille de la variable en long double est de %i octet(s)\n",sizeof (long double));
getch();
}
void EXO2 (void)
{
clrscr();
int Entier;
puts (" ");
puts (" Programme nø2 :");
puts (" Entrer un entier :");
scanf ("%i",&Entier);
printf(" L'écriture décimale de l'entier est %i\n",Entier);
printf(" L'écriture octale de l'entier est %o\n",Entier);
printf(" L'écriture hexadécimale de l'entier est %x\n",Entier);
getch();
}
void EXO3 (void)
{
clrscr();
int Nbr;
int Nbr2;
puts (" ");
puts (" Programme nø3 :");
puts (" Quel est le premier nombre ?");
scanf ("%i",&Nbr);
puts (" Quel est le deuxième nombre ?");
scanf ("%i",&Nbr2);
printf(" La moyenne est %i\n",(Nbr+Nbr2)/2);
getch();
}
void EXO4 (void)
{
clrscr();
int Nbr;
int Nbr2;
puts (" ");
puts (" Programme nø4 :");
puts (" Quel est le premier nombre ?");
scanf ("%i",&Nbr);
puts (" Quel est le deuxième nombre ?");
scanf ("%i",&Nbr2);
{
if (Nbr>Nbr2)
{
printf (" Le plus grand nombre est %i\n",Nbr);
printf (" Le plus petit nombre est %i\n",Nbr2);
}
else
{
printf (" Le plus grand nombre est %i\n",Nbr2);
printf (" Le plus petit nombre est %i\n",Nbr);
}
getch();
}
}
void EXO5 (void)
{
clrscr();
int Nbr,Reste;
puts (" ");
puts (" Programme nø5 :");
puts (" Veuillez taper un entier :");
scanf ("%i",&Nbr);
Reste=Nbr%2;
if (Reste==0)
puts (" Le nombre est pair\n");
else
puts (" Le nombre est impair\n");
getch();
}
void EXO6 (void)
{
clrscr ();
int i=0;
int cpt=0;
char Texte [200];
puts (" ");
puts (" Programme nø6 :");
puts (" Veuillez taper votre texte :\n");
fflush(stdin);
gets(Texte);
while(Texte[i]!='\0')
{
if (Texte[i]=='a')
cpt=cpt+1;
i=i+1;
}
printf ("\n\n Le nombre de a est %i\n",cpt);
getch();
}
void EXO7 (void)
{
clrscr();
int i=0;
char Texte [80];
puts (" ");
puts (" Programme nø7 :");
puts (" Veuillez taper votre texte :\n\n");
fflush(stdin);
gets(Texte);
while (Texte [i]!='\0')
{
if (Texte [i]!=' ')
{
printf ("%c",Texte [i]);
}
i=i+1;
}
getch();
}
void EXO8 (void)
{
clrscr();
int Nbr=0;
int Cpt=0;
int Test=0;
puts (" ");
puts (" Programme nø8 :");
puts (" Entrez un nombre : \n");
scanf("%i",&Nbr);
Cpt=Nbr-1;
if (Cpt<1)
{
printf(" Ce nombre n'est pas valide. \n");
}
while (Cpt>1)
{
if (Nbr%Cpt!=0)
Cpt=Cpt-1;
else
{
Test=1;
Cpt=Cpt-1;
}
}
if (Test!=1)
printf(" Le nombre %i est un nombre premier. \n",Nbr);
else
printf(" Le nombre %i n'est pas un nombre premier. \n",Nbr);
getch();
}
void EXO9 (void)
{
clrscr();
int res=0;
int puis [9];
char bin [9];
int x,y;
puts (" ");
puts (" Programme nø9 :");
puts (" Entrer une valeur binaire sur 1 octet (8 chiffres) :");
fflush(stdin);
gets (bin);
puis[1]=1;
for (x=2;x<9;x++)
{
puis[x]=2*puis[x-1];
}
y=7;
for (x=1;x<9;x++)
{
if (bin[y]=='1')
{
res=res+puis[x];
}
y--;
}
printf(" La valeur décimale de ce chiffre binaire est %i",res);
getch();
}
void EXO10 (void)
{
clrscr();
int Nbr;
int i=0;
int Max=0;
puts (" ");
puts (" Programme nø10 :");
puts (" Entrez un chiffre (Entrez zéro pour quitter le programme) :\n");
scanf("%i",&Nbr);
while (Nbr!=0)
{
puts (" Entrez un chiffre (Entrez zéro pour quitter le programme) :\n");
scanf("%i",&Nbr);
if (Nbr>Max)
{
Max=Nbr;
}
i=i+1;
}
printf(" Le nombre maximum est %i\n",Max);
getch();
}
void EXO11 (void)
{
clrscr();
int Nbr;
int Nbr2;
int Nbr3;
puts (" ");
puts (" Programme nø11 :");
puts (" Quel est le premier nombre ?");
scanf ("%i",&Nbr);
puts (" Quel est le deuxième nombre ?");
scanf ("%i",&Nbr2);
puts (" Quel est le troisième nombre ?");
scanf ("%i",&Nbr3);
{
if (Nbr<Nbr2)
{
if (Nbr<Nbr3)
printf (" La moyenne est %i\n",(Nbr2+Nbr3)/2);
}
else
{
if (Nbr2<Nbr3)
printf(" La moyenne est %i\n",(Nbr+Nbr3)/2);
}
{
if (Nbr3<Nbr)
printf(" La moyenne est %i\n",(Nbr+Nbr2)/2);
}
}
getch();
}
void EXO12 (void)
{
clrscr();
int hh;
int mm;
int ss;
puts (" ");
puts (" Programme nø12 :");
puts (" Veuillez entrer l'heure (par exemple 23) :");
scanf ("%i",&hh);
puts (" Veuillez entrer le nombre de minute :");
scanf ("%i",&mm);
puts (" Veuillez entrer le nombre de seconde :");
scanf ("%i",&ss);
{
if (ss==59)
{
ss=0;
if (mm==59)
{
mm=0;
if (hh==23)
{
hh=0;
}
else
{
hh=hh+1;
}
}
else
{
mm=mm+1;
}
}
else
{
ss=ss+1;
}
printf (" L'heure actuelle est %02i:%02i:%02i\n",hh,mm,ss);
}
getch();
}
int main (void)
{
textbackground (07);
textcolor (BLUE);
int Rep;
Rep=9;
while (Rep!=0)
{
clrscr();
puts (" ");
puts (" ********************************************************************");
puts (" * * MENU * *");
puts (" ********************************************************************");
puts (" * Veuillez entrez le numéro du programme de votre choix : *");
puts (" * *");
puts (" * 1 - Affiche la taille en octets d'une variable *");
puts (" * 2 - Affiche l'écriture décimale, octale et *");
puts (" * hexadécimale d'un entier *");
puts (" * 3 - Affiche la moyenne de deux nombres *");
puts (" * 4 - Affiche le maximum et le minimum de deux entiers saisis *");
puts (" * 5 - Affiche si le nombre saisi est pair ou impair *");
puts (" * 6 - Affiche le nombre de a contenu dans un mot ou un texte *");
puts (" * 7 - Affiche un texte tapé en enlevant les espaces *");
puts (" * 8 - Affiche si un nombre est premier ou pas *");
puts (" * 9 - Binaire en décimale *");
puts (" * 10 - Affiche le maximum de plusieurs nombres saisis *");
puts (" * 11 - Moyenne des deux meilleurs nombres sur trois saisis *");
puts (" * 12 - Affiche l'heure + 1 seconde *");
puts (" * *");
puts (" * [0] Pour sortir du menu *");
puts (" ********************************************************************");
puts (" ");
textcolor(YELLOW+BLINK);cprintf (" Votre choix :");textcolor(BLUE);
scanf ("%i",&Rep);
switch (Rep)
{
case 1 : EXO1();break;
case 2 : EXO2();break;
case 3 : EXO3();break;
case 4 : EXO4();break;
case 5 : EXO5();break;
case 6 : EXO6();break;
case 7 : EXO7();break;
case 8 : EXO8();break;
case 9 : EXO9();break;
case 10 : EXO10();break;
case 11 : EXO11();break;
case 12 : EXO12();break;
}
}
return 0;
}