[Python] Fonction à paramètres

Discutez d'informatique ici !
Charmander
Membre Naturel
Messages: 90
Enregistré le: 13 Oct 2013, 17:22

[Python] Fonction à paramètres

par Charmander » 20 Oct 2013, 22:19

Bonjour,

Je débute sur Python et je cherche à savoir comment écrire une fonction qui définit une fonction à partir d'un paramètre. Dans le cadre de mon exercice, je cherche à définir une fonction qui définit et renvoie une fonction polymiale de coefficients successifs les éléments d'une liste.
La manipulation des coefs n'est pas difficile en soi, mais c'est la syntaxe de "écrire une fonction qui définit et renvoie une autre fonction" qui me bloque. Sauriez vous comment faire ? Merci d'avance



SaintAmand
Membre Rationnel
Messages: 901
Enregistré le: 17 Oct 2011, 12:47

par SaintAmand » 20 Oct 2013, 22:42

Charmander a écrit:Je débute sur Python


Je soupçonne que tu n'as aucune documentation sous la main, n'est-ce pas ? Pour des livres et autres tutos gratuits regarde ici

https://github.com/vhf/free-programming-books

Pour quelque chose de plus intéractif pour apprendre rapidement les concepts de base, tu peux essayer Codecademy.


Dans le cadre de mon exercice, je cherche à définir une fonction qui définit et renvoie une fonction polymiale de coefficients successifs les éléments d'une liste.


Pas besoin d'écrire une fonction qui renvoie une fonction (au sens de python). Une fonction polynomiale est entièrement définie par la liste de ses coefficients.

Charmander
Membre Naturel
Messages: 90
Enregistré le: 13 Oct 2013, 17:22

par Charmander » 20 Oct 2013, 23:09

SaintAmand a écrit:Pas besoin d'écrire une fonction qui renvoie une fonction (au sens de python). Une fonction polynomiale est entièrement définie par la liste de ses coefficients.


Je ne comprends pas trop ce que tu veux dire par-là... La consigne de mon exercice, mot pour mot, est:

"Ecrire une fonction fonctionPolynomiale(P) qui définit et renvoie la fonction polynomiale f:x->P(x)"

Je ne dois pas écrire une fonction de variable P(une liste) qui définit la fonction poynomiale en question?

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

par fatal_error » 21 Oct 2013, 00:07

d'apres ce que je comprends il s'agirait de qqch du style
Code: Tout sélectionner
>>> def getPol(L):
...     def P(x):
...             return L[0]+L[1]*x;
...     return P
...
>>> f=getPol([3,4])
>>> f(5)
23


sauf que il faut que tu fasses un peu plus que la fonction linéaire!
où L est une liste de coefficients définissant le polynome dont tu veux récupérer la fonction associée
la vie est une fête :)

Charmander
Membre Naturel
Messages: 90
Enregistré le: 13 Oct 2013, 17:22

par Charmander » 21 Oct 2013, 09:26

Voilà, c'est exactement ce que je cherche, et ça marche ! Il manque juste un return dans la définition de P(x) car sinon si on entre 'f(5)" par exemple f ne retourne rien
Merci beaucoup! :)

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 14 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite