SlideShare une entreprise Scribd logo
1  sur  16
Mini Projet : Gestion de magasin ENIT
[1]
Yassine Elaroui
Mini Projet C
Ecole Nationale d’Ingénieurs De Tunis
Mini Projet : Gestion de magasin ENIT
[2]
Remerciements
Ce travail a été réalise avec l’aide et l’encadrement précieux
de Madame Amira Kallel et Monsieur Touil. Et c’est dans ce
cadre que je tiens à leurs remercier pour tous leurs efforts
fournis dans la réalisation de ce projet.
Mini Projet : Gestion de magasin ENIT
[3]
Sommaire
Introduction……………………………………………….4
Partie I : Elaboration du projet………………………...5
1.Description du projet…………………………….5
2.Idées de conception………………………………6
3.Difficultées de réalisation………………………8
4.Solutions apportées……………………………...9
Partie II : Réalisation……………………………………11
1.Structures…………………………………………11
2.Fonctions………………………………………….11
Conclusion………………………………………………...16
Mini Projet : Gestion de magasin ENIT
[4]
Introduction
La réalisation du mini projet qui s’introduit dans le module
de « Programmation C » au sein de l’Ecole Nationale
d’Ingénieurs de Tunis, cette expérience m’a permis de mieux
maitriser le LANGAGE C et le compilateur CODE BLOCKS
afin de réaliser une application facile à manipuler.
Le sujet gestion de magasin d’antiquité consiste à ajouter
un article qui est représenté par : ( code, époque, prix,
description, type,…) afin de gérer les articles du magasin on
a décidé d’ajouter des fonctionnalisées pour faciliter
l’utilisation de ce projet tels que ( l’ajout d’article, la
modification, la recherche, la suppression,…). Dans la suite
de ce rapport j’essayerai de détailler la réalisation du projet.
Mini Projet : Gestion de magasin ENIT
[5]
Elaboration du projet
1.Description du projet
« Vos clients les plus insatisfaits sont votre plus grande
source d’apprentissage ». Disait Bill Gates, et à force de
travailler sur cette application, j’ai constaté combien
l’interaction avec l’utilisateur est importante, il est en fin de
compte un humain n’est-ce pas ? alors les données saisis sont
les plus cruciales au bon fonctionnement de mon projet, par
GESTON DE MAGASIN
AJOUTER
MODIFIER
SUPPRIMERR
TELECHARGER
ENREGISTRER
AJOUT
D’UNE
VENTE
AFFICHER
CHIFFRE
D’AFFAIRE
Mini Projet : Gestion de magasin ENIT
[6]
conséquent j’ai décidé de demander à l’utilisateur dans la
plupart de mes fonctionnalités seulement que le code de
l’article qu’il souhaite manipuler.
2.Idées de conception
Deux versions ont été imposées pour ce projet une version
statique et une autre dynamique. En début, j’ai commencé
avec les fonctionnalités d’ajout et de modification qui
dépendent de l’utilisateur tout en essayant de minimiser les
erreurs de saisies en voici un exemple :
Figure 1 : Cas de gestion d'erreurs de saisie
Mini Projet : Gestion de magasin ENIT
[7]
Dès que l’utilisateur tente d’introduire une chaine de
caractères au lieu d’un entier, le programme lui demande de
rectifier sa saisie et pour cela j’ai fait appel aux fonctions :
1. strtod de la bibliothèque <stdlib.h> voici son entête
long double strtold(const char *nptr, char **endptr);
Cette fonction renvoi 0 si la conversion d’une chaine de
caractères vers un décimal ne s’effectue pas
correctement.
2. strtol de la bibliothèque <stdlib.h> voici son entête
long int strtol(const char *nptr, char **endptr, int base);
Figure 2 Exemple d'erreurs de saisie contrôlé
Mini Projet : Gestion de magasin ENIT
[8]
Cette fonction retourne elle aussi 0 si la conversion
d’une chaine de caractères vers un entier ne s’effectue
pas correctement.
Ensuite, j’ai enchainé avec les fonctions de
recherche et d’affichage qui étaient plus au moins
abordables et pour en finir avec la manipulation des
fichiers avec les fonctions télécharger et enregistrer.
3.Difficultées de réalisation
Parmi les difficultés que j’ai rencontré, c’est
l’utilisation du type enum dans ma structure meuble que je
définisse si dessous
Figure 3 Structure meuble
Struturemeuble
Dimension
Largeur
Hauteur
Code
Epoque
Vendu
Description
Type
Prix
Mini Projet : Gestion de magasin ENIT
[9]
1 : Le type enum ne m’a pas permis de stocker dans ma
structure le type saisi par l’utilisateur, alors j’ai développé
une petite astuce que je mentionnerai dans la suite.
2 : L’utilisation de « scanf » pour pouvoir écrire la
description lut par « printf », hélas, la fonction « scanf »
ne permet pas de lire une paragraphe puisqu’elle s’arrête au
premier n rencontrer.
4.Solutions apportées
1 : pour palier cette difficulté j’ai décidé d’associer à chaque
type un entier c.à.d.
(0:meuble,1:decor,2:tableau,3:instrument,4:couvert)
Et d’utiliser la structure conditionnelle switch ( case ).
Figure 4 Structure conditionnelle
Mini Projet : Gestion de magasin ENIT
[10]
2 : L’alternative initiale était d’enregistrer le contenu de la
description dans un fichier puis le manipuler, mais une solution plus
optimiser était gets()et qui permet de lire un texte.
Mini Projet : Gestion de magasin ENIT
[11]
Réalisation
1.Structures
Figure 6 Structure meuble
2.Fonctions
 Ajouter un article
