| ||||||||
Nouvel astucien | bonsoir les amis , je suis a la recherche de la solution d'un devoir en c , ma vie scolaire en depends!!
aidez moi please!
PROJET DE PROGRAMMATION EN LANGUAGE C
PARTIE I :
Dans les consulats, on stock souvent les passeport périmés. On suppose qu’on souhaite faire une petite base de données permettant de sauvegarder un certain nombre de ces passeports.
A l’aide d’un tableau de personnes (nom, prénom, date de naissance, numéro de passeport, date de délivrance du passeport et lieu de délivrance), écrire un programme qui permet de rentrer des données concernant des personnes à partir du clavier et qui effectue ensuite une recherche automatique de toutes les informations concernant une personne représentant une valeur d’une rubrique donnée (ex : Tous les Patrick, toutes les personnes ayant un passeport délivré à Paris, toutes les personnes ayant un passeport délivré en 2000……….)
Remarque : Deux personnes différentes ne peuvent pas avoir le même numéro de passeport. Vous pouvez utiliser la structure suivante :
typedef struct
{
char nom [15] ;
char prénom [20] ;
char lieu_naissance [20] ;
char date_naissance [15] ;
char numero_passeport [15] ;
char lieu_delivrance [20] ;
char date_delivrance [15] ;
} personne ;
PARTIE II :
On suppose que tous les passeports dont la date de délivrance est inférieure ou égale à 1996 vont être incinérés et que les autres vont être stockés.
Modifier le programme précédent pour que les données puissent être lues à partir d’un fichier argument de la fonction principale « main » ou lu directement à l’intérieur de vote programme, qui doit permettre ensuite de classer les passeports de chaque lieu de délivrance dans deux catégories : « passeports à incinérer »et « passeport à stocker » .Il doit afficher ces résultats dans des fichier différents où chaque fichier doit contenir les informations concernant les personnes titulaires des passeports : nom, prénom, date de naissance…
Exemple :
cSupposons qu’il y a trois lieux de délivrance : Paris, Lyon et Marseille.
Vous devez dans ce cas créer les fichiers :
“Paris_inciners.txt”, “Paris_stockes.txt”,
“Lyon_incineres.txt”, “Lyon_stockes.txt”,
“Marseille_incineres.txt”, “Marseille_stockes.txt”, “
| |||||||
Publicité | ||||||||
Petit astucien | Tu peux toujours brûler en enfer, tu vas couler. Pas question qu'on fasse tes devoirs. | |||||||
Nouvel astucien | merci quand meme , pour tout bonne journée! | |||||||
Petit astucien | Au plaisir [clindoeil] | |||||||
Petit astucien | AlexPrince a écrit :
Un peu arbitraire comme réponse, PCA est un forum d'entraide après tout. Sans lui pondre le code, quelqu'un de versé et de sensé pourrait quand même lui suggérer un algorithme de départ pour se lancer dans l'aventure. Koala peut-être?Tu peux toujours brûler en enfer, tu vas couler. Pas question qu'on fasse tes devoirs. Modifié par edon47 le 02/06/2006 06:14 | |||||||
Petit astucien | je suis a la recherche de la solution d'un devoir en c C'est clair qu'il ne veut pas apprendre. Il ne mérite pas de perdre du temps pour lui. Je connais très bien le C/C++ et l'algorithme est même plutôt facile à coder en fait. | |||||||
Astucien | Salut,
Je vais surtout te donner quelques idées de base, sur ce que j'ai lu de l'exposé du devoir (car, j'estime qu'il est quand meme beaucoup plus intéressant pour toi de faire toi meme le travail [clindoeil])
Une structure "dynamique" me semble particulièrement adaptée au travail (une file ou un liste simplement chainée)
L'utilisation d'une fonction unique de "sécurisation" de l'encodage me sembe intéressante à mettre en oeuvre, du simple fait qu'il faudra encoder pas mal de données pour un seul passeport, et que les tailles admises sont variables…
La fonction main ne contiendrait que les choix de, tournant en boucle
"insérer un passeport"
"chercher un passeport"
"lire un fichier"
"ecrire un fichier"
"quitter" (quitte la boucle et le programme)
qui appelleraient respectivement les fonction
Ajout(ta_strucutre *premier) qui renvoie un pointeur vers le premier élément de ta structure
Chercher(char *passeport) qui renvoie un pointeur vers le passeport trouvé (ou NULL si non trouve)
LireFichier(void) qui renvoie un pointeur vers le premier élément de ta structure
EcrireFichier(ta_structure *premier) qui renvoie 1 en cas de réussite, 0 en cas d'échec
AvantQuite(ta_structure *premier) qui ne renvoie rien, et qui s'occupe de vider la structure avant de quitter
Ajout(ta_structure *premier) commencera par allouer un pointeur pour le nouvel élément, puis appellera la fonction de sécurisation pour l'introduction des différentes coordonnées, vérifiera éventuellement que le numéro de passeport n'a pas encore été encodé, s'occupera éventuellement de le trier si tu utilise une liste, et renverra le premier élément de la structure
LireFichier(void) commencerait par demander le nom du fichier à ouvrir, l'ouvrirait, le lirait et recréerait ta structure grace à lui (erreur en cas de mauvais acces [clindoeil])
Ecrire fichier(ta_structure *premier) commencerait par demander le nom du fichier à écrire, l'ouvrir et se baserait sur les différents éléments de la structure pour les écrire dedans, et renverrais le résultat ou l'échec…
Vider(ta_structure *premier) veillerait à parcourrir l'ensemble de la structure pour libérer chacun de ses éléments
J'estimes t'avoir donné assez d'informations, du simple fait que tout ce que j'ai expliqué peut etre trouvé (ne serait-ce que sous la forme d'un algorithme) sur mon site, dans la section "principes de programmation" [clindoeil] | |||||||
Nouvel astucien | merci énormément koala pour le temps que tu as consacré pour cette réponse!
Ton intélligence est à la hauteur de ta sagesse!
comme on dit chez nous !
que dieu te garde!
merci a tous ceux qui ont contribué a cetravail!
bonsoir!
zako!
| |||||||
Astucien | Mais qu'ont-ils tous à me flater ces temps ci [question][langue][rougir]
Je n'ai nullement la prétention d'être plus intelligent qu'un autre…
Tout au plus ai-je *peut etre* (car ca reste à confirmer) une logique plus cartésienne que d'autres [question]
Ceci dit, même si ca risque de ne pas intéresser tout le monde, j'apprécierais (à titre purement personnel) de voir le code résultant de ces conseils [clindoeil] | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | |||||||||||||||
|