Un soucis tout simple dû à ... ? (boucle ?)

fandesandro Messages postés 24 Date d'inscription samedi 12 avril 2008 Statut Membre Dernière intervention 28 novembre 2008 - 25 nov. 2008 à 22:25
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 5 mars 2009 à 23:15
Bonsoir à tous, je viens de coder quelque chose en peu de temps mais j'ai un soucis :

# -*- coding: utf-8 -*-
def mathsfonction():
    print "Bonjour, bon amusement grâce à ce script codé par Fandesandro; entrez vôtre fonction et admirez ! (si une puissance il y a, entrez **)"
    recommencer = 0
    while recommencer == 0:
        limin = input("Veuillez entrer la valeur minimum de x : ")
        limax = input("Veuillez entrer la valeur maximum de x : ")
        pas = input("Veuillez entrer le pas : ")
        fonction = input("Veuillez entrer la fonction : ")
        for limin in range(limax+pas):
            print limin, fonction
            limin = limin + pas
        recommencer = input("Veuillez entrer 0 pour recommencer, 1 pour arrêter : ")
mathsfonction()
Le soucis, par exemple, fonction 2*limin; si limin 1 et bien j'aurai toujours fonction = 2 or j'aimerai trouver le résultat de la fonction pour différentes valeurs de limin.

J'ai essayé while, for, en changeant fonction de place mais rien n'y fait.
Sauf si je mets fonction dans la boucle : je dois redéfinir fonction et alors ça fonctionne.

Or j'aimerai n'avoir qu'à définir fonction une fois.
Voilà voilà, si vous pouviez m'aider ce serait avec le plus grand des plaisirs o/

Merci d'avance, salutations d'un débutant en python ;)
Bonne soirée à vous.

2 réponses

fandesandro Messages postés 24 Date d'inscription samedi 12 avril 2008 Statut Membre Dernière intervention 28 novembre 2008
28 nov. 2008 à 18:45
Même pas une petite réponse pour ce petit soucis ? :)
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
5 mars 2009 à 23:15
j'ai enormement de mal a comprendre ce que tu veux a vrai dire. Est ce que tu veux que fonction soit définie une seule fois par l'utilisateur ? J'en doute mais si oui

recommencer = 0
fonction = input("Veuillez entrer la fonction : ")
    while recommencer == 0:
        limin = input("Veuillez entrer la valeur minimum de x : ")
        limax = input("Veuillez entrer la valeur maximum de x : ")
        pas = input("Veuillez entrer le pas : ")
        for limin in range(limax+pas):
            print limin, fonction

de plus, tu devrais utiliser raw_input pour éviter les erreurs et gérer le type toi meme
0
Rejoignez-nous