Figure 5 Structure Dimensions
Figure 7 Fonction ajout_article
Mini Projet : Gestion de magasin ENIT
[12]
 Modifier un article
 Supprimer un article
Figure 9 Supprimer
Figure 8 Changer_article
Mini Projet : Gestion de magasin ENIT
[13]
 Ajouter une vente
Figure 10 ajout_vente
 Chiffre d’affaire du magasin
Figure 11 Chiffre_affaire
Mini Projet : Gestion de magasin ENIT
[14]
 Recherche d’article par type
 Afficher un article
Figure 13 afficher_article
Figure 12 Rechercher_article
Mini Projet : Gestion de magasin ENIT
[15]
 Télécharger
Figure 14 Télécharger
Mini Projet : Gestion de magasin ENIT
[16]
Conclusion
Ce projet m’a permis de m’évaluer dans un langage de
programmation plus que complexe dans son utilisation,
l’approche dynamique m’a introduit la notion d’optimisation
et s’avoir gérer la mémoire vive d’une machine. Certes, je
pense que cette application peut encore être améliorer par
l’utilisation d’une base de données tel que MySQL ou même
par un langage d’orienté objet tels que C# ou C++ qui
permettent de rajouter une interface graphique a cette
application.

Contenu connexe

Tendances

Rapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelRapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelBelwafi Bilel
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Mehdi Hamime
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique Georges Amichia
 
Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Ayoub Mkharbach
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeMehdi Hamime
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatiqueHicham Ben
 
Presentation d'un logiciel de GRH
Presentation d'un logiciel de GRHPresentation d'un logiciel de GRH
Presentation d'un logiciel de GRHRiadh K.
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesHosni Mansour
 
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Yasmine Lachheb
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop amat samiâ boualil
 
Conception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREConception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREGhizlane ALOZADE
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique ayoub daoudi
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile Raoua Bennasr
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFEDonia Hammami
 
Conception et réalisation d’un MINI SMART HOME
Conception et réalisation  d’un MINI SMART HOMEConception et réalisation  d’un MINI SMART HOME
Conception et réalisation d’un MINI SMART HOMESoukainawarach
 
Mise à niveau d’un système de gestion de clientèle (CRM)
Mise à niveau d’un système de gestion de clientèle (CRM)Mise à niveau d’un système de gestion de clientèle (CRM)
Mise à niveau d’un système de gestion de clientèle (CRM)Nawres Farhat
 

Tendances (20)

Rapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelRapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilel
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique
 
Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatique
 
