resoudre numeriquement erf(x), et alternative a scan f - Algo - Programmation
Marsh Posté le 23-10-2009 à 10:49:31
Pour l'alternative à scanf() : fgets() + une fonction de conversion quelconque (strtod(), strtol(), etc)
Pour l'algo, je déplace ton topic dans la catégorie "Algorithme" dans laquelle il trouvera plus de réponses.
Marsh Posté le 23-10-2009 à 11:35:00
Il y a une fonction erf() dans C99 (mais pas C90), declaree dans <math.h>. De memoire, elle correspond a un usage plus ancien au moins sous Unix.
Au pire, tu peux chercher dans l'implementation de la libc d'un BSD, la license devrait ne pas te poser de probleme.
Marsh Posté le 23-10-2009 à 13:14:03
le problème c'est que je ne peux pas utiliser une fonction existante de erf(), il faut que je programme un algorithme pour déterminer les valeurs de erf ainsi que l'erreur associé... Mais je peux utiliser un algorithme déjà existant, si je connais la source.
Marsh Posté le 23-10-2009 à 14:28:52
qu'est-ce qui te dérange à utiliser l'une des approximations données dans wikipedia En plus, c'est fait exprès pour ceux qui codent en C ou fortran (c'est précisé dedans)...
Sinon, ben tu cherches un algo de calcul d'intégrale (méthode des rectangles, des trapèzes...) : http://fr.wikipedia.org/wiki/Calcu [...] C3%A9grale
Marsh Posté le 23-10-2009 à 14:46:34
ce qui me dérange ce que c'est un exercice. le plus important c'est de programmer le calcul d'une intégrale, pas vraiment le résultat.
EDIT : je viens de regarder le lien pour le calcul d'intégral par la méthode des trapèzes, le problème, c'est que je n'aurai pas d'estimation de l'erreur. Cette méthode est plus adapte au polynôme.
Peut être avec la methode de laplace mais la je ne connais pas, donc je bloque un peu.
Marsh Posté le 23-10-2009 à 16:51:27
bhen utilise le développement en série, c'est le plus simple ( et surement ce qu'on te demande d'appliquer), la méthode des trapèzes je vois pas trop comment tu peux l'appliquer et si tu cherches une solution d'approche numérique nouvelle et originale, bon courage (tu auras ta page dans wikipedia)
Marsh Posté le 23-10-2009 à 16:59:27
je laisse la page libre dans wikipedia au courageux/
je vais m'attaquer aux séries c'est plus sympa, je vous tiendrai au courant de mon résultat
Marsh Posté le 23-10-2009 à 10:46:41
Bonjour !
Je cherche a resoudre numeriquement la fonction erf(x). J'ai cherche sur internet, j'ai trouve des resolutions, comme celle propose par wikipedia
http://fr.wikipedia.org/wiki/Fonction_d%27erreur
Mais ce qui me faudrait vraimment c'est un moyen d'effectuer une resolution sans utiliser ces solutions, a priori on peut utiliser l'algorithme de Horner, mais je ne voit pas comment. une idee ?
En gros je cherche un algorithme pour resoudre cette integrale, sans passe par des solutions deja existantes.
Sinon je cherche aussi une alternative a scanf pour lire la valeur que l'utilisateur rentre. Je veux pouvoir detecter par exemple si il rentre un caractere a la place d'une valeur afin de quitter le programme.
Pour donner quelque chose comme ca,
Merci pour votre aide.
le code ici n'a pas une grande importance, c'est juste pour donner une idee generale. Ce qui me faut c'est une alternative a scanf, et un moyen de resoudre erf (algorithme de horner, methode des trapezes...)
Message édité par nakor le 23-10-2009 à 12:26:04