Alors voila mon souci, j'espere que vous pourrez m'aider. Je dois faire un programme de gestion d'hopital, j'utilise un tableau de 26 entrées dont chaque entrée contient la tete et queue de la liste des patients, la premiere contient la tete et queue de la liste des patients dont le nom commence par a et ainsi de suite. la liste des patients est trié par ordre croissant suivant le nom/prénom, Nom est un pointeur vers une chaine de car, et chaque patient a une liste de médicament, possiblement vide.
Je dois faire ca en lisant un fichier texte qui se présente comme suit:
j'ai fait un while ( fgets ( line, sizeof line, file ) != NULL ) pour lire chaque ligne, puis je bloque sur comment lire mot a mot la ligne et allouer correctement les différents champs.
Si tu peux être certaine que les deux premieres données sont toujours présentes, alors cela devient un jeu d'enfant (enfin presque) avec strchr() ou strtok(). Mais quid d'un nom composé, du style "van der Gracht de Rommerswael" ? (oui oui, ça existe vraiment). Les prénoms composés sont, quant à eux, reliés par un tiret, me semble-t-il.
- Edité par edgarjacobs 9 décembre 2017 à 17:29:41
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
Si tu peux être certaine que les deux premieres données sont toujours présentes, alors cela devient un jeu d'enfant (enfin presque) avec strchr() ou strtok(). Mais quid d'un nom composé, du style "van der Gracht de Rommerswael" ? (oui oui, ça existe vraiment). Les prénoms composés sont, quant à eux, reliés par un tiret, me semble-t-il.
- Edité par edgarjacobs il y a 7 minutes
Oui le nom et prénom sont toujours présents. Donc pour lire le nom du médoc et sa quantité j'utilise strtok et j'allou dynamiquement ?
Au vu de tes structures, l'allocation dynamique sera implicite: tu as une liste chainées pour les médicaments. Donc tu ajouteras autant de maillons que nécessaire.
Tu as donc "juste" des liste chainées à gérer: les 26 listes chainées pour les patients dont le nom commence par la même lettre, et pour chaque patient, une liste chainée pour les médicaments.
Si tu prévois convenablement les primitives pour tes listes, cela n'est pas si complexe qu'il y parait.
Et oui, pour découper la ligne lue, strtok() est un bon plan (en omettant ma remarque sur les noms composés).
- Edité par edgarjacobs 9 décembre 2017 à 18:08:11
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
Donc aprés les 2 premiéres lectures du nom et prénom, je peux utiliser un entier initialisé a 2, que j'utiliserai comme ca : si c'est impair alors c'est un nom de medoc, la je fais le necessaire, et si c'est pair c'est sa quantité ?
Donc aprés les 2 premiéres lectures du nom et prénom, je peux utiliser un entier initialisé a 2, que j'utiliserai comme ca : si c'est impair alors c'est un nom de medoc, la je fais le necessaire, et si c'est pair c'est sa quantité ?
C'est une idée qui devrait fonctionner, en n'oubliant pas la possibilité qu'il n'y ait pas de médicament.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
Gestion de patients
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent