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

Calcul scientifique Python Discussion :

Aide programme effectuant des réductions


Sujet :

Calcul scientifique Python

  1. #1
    Invité
    Invité(e)
    Par défaut Aide programme effectuant des réductions
    Bonjour,
    Je dois créer une fonction effectuant une réduction de 5€ par tranches de 50€ d'achats.
    Il m'est donné 12 valeurs que voici : 37.25, 42.85, 51, 82.50, 92.65, 103, 145.25, 168.10, 189.50, 201.85, 235.10, 251.50
    J'ai trouvé comment effectuer la réduction mais on me demande de créer une liste "montant" contenant toutes les valeurs données ci-dessus. Je ne sais pas comment l'utiliser dans une condition de sorte que cette dernière teste chaque valeurs à la suite.
    Pouvez-vous m'aider?

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Booldegum Voir le message
    Je ne sais pas comment l'utiliser dans une condition de sorte que cette dernière teste chaque valeurs à la suite.
    Avec une boucle où on prend chaque élément/valeur de la liste pour calculer le quotient de sa division par 50€ donnant le nombre de réductions de 5€ à déduire/rendre.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Invité
    Invité(e)
    Par défaut
    D'accord, voici ce que j'ai codé.
    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
    def fonction():
    	nombre = [37.25, 42.85, 51, 82.50,92.65, 103, 145.25, 168.10, 189.50, 201.85, 235.10, 251.50]
    	for i in range(len(nombre)) :
    		if nombre[i]>= 50 and nombre[i]<=100 :
    			nombre[i]= nombre[i]-5
     
    		elif nombre[i]>100 and nombre[i]<=150:
    			nombre[i]= nombre[i]-10
     
    		elif nombre[i]>150 and nombre[i]<=200:
    			nombre[i]= nombre[i]-15
     
    		elif nombre[i]>200 and nombre[i]<=250:
    			nombre[i]= nombre[i]-20
     
    		elif nombre[i]>250 and nombre[i]<=300:
    			nombre[i]= nombre[i]-25
     
    	print(nombre)
     
     
     
    print(fonction())
    Cela vous semble-t-il correct? Y aurait-il un moyen plus simple d'avoir ce résultat? Et plus esthétique?

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Booldegum Voir le message
    Cela vous semble-t-il correct? Y aurait-il un moyen plus simple d'avoir ce résultat? Et plus esthétique?
    C'est correct si lorsqu'on lance le code, çà sort le résultat attendu.

    La division euclidienne vous permettrait d'écrire le code sans toutes ces conditions (mais je vous l'ai déjà suggéré dans mon message précédent... apparemment c'est un concept qui ne tilte pas vos neurones).

    Il y a plein de façon d'écrire ce genre de code. Tout dépend de votre connaissance des fonctionnalités du langage.
    Comme vous débutez, l'important, c'est pas tellement d'écrire un joli code mais un code que vous allez comprendre, pouvoir relire, .... et tout ce que vous allez apprendre sur la programmation avec Python en le mettant au point.

    Dans les tutos. vous avez des exercices (certains sont corrigés) pour vous entraîner et comparer.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Invité
    Invité(e)
    Par défaut
    D'accord, merci pour votre aide. Bien sûr votre remarque concernant la division avait "fait tilt dans mes neurones" cependant je n'ai pas trouvé le moyen de l'utiliser. Alors si vous pouviez étayer vos propos avec quelques exemples, peut être que ça tilterait. Merci ^^

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Booldegum Voir le message
    Alors si vous pouviez étayer vos propos avec quelques exemples, peut être que ça tilterait. Merci ^^
    Vous êtes supposé avoir un peu appris à programmer en ouvrant un tuto. avant de poster ici.

    Si votre tuto. est bien fait, il a une table des matières et tout un chapitre qui parle des opérateurs et des expressions.

    Là aussi j'espère que votre cerveau fasse "tilt" pour aller revoir le chapitre en question.
    note: dans cette histoire, il y a l'algorithme (comment utiliser la division pour...) et comment faire une division (entière) avec Python (le détail à apprendre dans un tuto). Vous montrer la solution, c'est juste vous éviter d'essayer de faire fonctionner vos méninges pour la trouver par vous même (l'algo.). Dommage non?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Invité
    Invité(e)
    Par défaut
    Honnêtement j'espérais avoir affaire à des personne capables de donner un avis construit et de conseiller plutôt que de critiquer un débutant sur la capacité de ses neurones et de toujours rediriger vers des liens sans plus d'explications que cela... Mais bon il semblerait que je doives m'en contenter... Merci en tout cas pour vos tentatives d'aide mais on dirait que mes neurones soient trop limitées pour comprendre.
    Au revoir

  8. #8
    Membre émérite

    Homme Profil pro
    Ingénieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Points : 2 328
    Points
    2 328
    Par défaut
    Déjà appelle ta fonction autrement que "fonction". Faut lui donner un nom explicite.
    Ensuite ta fonction devrait prendre un paramètre, un prix x par exemple, et retourner le nouveau prix, avec la remise.
    Tu fais la construction de la liste à l'extérieur de la fonction, et tu appelles la fonction sur chacun des éléments de la liste (plutôt que de faire ca dans la fonction).

    Et après demande toi ce qui va se passer si tu as envie de calculer le prix réduit de 23657.12 ?
    Essaie de le faire à la main, sur une feuille de papier, et quand tu y est parvenu regarde les opérations que tu as faites. Ce sont toutes des opérations que tu peux implémenter en python

  9. #9
    Invité
    Invité(e)
    Par défaut
    Très bien je vais essayer . J’avoue que les listes et les tupples c’est encore un peu obscur pour moi. J’ai un peu de mal à comprendre leur fonctionnement... je vais chercher comment faire ce que tu m’as dit ! Merci!

  10. #10
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2020
    Messages : 1
    Points : 1
    Points
    1
    Par défaut De Nansalmaa
    Allo Booldegum ? ici Nansalmaa. Vous me recevez ? Mes messages privés ne vous parviennent pas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] Aide programme associer des mots VBA
    Par Franck6979 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 19/05/2017, 11h01
  2. [AIDE] Programme état des disques = erreur
    Par stalck dans le forum VBScript
    Réponses: 3
    Dernier message: 26/03/2012, 16h09
  3. effectuer des modification sur un programme conçue par vb6
    Par tatidodo dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 29/04/2009, 18h16
  4. Réponses: 4
    Dernier message: 24/04/2007, 10h18
  5. Réponses: 1
    Dernier message: 12/03/2007, 07h54

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