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

Fortran Discussion :

Calcul dérivée Polynôme


Sujet :

Fortran

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Calcul dérivée Polynôme
    Bonjour à tous,
    j'ai un problème avec ce petit programme que j'ai créé pour un calcul de dérivée d'un polynome

    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
    program poly
    implicit none 
    real::derivpoly,x
    real,allocatable::a(:),b(:)
    integer::i,n
    print*,'quel est le degré'
    read*,n
    allocate (a(n+1),b(n+1))
    do i=1,n+1
      print*, 'que vaut a', i, '?'
      read*,a(i)
    end do 
    do i=1,n+1
      b(i)=(n+1.0-i)*a(i)*(x**(n-i))
    end do
    do i=1,n+1
      derivpoly=derivpoly+b(i)
    end do
    print*, 'la dérivée vaut', derivpoly
    end program poly
    Lorsque je veux éxecuter le programme, le problème vient à la ligne 14.

    Merci d'avance pour votre aide.
    Je débute dans le domaine.

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2013
    Messages : 388
    Points : 692
    Points
    692
    Par défaut
    Salut,
    Il faut mieux compiler avec l'option -Wall :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    warning: 'x' may be used uninitialized in this function [-Wuninitialized]

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Salut,
    merci pour ta réponse .
    mais comment insérer cette instruction ?
    J'utilise Silverfrost (Plato IDE), et je ne vois pas comment ajouter une option pour l'execution

  4. #4
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Lorsque je veux éxecuter le programme, le problème vient à la ligne 14.
    La raison est évidente: les valeurs de x ne sont pas définies.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Je suis entièrement d'accord mais j'aimerai garder le polynôme en tant que fonction de x pour ensuite l'injecter dans un calcul d'intégrale.
    C'est possible ?

    Ou alors si j'ai envi que le programme affiche "2x" comme dérivée de (x²+3), en gros c'est pas possible ?!

  6. #6
    Membre éclairé Avatar de genteur slayer
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Juin 2002
    Messages : 710
    Points : 825
    Points
    825
    Par défaut
    Attention: tu cherches à faire de la dérivation formelle.
    c'est à dire de garder tes polynômes sous une forme sum_n (a_n x**n) ce que ne sait pas faire un ordinateur qui ne sait manipuler que des nombres.

    Pour faire ce que tu veux il vaut mieux définir un tableau de coefficients (les a_n) tu modifie ce tableau car la dérivée d'un polynôme est un polynôme... et tu as ton polynome dérivée

    tu aura une fonction d'évaluation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function evalpoly(A,N,X)
     real evalpoly,A(:),X
     integer N,I
     evalpoly=0.0
     DO I=1,N
      A(I)*X**(I-1)
     ENDDO
    END
    et la fonction qui dérive:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    subroutine derivpoly(A,N,B)
     real A(:),B(:)
     INTEGER N,I
     B=0.0
     DO I=1,N-1
      B(I)=(I+1)*A(I+1)
     ENDDO
    END
    il n'y a que ceux qui savent qui ne savent pas qu'ils savent...
    Libere-toi hacker, GNU's Not Unix!!!

Discussions similaires

  1. [Turbo Pascal] Calculatrice 2D (avec pile) + calcul de polynômes
    Par Webistory dans le forum Turbo Pascal
    Réponses: 7
    Dernier message: 26/04/2014, 14h36
  2. Algorithme pour le calcul de Polynômes orthogonaux
    Par Ankhotep dans le forum Mathématiques
    Réponses: 2
    Dernier message: 10/03/2014, 11h35
  3. Comment calculer une dérivée
    Par guintolli dans le forum Mathématiques
    Réponses: 6
    Dernier message: 06/02/2006, 20h05
  4. codage du calcul de dérivée d'une fonction mathématique
    Par pispa2005 dans le forum Mathématiques
    Réponses: 5
    Dernier message: 08/01/2005, 20h54

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