Calcul de différents volumes en c

Soyez le premier à donner votre avis sur cette source.

Vue 16 925 fois - Téléchargée 604 fois

Description

Il est possible de calculer le volume d'un cube, d'un pavé, d'une sphère, d'un tétraèdre, d'un cône de révolution et d'un cylindre de révolution.

Source / Exemple :


#include <stdio.h>
#include <conio.h>
# define Pi 3.141592           // definition de Pi

int main(void)
{   int n1;
    float hauteur, longueur, largeur, rayon;
    
    printf ("            ===== CALCUL D'UN VOLUME =====\n\n");
    printf ("Volume désiré entre :\n1-cube\n2-pavé\n3-sphère\n4-tétraèdre\n5-cône de révolution\n6-cylindre de révolution droit\n") ;
    scanf ("%d", &n1) ;      //choix du volume
    
    
    switch (n1)
    {  case 1 : printf ("Donnez la valeur d'un des côtés : \n");
                scanf ("%f", &longueur);
                printf ("Le volume de ce cube est de : %f\n", longueur*longueur*longueur);
                break ;
                    
       case 2 : printf ("Donnez la longueur : \n");
                scanf ("%f", &longueur);
                printf ("Donnez la largeur : \n");
                scanf ("%f", &largeur);
                printf ("Donnez la hauteur : \n");
                scanf ("%f", &hauteur);
                printf ("Le volume de ce pavé est de : %f\n", hauteur*largeur*longueur);
                break ;
                
      case 3 : printf ("Donnez la valeur numérique du rayon : \n");
               scanf ("%f", &rayon);
               printf ("Le volume de cette sphère est de : %f\n", ((4*Pi*rayon*rayon*rayon)/3));
               break ;
               
      case 4 : printf ("Donnez la longueur de la base : \n");
               scanf ("%f", &longueur);
               printf ("Donnez la hauteur de la base : \n");
               scanf ("%f", &largeur);
               printf ("Donnez la hauteur du volume : \n");
               scanf ("%f", &hauteur);
               printf ("Le volume de ce tétraèdre est de : %f\n", (longueur*hauteur*largeur)/3);
               break ;
               
      case 5 :  printf ("Donnez la valeur numérique du rayon : \n");
                scanf ("%f", &rayon);
                printf (" Donnez la valeur de la hauteur : \n") ;
                scanf ("%f", &hauteur) ;
                printf ("Le volume de ce cône est de : %f\n", ((Pi*rayon*hauteur*rayon)/3));
                break ;
                
      case 6 : printf ("Donnez la valeur numérique du rayon : \n");
               scanf ("%f", &rayon);
               printf (" Donnez la valeur de la hauteur : \n") ;
               scanf ("%f", &hauteur) ;
               printf ("Le volume de cette cylindre est de : %f\n", Pi*rayon*hauteur*rayon);
               break ;
               
               default: printf("erreur, choississez un nombre entre 1 et 6");
               break;
    
    }
    getch () ;
    return 0;
}

Conclusion :


Vous pouvez télécharger le fichier source zip, avec lequel vous trouverez d'autres programmes ( 7 autres pour calculer un par un le volume d'un cube, d'un pavé ...) et le compiler avec un compilateur C ou C++.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
10
Date d'inscription
dimanche 15 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2003

Merci pour l'explication, le code a été modifié
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

pour utiliser switch()

scanf ("%c", &c1) ;
switch(lc) {
case '1':
{printf ("Donnez la valeur d'un des c?t?s :
");
scanf ("%f", &longueur);
printf ("Le volume de ce cube est de : %f
", longueur*longueur*longueur);

break;
case '2':
....
break;
default:
printf("erreur");
break;
}
Messages postés
10
Date d'inscription
dimanche 15 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2003

Merci pour les conseils donnés, je vais le changer.
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

salut,

tu pourrais te simplifier la vie et celle des lecteurs en utilisant des termes explicites comme hauteur largeur au lieu de n1 n2 ...
#include <math.h> ne sert pas
#include <conio.h> pour gech()
main() bien que le compilateur le tolère il vaut mieux ecrire int main(void)
on peut utiliser switch() case ... à la place des if(s)

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.