Presentation d'un logiciel de GRH
Presentation d'un logiciel de GRHPresentation d'un logiciel de GRH
Presentation d'un logiciel de GRH
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes
 
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop
 
Conception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREConception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIRE
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
 
Rapport de stage du fin d'étude
Rapport de stage du fin d'étudeRapport de stage du fin d'étude
Rapport de stage du fin d'étude
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFE
 
Conception et réalisation d’un MINI SMART HOME
Conception et réalisation  d’un MINI SMART HOMEConception et réalisation  d’un MINI SMART HOME
Conception et réalisation d’un MINI SMART HOME
 
Mise à niveau d’un système de gestion de clientèle (CRM)
Mise à niveau d’un système de gestion de clientèle (CRM)Mise à niveau d’un système de gestion de clientèle (CRM)
Mise à niveau d’un système de gestion de clientèle (CRM)
 
PROJET JAVA BD MySQL
PROJET JAVA BD MySQLPROJET JAVA BD MySQL
PROJET JAVA BD MySQL
 

Similaire à Mini Projet

conception de gestion d'une station de service
conception de gestion d'une station de service conception de gestion d'une station de service
conception de gestion d'une station de service Nesrine Hached
 
Decorator Design Pattern Presentation
Decorator Design Pattern PresentationDecorator Design Pattern Presentation
Decorator Design Pattern PresentationOuissalBenameur
 
Rapport genie logiciel
Rapport genie logicielRapport genie logiciel
Rapport genie logicielserge sonfack
 
Travaux pratiques corrigé logiciel ARENA
Travaux pratiques corrigé logiciel ARENATravaux pratiques corrigé logiciel ARENA
Travaux pratiques corrigé logiciel ARENASandraKobe
 
Workshop angular2
Workshop angular2 Workshop angular2
Workshop angular2 sihemhcine
 
Traitement d'image sous Matlab
Traitement d'image sous Matlab  Traitement d'image sous Matlab
Traitement d'image sous Matlab Hajer Dahech
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Saber LAJILI
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Sabeur LAJILI
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Sabeur LAJILI
 
Comment réussir son projet en Angular 1.5 ?
Comment réussir son projet en Angular 1.5 ?Comment réussir son projet en Angular 1.5 ?
Comment réussir son projet en Angular 1.5 ?Maxime Bernard
 
resume-theorique-m106-partie2-1401-620cd8ad322d1.pdf
resume-theorique-m106-partie2-1401-620cd8ad322d1.pdfresume-theorique-m106-partie2-1401-620cd8ad322d1.pdf
resume-theorique-m106-partie2-1401-620cd8ad322d1.pdfFootballLovers9
 
Geti 2101 activity_diagrams
Geti 2101 activity_diagramsGeti 2101 activity_diagrams
Geti 2101 activity_diagramsChebil Hanen
 
Projet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMMProjet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMMAbdelmonem NAAMANE
 
Rapport Sdec Pi64
Rapport Sdec Pi64Rapport Sdec Pi64
Rapport Sdec Pi64guestf223f9
 
Modèle De Tâche CTT et son Environnement CTTE
Modèle De Tâche CTT et son Environnement CTTEModèle De Tâche CTT et son Environnement CTTE
Modèle De Tâche CTT et son Environnement CTTEarslanmir191
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopLilia Sfaxi
 

Similaire à Mini Projet (20)

conception de gestion d'une station de service
conception de gestion d'une station de service conception de gestion d'une station de service
conception de gestion d'une station de service
 
Decorator Design Pattern Presentation
Decorator Design Pattern PresentationDecorator Design Pattern Presentation
Decorator Design Pattern Presentation
 
Rapport genie logiciel
Rapport genie logicielRapport genie logiciel
Rapport genie logiciel
 
Travaux pratiques corrigé logiciel ARENA
Travaux pratiques corrigé logiciel ARENATravaux pratiques corrigé logiciel ARENA
Travaux pratiques corrigé logiciel ARENA
 
Cours flash
Cours flashCours flash
Cours flash
 
Cours flash
Cours flashCours flash
Cours flash
 
