Les structures
jeandchanel
Messages postés
136
Statut
Membre
-
fiddy Messages postés 11653 Statut Contributeur -
fiddy Messages postés 11653 Statut Contributeur -
Bonjour,
je voudrais code un programme qui permet de calculer la surface de diverses figures géométriques telle que le Carre, le Trapèze, l'Ellipse, etc. Pour cela j'ai pensé aux structures mais hélas je suis bloqué. J'ai donc besoin de votre assistance pour continuer. Neamoins, j'ai pu realiser le meme programme en procedant autrement, je pense qu'en utilisant les structures le programme sera plus simplifier et plus lisible. Merci d'avance.
je voudrais code un programme qui permet de calculer la surface de diverses figures géométriques telle que le Carre, le Trapèze, l'Ellipse, etc. Pour cela j'ai pensé aux structures mais hélas je suis bloqué. J'ai donc besoin de votre assistance pour continuer. Neamoins, j'ai pu realiser le meme programme en procedant autrement, je pense qu'en utilisant les structures le programme sera plus simplifier et plus lisible. Merci d'avance.
typedef struct Dimensions Dimensions;
struct Dimensions
{
char nomFigure[100];
double base1;
double base2;
double hauteur;
double cote;
double rayon;
double largeur;
double longueur;
};
Dimensions tableau[]=
{
{"Trapeze", 0, 0, 0},
{"Carre", 0},
{"Cercle", 0},
{"Rectangle", 0,0}
};
Dimensions demanderMenu()
{
int choice;
printf("MENU\n ");
printf("Bien vouloir choisir une figure geometrique !\n");
printf("1. Trapeze\n2. Carre\n3. Cercle\n4. Rectangle\n ");
do
{
printf("Votre choix ? ");
scanf("%d", &choice);
}while(choice < 1 || choice > 4);
return tableau[choice - 1];
}
double surfaceTrapeze(Dimensions dimensions)
{
return ((dimensions.base1 + dimensions.base2) * dimensions.hauteur) /2;
}
double surfaceCarre(Dimensions dimensions)
{
return dimensions.cote * dimensions.cote;
}
double surfaceCercle(Dimensions dimensions)
{
return 2 * 3.14 * dimensions.rayon*dimensions.rayon;
}
double surfaceRectangle(Dimensions dimensions)
{
return dimensions.longueur * dimensions.largeur;
}
A voir également:
- Les structures
- Les structures - Forum Programmation
- Amandine utilise une application pour gérer les inscriptions aux activités de son club. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « inscriptions » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Loisirs / Divertissements
- Les structures en C ✓ - Forum C
- Dans son restaurant, igor utilise une application pour gérer les réservations. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « reservations » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Antivirus
- Dans la table des matières du document à télécharger, le chapitre 6 et ses 2 sections n'apparaissent pas. trouvez l'erreur dans la structure du document et corrigez-la. mettez à jour la table des matières. quel est le mot formé par les lettres en majuscules de la table des matières après sa mise à jour ? - Forum Word
1 réponse
Salut,
Pour commencer, ou est ton main?
De plus, ta fonction
Aucun navigateur ne propose d'extension boule-de-cristal : postez des informations pour avoir de l'aide...
Pour commencer, ou est ton main?
De plus, ta fonction
Dimensions demanderMenu()retourne une variable mais on ne connait pas le type.
int Dimensions demanderMenu() //retourne une variable de type int ect ect
Aucun navigateur ne propose d'extension boule-de-cristal : postez des informations pour avoir de l'aide...
la fonction demanderMenu(), retourne un tableau de type Dimensions !
Dimensions tableau[]= { {"Trapeze", 0, 0, 0}, {"Carre", 0}, {"Cercle", 0}, {"Rectangle", 0,0} };void demanderCoordTrapeze(Dimensions dimensions) { printf("\n"); printf("Vous avez choisi le %s !\n", dimensions.nomFigure); printf("Saisir la petite base du %s : ", dimensions.nomFigure); scanf("%lf", &dimensions.base1); printf("Saisir la grande base du %s : ", dimensions.nomFigure); scanf("%lf", &dimensions.base2); printf("Saisir la hauteur du %s : ", dimensions.nomFigure); scanf("%lf", &dimensions.hauteur); printf("\n"); printf("La surface du %s est de %.2lf ", dimensions.nomFigure, surfaceTrapeze(dimensions)); } void demanderCoordCarre(Dimensions dimensions) { printf("\n"); printf("Vous avez choisi le %s !\n", dimensions.nomFigure); printf("Saisir le cote du %s : ", dimensions.nomFigure); scanf("%lf", &dimensions.cote); printf("\n"); printf("La surface du %s de cote %.2lf cm est de %.2lf cm2", dimensions.nomFigure, dimensions.cote, surfaceCarre(dimensions)); } int main() { int choice; Dimensions dimensions = demanderMenu(); if(choice == 1) demanderCoordTrapeze(dimensions); else if (choice == 2) demanderCoordCarre(dimensions); return 0; }Dimensions demanderMenu() { int choice; printf("MENU\n "); printf("Bien vouloir choisir une figure geometrique !\n"); printf("1. Trapeze\n2. Carre\n3. Cercle\n4. Rectangle\n "); do { printf("Votre choix ? "); scanf("%d", &choice); }while(choice < 1 || choice > 4); return tableau[choice - 1]; }Sur cette fonction.
Tu n'as pas le droit de ne pas préciser la variable de retour et tu ne peux non plus dire que tu retournes une structure vu que tout ce que tu feras dans ta fonction sera automatiquement écris dans la structure.
Tu t'es renseigné sur les structures avant de les utiliser?