Programmation en C
Répondre à la discussion
Affichage des résultats 1 à 23 sur 23

Programmation en C



  1. #1
    maxime10

    Programmation en C


    ------

    Bonjour,

    J'ai un petit problème.

    J'ai fait un petit programme qui gère les ventes du magasin.

    Soit:

    Pour chaque jour, le programme crée un fichier où l'utilisateur les ventes de la journée.

    Ex : Lundi.txt (fichier)

    vente type a = 15
    vente type b = 20
    vente type c = 15

    Mardi.txt (fichier)

    vente type a = 10
    vente type b = 28
    vente type c = 14


    Ce que je voudrais c'est crée un fichier semaine qui se mets à jour quand on remplit les ventes d'une journée ;

    Ainsi , le lundi j'aurai :

    Lundi.txt (fichier)

    vente type a = 15
    vente type b = 20
    vente type c = 15

    Semaine.txt (fichier)

    vente type a = 15
    vente type b = 20
    vente type c = 15

    Le Mardi j'aurai :

    Lundi.txt (fichier) (crever la veille)

    vente type a = 15
    vente type b = 20
    vente type c = 15

    Mardi.txt (fichier) (créer aujourd'hui)

    vente type a = 10
    vente type b = 28
    vente type c = 14

    Semaine.txt (fichier) (mis à jour automatiquement après avoir rempli Mardi.txt)

    Mardi.txt (fichier)

    vente type a = 25
    vente type b = 48
    vente type c = 29

    Avez-vous des solutions à me proposer en ce qui concerne la mise à jours du fichier semaine ? Je suis un peu bloqué.

    Merci d'avance.

    -----

  2. #2
    Jack
    Modérateur

    Re : Programmation en C

    Bonjour,

    nous voulons bien t'aider, mais je te rappelle ces quelques règles élémentaires du forum info

  3. #3
    maxime10

    Re : Programmation en C

    Donc j'ai fais le programme qui crée les fichiers jours_de_la_semaine.txt . L'utilisateur , grâce au programme remplit la liste des ventes pour chaque jours dans un fichier
    jours_de_la_semaine.txt. Pour cela, pas de problèmes.

    Ensuite , pour ouvrir/créer/écrire etc dans le fichier semaine.txt pas de problème non plus.

    Ma question précise est donc : Est-il possible de mettre à jours le fichier semaine.txt comme expliqué ci-dessus.

    Je ne demande pas qu'on résolve mon problème , je voudrais d'abord savoir si il est possible de le faire (étant donné que je n'ai eu qu'un quadri de cours sur le C , je ne sais pas si j'ai les connaissances nécessaire pour le faire).

    J'ai pensé à ouvrir le fichier semaine.txt en mode 'a' pour mise à jours, mais je ne vois pas comment faire l'addition des ventes des journées de la semaine étant donné qu'elles se trouvent dans 7 fichiers différents (1 pour chaque jours).

  4. #4
    Jack
    Modérateur

    Re : Programmation en C

    Je ne demande pas qu'on résolve mon problème , je voudrais d'abord savoir si il est possible de le faire
    oui, bien sur
    étant donné que je n'ai eu qu'un quadri de cours sur le C , je ne sais pas si j'ai les connaissances nécessaire pour le faire
    Moi non plus vu que je ne rends pas compte de ce que ça représente.
    pour ouvrir/créer/écrire etc dans le fichier semaine.txt pas de problème non plus.
    Ca veut donc dire que tu as quelques bases sur la manipulation ds fichiers texte.
    J'ai pensé à ouvrir le fichier semaine.txt en mode 'a' pour mise à jours
    Le mode 'a' permet de rajouter des données à la suite de celle déjà écrites dans ton fichier, ce qui n'est pas ce qui t'intéresse.

    Il va donc falloir extraire les données numériques de tes fichiers, les additionner et les réinjecter dans le fichier semaine.txt.
    Le problème, c'est que ces données numériques n'ont pas toujours la même longueur: par exemple 9 occupe un caractère alors que 10 en occupe 2.

    Il n'y a donc pas d'autre solution que de récréer un nouveau fichier semaine.txt à partir de l'ancien et de jour.txt, puis d'effacer l'ancien fichier semaine.txt.

  5. A voir en vidéo sur Futura
  6. #5
    maxime10

    Re : Programmation en C

    Merci mais je ne vois pas ce que vous voulez dire par "récréer un nouveau fichier semaine.txt à partir de l'ancien et de jour.txt"

  7. #6
    Jack
    Modérateur

    Re : Programmation en C

    Je ne vois pas trop quoi ajouter ...

    je viens de t'expliquer pourquoi on ne peut pas se contenter de modifier les valeurs dans le fichier semaine.txt.
    Il est donc nécessaire d'un constituer un nouveau, ligne par ligne en calculant à chaque fois la nouvelle valeur à partir de l'ancien et de la valeur du jour.

  8. #7
    Ludwig1

    Re : Programmation en C

    Salut,

    Oui j'aurai une solution, mais pas en C

    Solution plus que simple d'ailleurs


    Cordialement

    Ludwig

  9. #8
    Bluedeep

    Re : Programmation en C

    Citation Envoyé par Ludwig1 Voir le message
    Oui j'aurai une solution, mais pas en C
    Ce qui s'appelle une réponse totalement HS, comme les précédentes.

  10. #9
    invite03481543

    Re : Programmation en C

    Citation Envoyé par Ludwig1 Voir le message
    Salut,

    Oui j'aurai une solution, mais pas en C

    Solution plus que simple d'ailleurs


    Cordialement

    Ludwig
    Bonsoir,

    Je viens rarement par ici mais je le retrouve à peu près sur tous les sujets et toujours en boucle entre sa machine virtuelle et son Forth, comment faites vous pour tolérer encore ce flooder?

  11. #10
    cherbe

    Re : Programmation en C

    Citation Envoyé par HULK28 Voir le message
    Bonsoir,
    Je viens rarement par ici mais je le retrouve à peu près sur tous les sujets et toujours en boucle entre sa machine virtuelle et son Forth, comment faites vous pour tolérer encore ce flooder?
    Bonsoir
    Sur ce coup là, je te trouve un peu dur. Un programme en C ou tout autre langage stockant les données dans des fichiers séparés ne me semble pas la meilleure solution.
    Il eût mieux valu utiliser une petite base de données comme SQLite. il suffisait d'entrer le type de produit, la date de vente et le numéro de semaine pour extraire facilement la somme que l'on voulait.
    PS : le n° de semaine n'est peut être pas indispensable. Il est possible que le langage SQL soit capable de retrouver ce numéro à partir de la date.

  12. #11
    Ludwig1

    Re : Programmation en C

    Citation Envoyé par HULK28 Voir le message
    Bonsoir,

    Je viens rarement par ici mais je le retrouve à peu près sur tous les sujets et toujours en boucle entre sa machine virtuelle et son Forth, comment faites vous pour tolérer encore ce flooder?

    Salut,

    Chaccun voit midi à sa Porte désolé si je suis un c... je dois vivre Avec.


    Cordialement

    Ludwig

  13. #12
    Loupsio

    Re : Programmation en C

    Sur ce coup là, je te trouve un peu dur. Un programme en C ou tout autre langage stockant les données dans des fichiers séparés ne me semble pas la meilleure solution.
    Il eût mieux valu utiliser une petite base de données comme SQLite. il suffisait d'entrer le type de produit, la date de vente et le numéro de semaine pour extraire facilement la somme que l'on voulait.
    Les fichiers de stockages sont pas forcement une mauvaise idée, un fichier R avec les commandes a lancer dans R studio automatiquement, les jours et semaines enregistrés non pas dans un fichier texte mais dans un csv et ca devrait pas trop poser de probleme

    Sinon, pour C maxime, je suis pas connaisseur mais tu dois pouvoir lui faire lire ton fichier semaines (un équivalent du mode 'r' de python doit exister sous C), ensuite tu l'enregistre dans une variable, tu lui ajoute celui de la nouvelle journée tu refermes ton fichier semaine et ton fichier jour, puis tu réouvre ton fichier semaine en mode 'w' (écrire en remplacant ce qui existe deja) et tu écris ta variable avec les nouvelles valeurs dans le fichier, puis tu referme le fichier
    Je pense que ca doit etre faisable un truc comme ca, bien que je n'ai jamais fais de C,
    Dernière modification par Loupsio ; 11/08/2015 à 08h47.

  14. #13
    Jack
    Modérateur

    Re : Programmation en C

    Citation Envoyé par cherbe Voir le message
    Bonsoir
    Sur ce coup là, je te trouve un peu dur. Un programme en C ou tout autre langage stockant les données dans des fichiers séparés ne me semble pas la meilleure solution.
    Il eût mieux valu utiliser une petite base de données comme SQLite. il suffisait d'entrer le type de produit, la date de vente et le numéro de semaine pour extraire facilement la somme que l'on voulait.
    PS : le n° de semaine n'est peut être pas indispensable. Il est possible que le langage SQL soit capable de retrouver ce numéro à partir de la date.
    C'est souvent le même problème avec les exercices: faut-il répondre précisément à la problématique ou bien faut-il la remettre en question parce qu'elle nous semble inadaptée?
    En l'occurrence, c'est peut-être le support d'un exercice visant à manipuler les fichiers en C, auquel cas il ne faut pas s'orienter vers une base de donnée. Bref, on n'en sais pas assez.

    Je pense qu'il est inutile d'en apprendre plus de Maxime10 qui nous laisse régulièrement en plan et que je ne vais sûrement plus aider désormais

  15. #14
    maxime10

    Re : Programmation en C

    Il s'agit bien d'un exercice visant à manipuler les fichiers.
    Je n'ai toujours pas réussis la fin de l'exercice en suivant vos conseils.

    Désolé pour le retard dans les réponses.

  16. #15
    maxime10

    Re : Programmation en C

    Pour ce qui est de SQlite et le sql , nous n'avons pas abordé ce langage au cours.

    Merci de tes conseils LOUPSIO.

  17. #16
    maxime10

    Re : Programmation en C

    Voici la solution proposée par mon prof.

    Utiliser une fonction qui met à jour le fichier de vente quotidien. La mise à jour d’un fichier quotidien implique la mise à jour du fichier de vente hebdomadaire. Dès lors, à la fin de cette fonction de MAJ quotidienne, l’avant-dernière instruction (avant un quelconque return), tu fais un appel à la fonction de MAJ hebdomadaire.

  18. #17
    cherbe

    Re : Programmation en C

    Citation Envoyé par maxime10 Voir le message
    Pour ce qui est de SQlite et le sql , nous n'avons pas abordé ce langage au cours.
    Tu nous aurais dit dès le début que c'était un exercice imposé, cela m'aurait évité cette digression !
    Le synopsis de Loupsio est donc la bonne solution, la seule à mon humble avis.

  19. #18
    Bluedeep

    Re : Programmation en C

    Citation Envoyé par cherbe Voir le message
    Tu nous aurais dit dès le début que c'était un exercice imposé, cela m'aurait évité cette digression !
    Le synopsis de Loupsio est donc la bonne solution, la seule à mon humble avis.
    C'était évident, non ? Quand il est question de fichiers texte pour stocker des données, il parait quand même évident qu'on est pas "dans la vraie vie".

  20. #19
    cherbe

    Re : Programmation en C

    Citation Envoyé par Bluedeep Voir le message
    C'était évident, non ? Quand il est question de fichiers texte pour stocker des données, il parait quand même évident qu'on est pas "dans la vraie vie".
    Pour moi, ce n'est pas évident du tout. On peut être programmeur occasionnel et ne rien entendre aux bases de données. Autre exemple, si on veut créer une application à distribuer avec installation facile, on exclu les bases de données trop mal connues des utilisateurs lambda.
    Dans les deux cas, il ne reste plus que le stockage par fichiers texte (CSV ou autres).
    En revanche, l'utilisation du C aurait dû me mettre la puce à l'oreille puisque ce langage est très rarement utilisé pour des cas aussi génériques.
    Dernière modification par cherbe ; 11/08/2015 à 13h22.

  21. #20
    Jack
    Modérateur

    Re : Programmation en C

    Citation Envoyé par maxime10 Voir le message
    Il s'agit bien d'un exercice visant à manipuler les fichiers.
    Je n'ai toujours pas réussis la fin de l'exercice en suivant vos conseils.

    Désolé pour le retard dans les réponses.
    Montre un peu ce que tu as fait, et on en discutera

  22. #21
    Bluedeep

    Re : Programmation en C

    Citation Envoyé par cherbe Voir le message
    Pour moi, ce n'est pas évident du tout. On peut être programmeur occasionnel et ne rien entendre aux bases de données..
    Je ne sais pas ce que c'est un "programmeur occasionnel". Si tu entend par là "non professsionel", dans ce cas ça ne contredit en rien ce que je disais.

    Autre exemple, si on veut créer une application à distribuer avec installation facile, on exclu les bases de données trop mal connues des utilisateurs lambda.
    Encore une fois, je ne comprends pas ce que tu veux dire : une application avec base "in-process embarquée" (style SqLite ou Sql Server CE - CE pour compact edition) ne suppose aucune administration ni même connaissance par l'exploitant de l'existence d'une DB sous-jacente; ergo, ton argument me parait un peu boiteux.

    Dans les deux cas, il ne reste plus que le stockage par fichiers texte (CSV ou autres).
    Là, désolé mais c'est un peu n'importe quoi : dans le cas où on n'utilise pas de SGBD (qu'il soit in-proc ou normal) le standard en stockage fichier depuis au moins 15 ans, c'est XML; certainement pas "CVS ou autre", qui n'est pas agnostique au contenu et, de ce fait, si il peut servir de format de transfert, (et il sert, hélas, toujours) il ne peut pas vraiment servir de stockage applicatif pour un application interactive, sans validation de contenu préalable, par définition.

  23. #22
    Loupsio

    Re : Programmation en C

    ton argument me parait un peu boiteux.
    Il est peu etre boiteux son argument, mais pas faux pour autant
    en l'occurence je suis un ce qu'on peut appeler un "programmeur occasionnel" et il m'arrive de stocker dans des fichiers textes (sequences fasta notamment, ou même des résultat d'analyses par un de mes scripts, que j'enregistre en .txt pour pas avoir a relancer le script et reremplir les champs requis si je veux juste revoir la précédente analyse)
    et que ca soit du .fasta ou du .txt il s'agit bien d'un simple fichier texte, et ca n'en reste pas moins pratique dans certains cas, quand on programme pour soi (milieu pro je dis pas, mais en perso, ca permet de faire des choses simples et efficaces, qui rendent la vie plus agréable )

    Dans les deux cas, il ne reste plus que le stockage par fichiers texte (CSV ou autres).
    Là, désolé mais c'est un peu n'importe quoi : dans le cas où on n'utilise pas de SGBD (qu'il soit in-proc ou normal) le standard en stockage fichier depuis au moins 15 ans, c'est XML; certainement pas "CVS ou autre",
    Encore une fois, c'est un peu rapide en conclusion que de dire que ca n'est plus utilisé, même si tu trouves cela désuet, ca reste n'empêche très pratique, notamment quand tu travaille sur R avec des jeu de données importants, qui plus est quand tes collègues ne jurent que par excel/office et que tu en as horreur,
    Dernière modification par Loupsio ; 11/08/2015 à 22h13.

  24. #23
    cherbe

    Re : Programmation en C

    Citation Envoyé par Bluedeep Voir le message
    Là, désolé mais c'est un peu n'importe quoi
    J'aurais beaucoup à dire sur ce genre de contribution, notamment sur le ton indélicat, mais on s'éloigne beaucoup trop de la question initiale.
    Je ne serai pas l'initiateur d'un hors sujet aigre-doux mais au fond de moi, je trépigne de ne pouvoir contre argumenter et de ne pouvoir rappeler quelques règles de bienséance !
    Dernière modification par cherbe ; 12/08/2015 à 02h06.

Discussions similaires

  1. quelle est la difference entre programmation procedurale et la programmation orientee objet
    Par invite430abc62 dans le forum Programmation et langages, Algorithmique
    Réponses: 9
    Dernier message: 27/01/2016, 12h34
  2. Programmation GPS
    Par lebidoc dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 18/04/2014, 08h20
  3. Programmation PIC PWM
    Par Flo88Foot dans le forum Électronique
    Réponses: 1
    Dernier message: 09/04/2014, 14h03
  4. Programmation VBS
    Par inviteffde62b7 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 06/05/2009, 08h25
  5. programmation
    Par invite70772835 dans le forum Électronique
    Réponses: 13
    Dernier message: 04/04/2007, 18h29