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

Delphi Discussion :

CALCUL de Marge


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut CALCUL de Marge
    Bonjour à tous,

    J'ai un soucis, je dois calculer une marge. Bon ça à l'air simple :

    CA - COUTS * 100 / CA et opppsss c'est fini. BEN NON

    Si le CA est à zéro, on a une division par 0.

    Bon je pourrais gérer le cas avec une clause if, mais auriez vous une equation qui prenne ce cas en compte ?

    Merci d'avance
    Angelique

  2. #2
    Membre extrêmement actif
    Avatar de skywaukers
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2005
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 219
    Par défaut
    bonjour,

    pour la question, à part un if ou à la limite un try..exept, je vois pas.
    Par contre fais gaffe aux priorités des opérateurs (* et / sont interprétés avant le -).

    @++
    Dany

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut Merci Dany
    Merci,

    Mais je suis sure que l'on peut trouver sans ce @^\\``| de if.

    Je continue ma recherche

    et encore merci pour ta réponse

  4. #4
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut,

    Si tu tiens à ne pas utiliser le if, alors intercepte la division par 0.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    try
      marge := (CA - COUTS) * 100 / CA;
    except
      on EZeroDivide do marge := 0;
    end;
    @+

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 88
    Par défaut
    ou avec un CASE OF !!!

    (mais je ne suis pas sûr que ça réponde à ta question )

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut Re bonjour
    Et merci à tous.

    Pour Claudius40 pour le on except la marge n'est dans ce cas pas égal à zéro.

    Et je recherche une équation prenant tous les cas en compte... si elle existe.

    J'ai un second problème d'ailleurs, si le CA est inférieur à zéro, la marge est fausse.

    Il doit bien exister une équation globale, mais mes neuronnes sont fatigués.

    Au cas ou

    @+ Angelique

  7. #7
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Re,

    Citation Envoyé par Angelique_Abac
    Pour Claudius40 pour le on except la marge n'est dans ce cas pas égal à zéro.
    Effectivement, la valeur 0 n'était qu'un exemple !
    Et puis ne t'inquiète pas pour tes neurones...

    @+

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut Merci.
    Encore merci à tous.

    L'algo qui fonctionne pour gérer tous les cas est celui ci

    Select @@Marge = (@@CA)-(@@Cout)

    if (@@Marge > 0)
    begin
    if (@@CA > 0)
    Set @@Pourcentage_Marge = 100-((@@Cout/@@CA)*100)
    else
    Set @@Pourcentage_Marge = 100
    end

    if (@@Marge < 0)
    begin
    if (@@CA < 0)
    Set @@Pourcentage_Marge = -100
    else
    Set @@Pourcentage_Marge = -(100*(Abs(@@Marge)/@@Cout))
    end

    Néanmoins, je suis sure que tous ces cas peuvent être gérés dans une équation unique qui simpliefait la lecture du code et qui éviterait toutes ces conditions.

    Au cas ou un matheu passe par là.

    Encore merci

    @+

  9. #9
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 491
    Par défaut
    salut

    Citation Envoyé par Angelique_Abac
    Encore merci à tous.

    L'algo qui fonctionne pour gérer tous les cas est celui ci

    Select @@Marge = (@@CA)-(@@Cout)
    if (@@Marge > 0)
    begin
    if (@@CA > 0)
    Set @@Pourcentage_Marge = 100-((@@Cout/@@CA)*100)
    else
    Set @@Pourcentage_Marge = 100
    end

    if (@@Marge < 0)
    begin
    if (@@CA < 0)
    Set @@Pourcentage_Marge = -100
    else
    Set @@Pourcentage_Marge = -(100*(Abs(@@Marge)/@@Cout))
    end

    Néanmoins, je suis sure que tous ces cas peuvent être gérés dans une équation unique qui simpliefait la lecture du code et qui éviterait toutes ces conditions.

    Au cas ou un matheu passe par là.

    Encore merci

    @+

    tu peut simplifier en remplacant
    ce qui devrait te donnée ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Select	@@Marge = (@@CA)-(@@Cout)
    if (@@Marge > 0)
    begin
       Set @@Pourcentage_Marge = 100-((@@Cout/(@@Marge+@@Cout))*100)
    end
    parcontre si je cherche le pourcentage de marge je ferait pluto
    la Marge / Ca

    @+ Phil

  10. #10
    Membre éprouvé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Par défaut
    je ne comprend pas cet acharnement à éviter le If...

    pourquoi ne pas faire une fonction à part si il s'agit de lisibilité dans le code ???

  11. #11
    Membre Expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Par défaut
    Citation Envoyé par Angelique_Abac
    Bonjour à tous,

    J'ai un soucis, je dois calculer une marge. Bon ça à l'air simple :

    CA - COUTS * 100 / CA et opppsss c'est fini. BEN NON

    Si le CA est à zéro, on a une division par 0.

    Bon je pourrais gérer le cas avec une clause if, mais auriez vous une equation qui prenne ce cas en compte ?
    Angelique
    en quoi l'utilisation du If vous dérange ce n'est qu'une précaution logiquement vous devriez pas avoir des cout a zéro ni de chiffre d'affaire les tests devrons etre fait bien avant,
    vous devez passer par un test.

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 88
    Par défaut
    Et en supposant que CA=0, tu voudrais obtenir quoi comme résultat ? Juste -COUTS ?

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut Bonjour Riko
    Si CA = 0s la marge est de -100


    En gros, le CA =< 0 alors % Marge = -100

    Le problème étant de concecoir une equation globla qui prenne ce cas en compte.

    Allez j'en rajoute un, pour le fun... J'ai un fournisseur dont j'attends un avoir (système de commission quelques fois utilisé) j'ai donc

    CA = 0
    Cout = -50 (et non 50 car j'ettends de sa part un avoir)

    Finalement pas si simple de calculer une marge, non ?

    Merci pour vos réponses, si je trouve je tiens tiens au jus.

    @+ Angelique

    ;-)

  14. #14
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 88
    Par défaut
    Il reste les yeux pour !!!

  15. #15
    Membre Expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Par défaut
    je suis pas financier mes a ma connaissance c'est pas la marge que vous voullez calculer c'est le solde des clients.

    Marge ou résultat = CA - Charge
    CA = montant facturer = (Montant encaisser+ Créance).

Discussions similaires

  1. [FORMULES] Formule pour calcul des marges
    Par termor dans le forum Excel
    Réponses: 8
    Dernier message: 15/07/2008, 17h15
  2. calcul de marge pondérée
    Par solorac dans le forum Excel
    Réponses: 11
    Dernier message: 30/08/2007, 14h49
  3. access plante en calcul de marge en %
    Par SERGE54 dans le forum Access
    Réponses: 2
    Dernier message: 21/09/2006, 08h36
  4. Calcul de Marge
    Par Angelique_Abac dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 04/08/2006, 21h23
  5. Je voudrais faire un calcul de marge
    Par Fredri dans le forum Access
    Réponses: 1
    Dernier message: 20/12/2005, 16h36

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