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

Algorithmes et structures de données Discussion :

Exercice d'algorithmique : je ne comprends pas pourquoi mon algorithme ne marche pas


Sujet :

Algorithmes et structures de données

  1. #1
    Candidat au Club
    Homme Profil pro
    En formation
    Inscrit en
    septembre 2019
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : septembre 2019
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Exercice d'algorithmique : je ne comprends pas pourquoi mon algorithme ne marche pas
    Bonjour, je dois réaliser un exercice :

    À partir de la saisie du prix unitaire d'un produit et de la quantité commandée, afficher le prix total à payer, en détaillant le port et la remise, sachant que :

    - Le port est gratuit si le prix des produits est supérieur à 500 euros. Dans le cas contraire, le port est de 2% du prix.
    - La valeur minimale du port à payer est de 6 euros.
    - La remise est de 5% si le prix est compris entre 100 et 200 euros et de 10% au-delà.

    Et voilà mon algo.... qui ne fonctionne pas :

    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
    Var PU;
    Var QTECOM;
    Var P;
    Var FDP = 6;
    Var FDP2;
    Var PRIXTTC;
    Var PRIXREMISE;
    Var PRIXFDP;
     
    PU=prompt(" Prix unitaire?");
    QTECOM=prompt("Quantité?");
     
    P=PU*QTECOM;
     
    alert("Le prix est de : "+P+" euros");
     
    If (P>200)
    {
    P*0.9==PRIXREMISE;
    }
     
    Else (P>100 && P<200)
    {
    P*0.95==PRIXREMISE;
    }
     
    If (P<300)
    {
    P+FDP==PRIXFDP;
    }
     
    Else (P>300 && P<500)
    {
    P*0.02==FDP2;
    alert("Frais de port de : "+FDP2+" euros");
    P+FDP2==PRIXFDP;
    }
     
    PRIXFDP+PRIXREMISE==PRIXTTC
    alert("Vous devez : "+PRIXTTC+" euros);
    Voilà voilà, cela ne fonctionne pas, pouvez vous m'orienter sur erreurs svp?

    Merci beaucoup,
    Bonne fin de journée!

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    août 2008
    Messages
    24 794
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 24 794
    Points : 168 365
    Points
    168 365
    Par défaut


    Que veux-tu dire par "ça ne marche pas" ? Tu as des erreurs, des résultats inattendus ? Lesquel(le)s ?

    Sinon, en regardant vite fait, je suis tombé sur un paquet de == : ce sont des comparaisons, pas des affectations. Avec une comparaison, tu ne changes pas la valeur d'une variable : tu détermines si une condition est vraie ou pas (puis tu fais quelque chose de ce résultat, avec un if, un while, etc.).
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions), HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Membre averti

    Homme Profil pro
    Directeur de projet
    Inscrit en
    mai 2013
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : mai 2013
    Messages : 53
    Points : 379
    Points
    379
    Par défaut Jointure
    Bonjour,

    Outre les problèmes syntaxiques il y a potentiellement des problèmes de jointure de cas. Par exemple que se passe-t'il si P == 200 ? Remises : 10 % à 200.01, 5% à 199.9 et 0% à 200.

    Salutations
    Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better. (Samuel Beckett)

Discussions similaires

  1. diaporama: pourquoi mon code ne marche pas
    Par secondechance dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/05/2009, 02h04
  2. [MASM] Pourquoi mon *.exe ne marche pas ?
    Par link25000 dans le forum x86 16-bits
    Réponses: 1
    Dernier message: 24/04/2009, 23h57
  3. Pourquoi mon script ne marche pas ?
    Par chrifus dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/05/2008, 18h04
  4. Pourquoi mon Thread ne marche pas ?
    Par Cazaux-Moutou-Philippe dans le forum Delphi
    Réponses: 9
    Dernier message: 27/05/2007, 16h19
  5. Pourquoi mon script ne marche pas?
    Par amarcil dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/05/2006, 21h37

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