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

Langage PHP Discussion :

Algorithme PHP et boucle while


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Algorithme PHP et boucle while
    Bonsoir à vous,
    Voilà je voudrais faire un algorithme pour calculer le nombre d'articles que peut acheter un client suivant le prix et l'argent du client
    Par exemple le client a 50€ pour acheter 3 des pulls à 15€ pièce, tout en utilisant la boucle while
    J'ai essayé plusieurs fois plusieurs codes différents mais à chaque fois celui-ci me rajoute 1 à ma boucle mais pas le reste du chiffre après la virgule
    Exemple au lieu de me faire 1.5-3-4.5 il rajoute que 1 mais pas la totalité du nombre
    Merci à vous par avance

  2. #2
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 092
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 092
    Points : 16 606
    Points
    16 606
    Par défaut
    Salut

    Bienvenue sur DVP.

    Pour t'aider efficacement, puisque tu as déjà écrit un peu de code, mes nous le ici entre balise [CODE] ... ICI TON CODE ... [/CODE]

  3. #3
    Membre confirmé Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Points : 492
    Points
    492
    Par défaut
    Salut,

    Je ne vois pas ce qu'une boucle while viendrait faire là-dedans.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $quantite_de_pull_a_15 = $budget_client/$prix_du_pull;

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci pour vos réponses
    Voici le code que j'ai essayé sous plusieurs formes, avec des valeurs différentes, et le résultat par lui même est bon, mais le problème c'est qu'il me compte deux fois la boucle par moment
    Attention, je suis novices en terme de langage php je commence juste à apprendre depuis quelques semaines, désolé si mon code n'est pas parfait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    $p=1.65;
    $I=0;
    while($I <=15){
    $m=($i/$p);
    echo (round($m, 0))."<br/>";
    $i++;
    }
    ?>
    Voila le résultat :
    0<br/>1<br/>1<br/>2<br/>2<br/>3<br/>4<br/>4<br/>5<br/>5<br/>6<br/>7<br/>7<br/>8<br/>8<br/>9<br/>

  5. #5
    Membre confirmé Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Points : 492
    Points
    492
    Par défaut
    Est-ce que tu comprends ce que tu es en train de faire avec ta boucle "while" ?
    Pourquoi une boucle "while" ?



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $budget = 50;
    $prix_article = 15;
    $tmp = 0;
    $i = 0;
    while($tmp <= $budget) :
        $i++;
        echo $i.'<br />';
        $tmp += $prix_article;
    endwhile;

    Ou :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $quantite_de_pulls_a_15 = intval($budget_client/$prix_du_pull);

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse ma5t3r,
    Oui je comprends ce que je fais avec la boucle while, même si je pense que je me complique la plus vie plus qu'autre chose avec celle ci
    Merci pour tes exemples de codes, si j'exécute le premier qui ressemble un peu au miens, le résultat est 1-2-3-4, alors que normalement il ne peut y avoir que 3 à 15€ est non 4 car sinon on dépasse les 50 de départ et c'est cela que je n'arrive pas à comprendre
    Et le problème c'est que je dois absolument utiliser cette boucle

  7. #7
    Membre confirmé Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Points : 492
    Points
    492
    Par défaut
    C'est la particularité de la boucle "while".

    Tant que mon expression n'est pas vraie, je rentre dans la boucle.
    Forcément, pour que mon expression soit vraie, il faut rentrer dans la boucle une dernière fois, ce qui incrémente $i ($i++).

    Après ta boucle, tu fais :
    Et ta valeur est bonne


    Qui te force à utiliser "while" ?
    C'est toi qui code, dis-lui d'aller se faire voir ailleurs. :-)

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2020
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Oui je pense que tu as raison, je vais m'occuper de le faire remonter à la personne qui ma donné ce code à faire, il va m'entendre
    Car il y a 1000 fois plus simple à faire, tu as bien raison
    Et un grand merci à toi pour ton aide précieuse

Discussions similaires

  1. [PHP 7] PHP UPDATE boucle WHILE
    Par karpe dans le forum Langage
    Réponses: 21
    Dernier message: 15/03/2018, 00h12
  2. Probleme boucle while php
    Par drogba72 dans le forum Langage
    Réponses: 9
    Dernier message: 06/02/2009, 11h04
  3. Réponses: 3
    Dernier message: 25/11/2008, 17h01
  4. Réponses: 15
    Dernier message: 11/05/2007, 15h28
  5. [PHP-JS] pb boucle while
    Par kodokan dans le forum Langage
    Réponses: 2
    Dernier message: 26/09/2006, 23h25

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