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 :

erreur de compilation : (unit=6, file='stdout')


Sujet :

Fortran

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut erreur de compilation : (unit=6, file='stdout')
    Bonjour,

    Pour faire court je met le code et l'erreur que le compilateur m'affiche.
    Merci d'avance pour votre aide !!


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    do i=2,n-1
    	som=som+points_fonc(i)
    end DO
     
    resultat_t=h*(points_fonc(1)+2*som+points_fonc(n)) !! Formule d'approximation de l'intégrale de la fonction définie par les points entrées sur l'intervalle [a,b] par la méthode des trapèzes
     
     
    Write(*,*)									
    Write (*,"(' L''estimation de l''integrale sur l''intervalle [a,b] vaut :   ')")resultat_t
     
    END subroutine resultat_trap
    ERREUR :

    At line 71 of file Méthode_trapeze.f90 (unit = 6, file = 'stdout')
    Fortran runtime error: Insufficient data descriptors in format after reversion



    Dernière précision : Le programme compile mais quand je demande d'afficher resultat_t il arrête le programme et affiche cette erreur.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 152
    Points : 191
    Points
    191
    Par défaut
    Write (*,"(' L''estimation de l''integrale sur l''intervalle [a,b] vaut : ')")resultat_t
    Si je ne m'abuse, tu es entrain de lui preciser un format: (' L''estimation de l''integrale sur l''intervalle [a,b] vaut : ') ce qui n'existe pas.

    Essayes avec:

    Write (*,*)' L''estimation de l''integrale sur l''intervalle [a,b] vaut : ',resultat_t
    En effet, le second nombre de la fonction WRITE est normalement reserve au format d'affichage l'* correspondant au format par defaut de ta variable.

    Pour plus d'informations sur les formats:

    http://www.developpez.net/forums/d10...t-sous-ubuntu/

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Août 2006
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 974
    Points : 1 346
    Points
    1 346
    Par défaut
    Citation Envoyé par usag1e Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    do i=2,n-1
    	som=som+points_fonc(i)
    end DO
     
    resultat_t=h*(points_fonc(1)+2*som+points_fonc(n)) !! Formule d'approximation de l'intégrale de la fonction définie par les points entrées sur l'intervalle [a,b] par la méthode des trapèzes
     
     
    Write(*,*)									
    Write (*,"(' L''estimation de l''integrale sur l''intervalle [a,b] vaut :   ')")resultat_t
     
    END subroutine resultat_trap
    ERREUR :

    At line 71 of file Méthode_trapeze.f90 (unit = 6, file = 'stdout')
    Fortran runtime error: Insufficient data descriptors in format after reversion
    Contrairement à ce que dit Marlan, le problème est que le format ne prévoit pas masque pour la variable resultat_trap. Ton format ne prévoit que l'impression du texte qu'il contient. Tu dois utiliser la stratégie de Marlan avec le format libre pour imprimer une chaine de caractères et une variable numérique, ou ajouter un masque pour resultat_trap dans le format, comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Write (*,"(' L''estimation de l''integrale sur l''intervalle [a,b] vaut : ',f0.4)")resultat_t
    Dans une situation comme celle-ci, la méthode du format libre (*) est la plus intéresssante.

Discussions similaires

  1. Erreur de Compilation : file not recognized File truncated
    Par doommick31 dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 29/09/2009, 14h00
  2. Réponses: 3
    Dernier message: 11/08/2009, 19h41
  3. Réponses: 1
    Dernier message: 23/01/2008, 15h35
  4. Erreur après compilation : cannot execute binary file
    Par Djo00 dans le forum Administration système
    Réponses: 8
    Dernier message: 21/07/2006, 16h26
  5. Réponses: 1
    Dernier message: 04/10/2005, 20h01

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