IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Facture En C++


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Facture En C++
    Bonjour,
    je suis un débutant en C++ et j'espere que vous pouvez m'apporter un peu de votre savoir,
    voila je veux creer une facture l'est l'afficher dans la fenetre ms dos de c++ le truc c'est je ne sais pas trop manipuler les tableau et donc je ne sais pas comment faire pour affiches les articles sous forme de tableau

    je suis arrivé à :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    #include <stdio.h>
    #include <conio.h>
     
     
    int a,b,c,n,tva;
    char NomC;
     
    int main(void)
    {
     
           printf("Entrez le nom du client : ");
           scanf("%s", &NomC );
           printf("Saisissez le nombre d'article a facturer\n\n: ");
           scanf("%d",&n);
           int i=1; 
           while (i<=n) 
           {
           printf("Saisissez la designation de l'article n: %d    \n\n",i++);
           scanf("%s",&a);
           printf("Saisissez le prix unitaire      :");
           scanf("%d",&b);
           printf("Saisissez la tva     :");
           scanf("%d",&tva);
           printf("Saisissez la quantite     :");
           scanf("%d",&c);
           }
    je veux afficher tout sous forme d'un tableau contenant :

    N Designation PU TVA Qte Montant
    TOTAL HT
    TOTAL TVA
    TOTAL TTC

    merci bcp pour votre aide

  2. #2
    Membre habitué Avatar de Xtrem_Voyageur
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2009
    Messages : 85
    Points : 154
    Points
    154
    Par défaut
    Je ne vois que du C dans ton code.
    Et si tu veux que la sortie console ait des allures de tableau, et bien il faut faire les bons printf et placer les éléments correctement.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    mais comment afficher des lignes et des colonnes on doit utiliser une matrice non?

  4. #4
    Membre habitué Avatar de Xtrem_Voyageur
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2009
    Messages : 85
    Points : 154
    Points
    154
    Par défaut
    Non il faut faire ça 'à la main' et s'aider d'options de sortie comme l'espace occupé par tel format de nombres, combien de décimales, etc... pour arriver à obtenir des alignements.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    je veux affiche comme suit :


    .......................................................................
    N DESIGNATION PU TVA QTE MONTANT
    .......................................................................
    1 PC 100 7 2 200
    2 IMPRIMANTE 50 17 2 200
    ....
    .......................................................................
    total ht
    tva 7
    tva 17
    total ttc
    ......................................................................

    pouvez-vous me donner la partie qui fait cette affichage svp

  6. #6
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Salut,

    Bon, déjà, ce code est en C, et meme pas en C portable!!!

    Ensuite, tu prévois tes variables pour gérer un seul article, or tu écrit une boucle qui est sensée te permettre d'en récupérer plusieurs...

    Tu devrais donc, au minimum, créer une structure qui puisse regrouper l'ensemble des informations relative à une ligne de la facture, et faire en sorte de maintenir un ensemble (de taille plus ou moins définie) d'articles .

    De cette manière, il te sera possible, une fois que tu as introduit l'ensemble des articles de la facture, de les récupérer et de travailler avec ces informations de sorte à calculer, par exemple, le total HTVA, le total de la TVA ou le total TTC

    Tu devrais, en outre, veiller à utiliser des noms beaucoup plus explicite pour tes variables: il faut vraiment une lecture attentive pour arriver à déterminer à quoi correspondent tes variables a, b, c, d et n

    Enfin, je serais surpris que tu arrives à coder un nom de client sur un seul caractère

    En C, il faudrait, au minimum, utiliser un tableau de caractères, idéalement de taille variable (pour éviter les problèmes que tu pourrais avoir à essayer d'encoder un nom de ... N+1 caractères, alors que tu n'en aurais prévu que N)

    Ainsi, tu pourrais envisager d'avoir une structure proche de (code C, vu que tu as commencer à coder en C )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    typedef struct Article_
    {
        char designation[26]; // attention, 25 caractères max... c'est pas l'idéal, mais c'est le plus simple :D
        int quantite;
        float prixUnitaire; // un float pour pouvoir compter les centimes :D
        float TauxTVA;
    }Article;
    Comme on peut se dire qu'une facture risque de se composer de plusieurs articles, et qu'il faut, en outre, y rajouter certaines informations, il y aurait une deuxième structure proche de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    typedef struct Facture_
    {
        char nomClient[25];
        int nombreArticle;
        Article * articles_;
        float totalHorsTVA;
        float tptalTVA;
        float totalTTC;
        /* on pourrait prévoir d'autres informations, comme la date,
         * le numéro de facture, l'adresse du client ou que sais-je ;)
    }Facture;
    Ensuite, il faut savoir que, l'idéal, c'est de toujours clairement déléguer les responsabilités...

    Si une fonction fait plus d'une chose, a plus d'une responsabilité, c'est très certainement qu'elle en fait trop (qu'elle a trop de responsabilités)

    Il faudrait donc "découper" ton programme en différentes fonctions. Au minimum
    1. une qui va te permettre de remplir la facture
    2. une autre qui va te permettre de l'afficher
    3. la fonction main qui va créer la facture (en allouant suffisamment de mémoire pour mettre tous les articles dans la facture) et qui appellera les deux premières successivement

    Mantenant, c'est à toi de jouer
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    c est trés sympat je sais que j'en fais trop, comment faire pour récupérer les nomClient[25]; nombreArticle;....... avec scanf ?

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    en principe mon programme commence a prendre forme grace a vous,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    /*inclure la librairie*/
     
    #include <stdio.h>
    #include <conio.h>
    #include<iostream>
    #include <stddef.h>
     
    /*declaration des variables globales*/
     
    typedef struct Article_
    {
        char designation[26]; 
        int quantite;
        float prixUnitaire; 
        float TauxTVA;
    }Article;
     
    typedef struct Facture_
    {
        char nomClient[25];
        int nombreArticle;
        Article * articles_;
        float totalHorsTVA;
        float tptalTVA;
        float totalTTC;
    }Facture;
     
    int main(void)
    {
    	int c;
        Facture cl[25];
     
    	printf("Veuillez entrer le nom du client :\n");
    	scanf("%s",cl[c].nomClient);
     
     int nbrart,i;
    Article a[100];
     
     
      	printf("Quel est le nombre d'articles a facturerc  ");
    	scanf("%i",&nbrart);
     
     
      	for ( i = 0; i <nbrart; i++){
    		printf("Veuillez saisir la désignation, Prix Unitaire, Taux TVA, Quantite de l'article n %i:\n",i);
     
    	scanf("%s %f %f %i",a[i].designation,&a[i].prixUnitaire,&a[i].TauxTVA,&a[i].quantite);
     
    	}
     
     
      printf("Client %s:\n",cl[c].nomClient);
      printf("----------------------------------------------------------------------------:\n");
      printf("Designation    | Prix Unitaire | Taux TVA | Quantité |    Montant    |:\n");
     
      for ( i = 0; i <nbrart; i++){
        printf("---------------------------------------------------------------------------:\n");
    	printf("|%12s| |%15f| |%5f| |%5i| |%15f|\n",a[i].designation,a[i].prixUnitaire,a[i].TauxTVA,a[i].quantite,(a[i].prixUnitaire*a[i].quantite));
    mais je n'arrive pas a manipuler les structures afin de faire apparaitre le totaux HT tva et TTC j'avoue que sa me dépasse aidez moi svp

  9. #9
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Joa,

    Ce qui te bloque est basique, il faut donc retourner à un cours/bouquin..., et reprendre pratiquement à zéro l'apprentissage du langage.
    Si les cons volaient, il ferait nuit à midi.

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    ce qui me bloque c la syntaxe qui permet d'affecter les montants HT de tous de tout les articles a totalHorsTVA

  11. #11
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Bie,

    C'est bien ce que j'ai dit : c'est basique, donc retour aux cours.
    Si les cons volaient, il ferait nuit à midi.

  12. #12
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    merci du conseil

Discussions similaires

  1. Facturation et hébergement
    Par olive.m dans le forum Structure
    Réponses: 9
    Dernier message: 30/06/2006, 16h32
  2. [ORACLE]20 dernières dates de facturation
    Par Frank dans le forum Langage SQL
    Réponses: 10
    Dernier message: 20/10/2005, 10h06
  3. etablir une facture avec Visual C++
    Par aymeno dans le forum MFC
    Réponses: 4
    Dernier message: 27/08/2005, 15h41
  4. Gros problème avec la facturation de Tiscali
    Par Harry dans le forum Dépannage et Assistance
    Réponses: 5
    Dernier message: 21/10/2004, 18h55
  5. ?Convertir le montant de ma facture en lettres?
    Par Redhouane dans le forum Bases de données
    Réponses: 1
    Dernier message: 26/05/2004, 00h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo