Calculatrice, estimateur de pi, opérateurs binaires, tableaux

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 575 fois - Téléchargée 30 fois

Contenu du snippet

Code en C, une simple calculatrice 4 fonctions, un estimateur de Pi par nombre de points, les opérateurs binaires de bases, des tableaux de variables à 2 dimentions.

Source / Exemple :


#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <string.h>
#include <stdlib.h>

void Calculatrice(void);
void EstimationPi(void);
void Operateurs(void);
void Tableaux(void);
void Fichiers(void);

int MenuCalcul(void);
void Fin(void);
void Creation(void);
void Lecture(void);
void Modif(void);
char Menu(void);

struct enreg {
  char nom[20];
  int age;
};
struct enreg bloc;

char nomfich[15];

int main() {
	clrscr();
	MenuCalcul();
return 0;
}

int MenuCalcul() {
int ch;	
	
clrscr();
puts(" Programmes :");
puts("  -1- Calculatrice");
puts("  -2- Estimation de pi");
puts("  -3- Operateurs binaires");
puts("  -4- Tableaux");
puts("  -5- Quitter");
printf("\n\n       Choix : ");scanf("%d",&ch);

	switch(ch) {
		case 1:Calculatrice();break;
		case 2:EstimationPi();break;
		case 3:Operateurs();break;
		case 4:Tableaux();break;
		case 5:Fin();break;
	}
return ch;
}

void Fin() {
	clrscr();
	puts("Fin du programme");
}

// Définition de la fonction EstimationPi()
void EstimationPi() {
	
unsigned int np,nc,i,x,y,d2;
char c;
int mp;

do {
	clrscr();
   puts("Estimation de pi\n");
   printf("\nnombre de points = ");scanf("%d",&np);
   randomize();
   
   for(nc=0,i=1;i<np;i++) {
      x=random(100);
      y=random(100);
      d2=(x-100)*(x-100)+(y-100)*(y-100);
      if(d2<=10000) nc++;
   }
   printf("\npi=%f\n",(4.0*nc)/np);
   printf("\non continue (o/n) : "); c=getche();
}
while(c=='o');
MenuCalcul();
}

// Définition de la fonction Operateurs()
void Operateurs() {
  int x,y,mp;
  char c;

  do {
  	  clrscr();
     puts("Operateurs binaires\n");
     puts("saisir deux nombres entiers en hexadecimal");
     printf("x=\n");scanf("%x",&x);
     printf("y=\n\n");scanf("%x",&y);
     
     printf("~x=%04X\n",~x);
     printf("x&y=%04X\n",x&y);
     printf("x^y=%04X\n",x^y);
     printf("x|y=%04X\n",x|y);
     printf("x&~y=%04X\n",x&~y);
     printf("x|~y=%04X\n",x|~y);
     printf("x>>3=%04X\n",x>>3);
     printf("x<<5=%04X\n",x<<5);
     printf("x&~x=%04X\n",x&~x);
     printf("x^~x=%04X\n",x^~x);
     printf("x|~x=%04X\n",x|~x);
     printf("x&~y<<8=%04X\n",x&~y<<8);
     printf("(x&~y)<<8=%04X\n",(x&~y)<<8);
     printf("x&~(y<<8)=%04X\n",x&~(y<<8));
     printf("x^~y<<8=%04X\n",x^~y<<8);
     printf("(x^~y)<<8=%04X\n",(x^~y)<<8);
     printf("x^~(y<<8)=%04X\n",x^~(y<<8));
     printf("x|~y<<8=%04X\n",x|~y<<8);
     printf("(x|~y)<<8=%04X\n",(x|~y)<<8);
     printf("x|~(y<<8)=%04X\n",x|~(y<<8));

     printf("\n Recommancer (o/n)");c=getch();     
  }
  while(c=='o');
MenuCalcul();
}

// Définition de la fonction Tableaux()
void Tableaux() {
  int e,n,i,j,s,mp;
  char c;
  int tab[4][7]={{1,3,5,2,6,4,0},{13,12,11,14,10,15,0},{11,7,9,8,12,10,0},{17,14,18,16,15,13,0}};
  float moy[4],k;

do {  
  clrscr();
  puts("  Tableaux\n\n");
  
  //affichage tab
  for(e=0;e<4;e++) {
    printf("\ntab _%d : ",e+1);
    for(n=0;n<6;n++) printf("%3d",tab[e][n]);
  }
  
  //total tab
  puts("");
  for(e=0;e<4;e++) {
    for(n=0,s=0;n<6;n++) s=s+tab[e][n];
    tab[e][n]=s;
    printf("\ntotal _%d=%d",e+1,s);
  } 
  
  //moyenne
  puts("");
  for(e=0;e<4;e++) {
    printf("\nmoyenne _%d=",e+1);
    moy[e]=(float)tab[e][6]/6;
    printf("%5.2f",moy[e]);
  }
  
  printf("\n\nRecommancer (o/n)");c=getch();
  }
while(c=='o');
MenuCalcul();
}

// Définition de la fonction Calculatrice()
void Calculatrice() {
  long int x,y;
  char c;
  int mp;

do {  
  clrscr();
  
  puts("Calculatrice en C\n\n");
  printf("x=");scanf("%ld",&x);
  printf("y=");scanf("%ld",&y);
  printf("\n\nx=%ld y=%ld\n",x,y);
  printf("\naddition x+y = %ld\n",x+y);
  printf("soustraction x-y = %ld\n",x-y);
  printf("division x/y = %ld\n",(float)x/y);
  printf("multiplication x*y = %ld\n",(long)x*y);
  puts("\n\n Recommencer (o/n)");
  c=getch();
  }
while(c=='o');
MenuCalcul();
}

Conclusion :


Si vous voyer des bugs, merci de me metre au courant.

A voir également

Ajouter un commentaire Commentaires
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
6 févr. 2004 à 21:22
j'avais pas vu, remplace void main() par int main() ca sera encore mieux!
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
6 févr. 2004 à 21:20
doit y en avoir pas mal mais celles la est bien coder ;)
c'est du c, sous borland, tu pense meme a utiliser puts quand tu le peux (yen a pas beaucoup qui y pense), c'est bien presenté, moi j'aime bien

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.