Files
DEV/DEV1.1/TP31/TP31_reponses.txt

98 lines
2.0 KiB
Plaintext
Raw Normal View History

2025-01-30 16:07:12 +01:00
----- TP31 : Concepts en vrac -----
1.
#include <stdio.h>
#include <stdlib.h>
typedef struct {
unsigned int durabilite : 10;
unsigned int deplacement : 4;
unsigned int defense : 7;
unsigned int degats : 7;
unsigned int distance : 4;
} unite;
int main(void) {
unite test;
test.durabilite = 7;
test.defense = 7;
test.degats = 7;
test.deplacement = 7;
test.distance = 7;
return EXIT_SUCCESS;
}
2.
#include <stdio.h>
#include <stdlib.h>
enum wedge {
PITCHING = 1,
GAP = 2,
SAND = 3,
LOP = 4,
FLIP = 5
};
enum putter {
REGULAR = 1,
BELLY = 2,
LONG = 3
};
typedef struct {
char* marque;
char* modele;
char* categorie;
unsigned int sous_categorie : 4;
} club;
void affiche_catalogue(int taille_catalogue, club* catalogue) {
int i;
char* wedge[5] = {"Pitching", "Gap", "Sand", "Lop", "Flip"};
char* putter[3] = {"Regular", "Belly", "Long"};
printf("| Marque | Modèle | Catégorie | Sous-catégorie |\n");
printf("------------------------------------------------\n");
for (i = 0; i != taille_catalogue; i++) {
if (filtre(catalogue[i])) {
printf("| %6s | %6s | %9s | %14d |\n", catalogue[i].marque, catalogue[i].modele, catalogue[i].categorie, catalogue[i].sous_categorie);
}
}
}
int filtre(club article) {
return article.categorie == "Fer" && article.sous_categorie <= 4;
}
int main(void) {
int i;
club catalogue[100];
char* marques[4] = {"A", "B", "C", "D"};
char* modeles[4] = {"M", "N", "O", "P"};
char* categories[4] = {"Bois", "Fer", "Wedge", "Putter"};
srand(time(NULL));
for(i = 0; i != 100; i++) {
catalogue[i].marque = marques[rand() % 4];
catalogue[i].modele = modeles[rand() % 4];
catalogue[i].categorie = categories[rand() % 4];
if (catalogue[i].categorie == "Wedge") {
catalogue[i].sous_categorie = rand() % 5;
}
else if (catalogue[i].categorie == "Putter") {
catalogue[i].sous_categorie = rand() % 3;
}
else {
catalogue[i].sous_categorie = rand() % 9 + 1;
}
}
affiche_catalogue(100, catalogue);
return EXIT_SUCCESS;
}
3.