Rapport final
Rapport finalRapport final
Rapport final
 
Workshop angular2
Workshop angular2 Workshop angular2
Workshop angular2
 
Traitement d'image sous Matlab
Traitement d'image sous Matlab  Traitement d'image sous Matlab
Traitement d'image sous Matlab
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Comment réussir son projet en Angular 1.5 ?
Comment réussir son projet en Angular 1.5 ?Comment réussir son projet en Angular 1.5 ?
Comment réussir son projet en Angular 1.5 ?
 
resume-theorique-m106-partie2-1401-620cd8ad322d1.pdf
resume-theorique-m106-partie2-1401-620cd8ad322d1.pdfresume-theorique-m106-partie2-1401-620cd8ad322d1.pdf
resume-theorique-m106-partie2-1401-620cd8ad322d1.pdf
 
Geti 2101 activity_diagrams
Geti 2101 activity_diagramsGeti 2101 activity_diagrams
Geti 2101 activity_diagrams
 
Projet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMMProjet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMM
 
Rapport Sdec Pi64
Rapport Sdec Pi64Rapport Sdec Pi64
Rapport Sdec Pi64
 
Modèle De Tâche CTT et son Environnement CTTE
Modèle De Tâche CTT et son Environnement CTTEModèle De Tâche CTT et son Environnement CTTE
Modèle De Tâche CTT et son Environnement CTTE
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 
Rapport final
Rapport finalRapport final
Rapport final
 

