Partage
  • Partager sur Facebook
  • Partager sur Twitter

Aide : creation programme comptabilité sous python 3

Besoin d'aide conception et mise en oeuvre

    11 octobre 2012 à 18:44:53

    Bonjour chers internautes,


    Je suis actuellement des cours d'apprentissage de programmation sur python3 .


    Actuellement j'aimerais créer un logiciel capable d'automatiser les calculs des bénéfices
    (ou des pertes) que un bar , un tavernier ou tout autre parti, fait sur la vente des bières ou autres produits .

    Si vous avez quelques notions d'économie vous savez que le profit que le bar fait est calculé comme ceci : prix = RT-CT(RT = recette et CT sont les coûts).

    La recette totale est calculé comme ceci : RT = Pu x Q ( Pu est le prix a l'unite et Q la quantite,)

    Et voici la formule du coût total : CT =CF +CV où CF est le coût fixe, CV est le coût variable. "




    Enfin les informations nécessaires :


    Un fût de bière : 65 euro, 100 bières;
    Un paquet de 150 gobelets : 3 euros;
    Location de la salle : 100 euros;
    Prix d’une bière (vente) : 1 euro.


    En sachant que je veux absolument respecter les régles ci-dessous :) :

    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


    – Nous avons une équipe de 4 barmans, quand un nouveau fût est percé chaque barman boit
    une bière ;

    – chaque client peut acheter une ou plusieurs bières à la fois ;

    – les gobelets ne sont jamais réutilisés ;

    – quand un client achète des bières on voudrait juste introduire (au clavier) la quantité de bière
    achetée dans le programme ;

    – si à la fin de la soirée le dernier fût n’est pas vide et qu’il ne reste pas plus de 25% de son
    volume, il est consommé par l’équipe du bar, sinon chaque barman boit une bière et le reste
    du fût n’est pas considéré comme étant acheté ;

    – si à la fin de la soirée il reste moins de bières dans le fût que de barmans au bar, alors les
    barmans partagent les bières restantes ;

    – les barmans boivent gratuitement en fonction des autres règles précitées ;

    – tout fût non entamé n’est pas considéré comme acheté ;

    – on ne peut acheter les gobelets que par paquet ;

    – pour signaler que le programme doit se terminer à la fin de la soirée on va entrer une valeur
    sentinelle -1 (le nombre des bières achetées) ;

    – à la fin de l’exécution le programme doit afficher les informations suivantes : le nombre de
    bières vendues, de bières bues par les barmans, le nombre de gobelets utilisés, le nombre de
    gobelets qui restent dans le dernier paquet, le nombre de fûts percés, le nombre de bières qu’un client achète en moyenne, le plus gros achat par un client, le plus gros achat par un client, le coût variable, le coût fixe, la recette totale et le profit.

    J'aimerais bien obtenir un résultat final semblable à celui ci-dessous :


    ~>
    Bonjour, bienvenu au comptes du bar!
    Combien de bières le client vient d’acheter? 3
    Combien de bières le client vient d’acheter? 5
    Combien de bières le client vient d’acheter? 1
    Combien de bières le client vient d’acheter? 2
    Combien de bières le client vient d’acheter? 1
    ......
    Combien de bières le client vient d’acheter? -1
    ----- Total des comptes -----
    Bières vendues : 1400
    Fûts percés : 15
    Bières bues par les barmans : 64
    Gobelets utilisés : 1464
    Gobelets non utilisés (dernier pack) : 36
    En moyenne un client acheté : 3.28 bières
    Le plus gros achat par un client : 6 bières
    Recette totale (bières): 1400 euros
    Coût fixe : 100 euros
    Coût variable (bière+gobelets): 981.6 euros
    ----TOTAL---
    Bénéfice : 318.4 euro




    Voici un exemple ( approximatifs du résultat )


    1
    3
    4
    2
    5
    6
    7
    1
    1
    8
    9
    3
    4
    5
    1
    -1


    ...
    ----- Total des comptes -----
    Bières vendues : 60
    Fûts percés : 1
    Bières bues par les barmans : 8
    Gobelets utilisés : 68
    Gobelets non utilisés (dernier pack) : 82
    En moyenne un client achète : 4.0 bières
    Le plus gros achat par un client : 9 bières
    Recette totale (bières): 60 euros
    Coût fixe : 100 euros
    Coût variable (bière+gobelets): 47.2 euros
    ----TOTAL---
    Perte : 87.2 euro




    Voila j'espere avoir été assez clair et précis.

    Cependant c'est la première fois que je m'attaque a un programme de cet envergure, ( je sais je sais c'est facile pour la plus part d'entre vous :-° ) et je ne sais pas du tout par ou commencer.

    Je visualise les codes à appliquer à tels ou tels conditions dans tels ou tels paramètres mais impossible de me schematiser dans ma têtes. Voila désormais 2 jours que le bloque sur le commencement :norage:


    J'aimerais demander votre aide afin de m'aider à réaliser ceci ou pour le moins me donner des conseils car apparemment je ne dispose pas encore de la technique !


    Bien à vous mes enfants ;

    Zortac
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      11 octobre 2012 à 19:55:23

      Salut,

      Tu te doutes (j'espère :P) qu'on ne le fera pas pour toi. On peut tout de même te donner quelques conseils pour t'aider à bien commencer.
      Déjà poses-toi pendant une heure, et réfléchis. De quels fonctions vas-tu avoir besoin ? Comment vas se dérouler la boucle principale ? La POO est-elle adapté (à vu d'oeil, ça peut se faire, comme ça peut ne pas se faire, ça dépend de si tu veux faire évoluer ton prog) ?

      Si tu réponds déjà à ses questions, au moins dans ta tête ça éclaircira ton esprit !
      • Partager sur Facebook
      • Partager sur Twitter
        11 octobre 2012 à 21:11:59

        Absolument pas ! Je dois le faire par moi-même ! Et avec vos conseils car je n'ai absolument aucune idée de par ou commencer. J'aurais bien pensé utiliser "if" en fonction principal mais la encore je n'en suis pas sur.

        Je viens de relire l'intégrale des consignes.

        J'ai essayer de me faire un plan afin d'organiser. Je pense pouvoir grouper plusieurs consignes ( question de clarté ) dans une seule principale boucle en if , elif elif elif else.

        Si je commence mon code j'utilise d'abord une fonction input au départ ?


        Par la meme occasion puis-je demander quelle est la différence entre input et raw_input ? Pour ma part je n'ai jamais fait appel à raw_input.



        Ensuite je continue en appliquant les valeurs aux eventuelles variables puis ( peut-être ? ) puis puis .....

        Je bloque :/


        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          11 octobre 2012 à 23:16:59

          Le langage n'est pas le problème, c'est pas une barrière car le forum est là pour vous aider dans les limites où votre recherche permettra de poser des questions précises.

          Il vous faut poser la résolution du problème en ordre et qui sera un algorithme (indirectement).

          Une fois cela décrit sur le forum, il se trouve qu'à la fin de l'écriture de votre algorithme, vous n'ayez plus besoin de nous.

          Citation

          Par la meme occasion puis-je demander quelle est la différence entre input et raw_input ? Pour ma part je n'ai jamais fait appel à raw_input.



          Exemple de question n'ayant aucun impact pédagogique sur le sujet que vous travaillez.
          Prenez le papier avant de taper du code en partant dans tous les sens.

          Citation

          Ensuite je continue en appliquant les valeurs aux eventuelles variables puis ( peut-être ? ) puis puis .....



          Phrase qui ne veut pas dire grand chose, passons...

          Citation

          Je viens de relire l'intégrale des consignes.



          bien...

          Citation

          J'ai essayer de me faire un plan afin d'organiser.



          bien...

          Citation

          Je pense pouvoir grouper plusieurs consignes ( question de clarté )



          Pourquoi pas...

          Citation

          dans une seule principale boucle en if , elif elif elif else.



          Vous repartez mal...

          Citation

          Si je commence mon code j'utilise d'abord une fonction input au départ ?



          Oubliez ceci et posez votre solution littérale.

          Citation

          Je bloque



          Vu votre façon de prendre le travail, je ne suis pas étonné...

          • Partager sur Facebook
          • Partager sur Twitter
            11 octobre 2012 à 23:39:55



            Par "Oubliez ceci et posez votre solution littérale." que voulez-vous dire ?

            J'applique donc bel et bien une première ligne semblable à celle-ci :>>> nombrebiere=int(input("Saisissez le nombre de bieres : ")

            Sur le même niveau que input je note des variables comme prixtotalfut, ventetotalbierre, achatgobelet, nombregobelet etc..

            Si je suis dans le bon je ne sais par contre pas du tout quelle valeur appliquer aux variables :/


            Après cela pourquoi pas utiliser une boucle en while ?



            Un boucle while du genre x =! -1

            et toute les opérations comptables dedans ( même si je ne vois pas encore comment faire )
            Puis quand je sors de la boucle un autre code , peut-etre ?, qui finaliserais les comptes ? ( le meilleur moyen me semble être d'utiliser la fonction print.

            Evidemment, si vous avez une autre façon (j'en suis sur ! ) de prendre le travail , cela me ferait plaisir de pouvoir la lire ! :)




            EDIT : Je pense avoir trouvé le filon , j'ai schématiser le tout sous forme de plan avec des boîtes ( comme expliquer dans le très très bon et très complet tutoriel sur python présent sur ce site ).

            J'ai ensuite commencer à organiser de manière littéraire mon plan sous formes de phrases afin de pouvoir les trier et enfin les classer par ordre pour ensuite pouvoir retranscrire le tous sous forme de code dans python.


            Je PENSE donc pouvoir continuer mon code en procédant de cette manière :D


            Voila merci beaucoup pour votre aide cher internaute !

            je vais mettre le problème en résolu "pour l'instant" car on ne sait jamais ; je pourrais encore avoir besoin de votre aide si je rencontre un problème de code !


            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              12 octobre 2012 à 0:14:01

              Citation

              Ca fait beaucoup de ligne pour peu de conseils tout ça ! J'en suis pas vraiment plus avancé ! Pas du tout à vrai dire.



              Pourtant je n'ai fais que ça, attendez-vous le résultat définitif, code compris?

              Citation

              Par "Oubliez ceci et posez votre solution littérale." que veux-tu dire ?



              Simplement donnez votre solution au problème sous forme d'étapes, mais en utilisant des mots, du texte et pas du code relatif au langage python.

              Citation

              Si je suis dans le bon je ne sais par contre pas du tout quelle valeur appliquer aux variables :/



              Seulement, je vous ai expliqué pourquoi. Vous ne devez pas solutionner votre problème en codant, mais... en posant ici une solution littérale.

              Citation

              Evidemment, si vous avez une autre façon (j'en suis sur ! ) de prendre le travail , cela me ferait plaisir de pouvoir la lire !



              Évidemment... Oui j'en ai une, même plusieurs, mais j'ai comme l'envie de vous faire bosser un peu :-°
              Disons que ma façon de coder (traduire votre forme littérale) dépendra de votre façon de penser.

              • Partager sur Facebook
              • Partager sur Twitter
                12 octobre 2012 à 0:37:24

                Alors c'est que je n'ai pas pris le temps de les voir ! Vu qu'apparement je vous ai offensé j'ai préférez édité mon message !


                NON NON Surtout merci de ne RIEN METTRE comme code SVP !

                Je voulais avoir une structure pour me permettre d'avancer car je bloquais depuis trop longtemps il me reste 3 jours pour faire ceci et je compte bien le faire. Evidemment tout autre conseil est toujours le bienvenu !

                Vous avez dit :

                "Disons que ma façon de coder (traduire votre forme littérale) dépendra de votre façon de penser."

                Et pour le plan que je viens de soummettre à l'instant ( EDIT du message ) sur le forum. Vous semble-t-il plutôt brouillon ou organisé ?

                Je sais qu'il y a mieux et je ne vise pas la perfection pour l'instant j'aimerais juste un avoir un avis objectif. Par exemple quel autre methode de travail est également efficace pour la phase qui précede la création d'un programme ( simple ou complexe ) ?

                Vous avez surement plus d'une technique efficace dans le sac ! :)

                Autant en faire profiter le reste du monde ! et moi par la même occasion.


                Sinon pour la valeur aux variables ; j'ai appliqué une valeur 0. Ca vous parait peut-être idiot mais j'ai ma petite idée la-dessus !


                Bon je vais encore bosser une heure ou deux ce soir avant d'aller dormir.

                Merci bien pour votre aide je risque d'en avoir encore besoin,
                Je soumettrais également mon code une fois le projet reçu corrigé ( donc pas avant deux semaines ) afin que vous puissiez observer mon évolution sur ce projet !
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  12 octobre 2012 à 0:43:19

                  Citation

                  Et pour le plan que je viens de soummettre à l'instant ( EDIT du message ) sur le forum. Vous semble-t-il plutôt brouillon ou organisé ?



                  Ce que je souhaiterais vous voir faire, est amener un pseudo code de votre problème, c'est à dire une solution (un algorithme)

                  • Partager sur Facebook
                  • Partager sur Twitter
                    12 octobre 2012 à 0:56:09

                    Merci pour le lien mais j'ai du visiter la version anglaise pour bien comprendre le sens.

                    Mon organisation sous formes de phrases après avoir été trié y ressemble fort. Il est clairement plus simple de s'organiser a l'aide d'un pseudo-code !
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Aide : creation programme comptabilité sous python 3

                    × 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.
                    • Editeur
                    • Markdown