Mini Projet

  • 1. Mini Projet : Gestion de magasin ENIT [1] Yassine Elaroui Mini Projet C Ecole Nationale d’Ingénieurs De Tunis
  • 2. Mini Projet : Gestion de magasin ENIT [2] Remerciements Ce travail a été réalise avec l’aide et l’encadrement précieux de Madame Amira Kallel et Monsieur Touil. Et c’est dans ce cadre que je tiens à leurs remercier pour tous leurs efforts fournis dans la réalisation de ce projet.
  • 3. Mini Projet : Gestion de magasin ENIT [3] Sommaire Introduction……………………………………………….4 Partie I : Elaboration du projet………………………...5 1.Description du projet…………………………….5 2.Idées de conception………………………………6 3.Difficultées de réalisation………………………8 4.Solutions apportées……………………………...9 Partie II : Réalisation……………………………………11 1.Structures…………………………………………11 2.Fonctions………………………………………….11 Conclusion………………………………………………...16
  • 4. Mini Projet : Gestion de magasin ENIT [4] Introduction La réalisation du mini projet qui s’introduit dans le module de « Programmation C » au sein de l’Ecole Nationale d’Ingénieurs de Tunis, cette expérience m’a permis de mieux maitriser le LANGAGE C et le compilateur CODE BLOCKS afin de réaliser une application facile à manipuler. Le sujet gestion de magasin d’antiquité consiste à ajouter un article qui est représenté par : ( code, époque, prix, description, type,…) afin de gérer les articles du magasin on a décidé d’ajouter des fonctionnalisées pour faciliter l’utilisation de ce projet tels que ( l’ajout d’article, la modification, la recherche, la suppression,…). Dans la suite de ce rapport j’essayerai de détailler la réalisation du projet.
  • 5. Mini Projet : Gestion de magasin ENIT [5] Elaboration du projet 1.Description du projet « Vos clients les plus insatisfaits sont votre plus grande source d’apprentissage ». Disait Bill Gates, et à force de travailler sur cette application, j’ai constaté combien l’interaction avec l’utilisateur est importante, il est en fin de compte un humain n’est-ce pas ? alors les données saisis sont les plus cruciales au bon fonctionnement de mon projet, par GESTON DE MAGASIN AJOUTER MODIFIER SUPPRIMERR TELECHARGER ENREGISTRER AJOUT D’UNE VENTE AFFICHER CHIFFRE D’AFFAIRE
  • 6. Mini Projet : Gestion de magasin ENIT [6] conséquent j’ai décidé de demander à l’utilisateur dans la plupart de mes fonctionnalités seulement que le code de l’article qu’il souhaite manipuler. 2.Idées de conception Deux versions ont été imposées pour ce projet une version statique et une autre dynamique. En début, j’ai commencé avec les fonctionnalités d’ajout et de modification qui dépendent de l’utilisateur tout en essayant de minimiser les erreurs de saisies en voici un exemple : Figure 1 : Cas de gestion d'erreurs de saisie
  • 7. Mini Projet : Gestion de magasin ENIT [7] Dès que l’utilisateur tente d’introduire une chaine de caractères au lieu d’un entier, le programme lui demande de rectifier sa saisie et pour cela j’ai fait appel aux fonctions : 1. strtod de la bibliothèque <stdlib.h> voici son entête long double strtold(const char *nptr, char **endptr); Cette fonction renvoi 0 si la conversion d’une chaine de caractères vers un décimal ne s’effectue pas correctement. 2. strtol de la bibliothèque <stdlib.h> voici son entête long int strtol(const char *nptr, char **endptr, int base); Figure 2 Exemple d'erreurs de saisie contrôlé
  • 8. Mini Projet : Gestion de magasin ENIT [8] Cette fonction retourne elle aussi 0 si la conversion d’une chaine de caractères vers un entier ne s’effectue pas correctement. Ensuite, j’ai enchainé avec les fonctions de recherche et d’affichage qui étaient plus au moins abordables et pour en finir avec la manipulation des fichiers avec les fonctions télécharger et enregistrer. 3.Difficultées de réalisation Parmi les difficultés que j’ai rencontré, c’est l’utilisation du type enum dans ma structure meuble que je définisse si dessous Figure 3 Structure meuble Struturemeuble Dimension Largeur Hauteur Code Epoque Vendu Description Type Prix
  • 9. Mini Projet : Gestion de magasin ENIT [9] 1 : Le type enum ne m’a pas permis de stocker dans ma structure le type saisi par l’utilisateur, alors j’ai développé une petite astuce que je mentionnerai dans la suite. 2 : L’utilisation de « scanf » pour pouvoir écrire la description lut par « printf », hélas, la fonction « scanf » ne permet pas de lire une paragraphe puisqu’elle s’arrête au premier n rencontrer. 4.Solutions apportées 1 : pour palier cette difficulté j’ai décidé d’associer à chaque type un entier c.à.d. (0:meuble,1:decor,2:tableau,3:instrument,4:couvert) Et d’utiliser la structure conditionnelle switch ( case ). Figure 4 Structure conditionnelle
  • 10. Mini Projet : Gestion de magasin ENIT [10] 2 : L’alternative initiale était d’enregistrer le contenu de la description dans un fichier puis le manipuler, mais une solution plus optimiser était gets()et qui permet de lire un texte.
  • 11. Mini Projet : Gestion de magasin ENIT [11] Réalisation 1.Structures Figure 6 Structure meuble 2.Fonctions  Ajouter un article Figure 5 Structure Dimensions Figure 7 Fonction ajout_article
  • 12. Mini Projet : Gestion de magasin ENIT [12]  Modifier un article  Supprimer un article Figure 9 Supprimer Figure 8 Changer_article
  • 13. Mini Projet : Gestion de magasin ENIT [13]  Ajouter une vente Figure 10 ajout_vente  Chiffre d’affaire du magasin Figure 11 Chiffre_affaire
  • 14. Mini Projet : Gestion de magasin ENIT [14]  Recherche d’article par type  Afficher un article Figure 13 afficher_article Figure 12 Rechercher_article
  • 15. Mini Projet : Gestion de magasin ENIT [15]  Télécharger Figure 14 Télécharger
  • 16. Mini Projet : Gestion de magasin ENIT [16] Conclusion Ce projet m’a permis de m’évaluer dans un langage de programmation plus que complexe dans son utilisation, l’approche dynamique m’a introduit la notion d’optimisation et s’avoir gérer la mémoire vive d’une machine. Certes, je pense que cette application peut encore être améliorer par l’utilisation d’une base de données tel que MySQL ou même par un langage d’orienté objet tels que C# ou C++ qui permettent de rajouter une interface graphique a cette application.