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 :

[Fortran 90] Comment gérer les erreurs Run Time ?


Sujet :

Fortran

  1. #1
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 78
    Points : 61
    Points
    61
    Par défaut [Fortran 90] Comment gérer les erreurs Run Time ?
    Bonjour,

    j'ai un programme fortran90 quand je l'éxécute avec parfois de movaises données, le programme se bloque et me montre un message, Run Time Error avec un nombre de l'erreur et autre choses.

    je voudrais quand il se bloque à cause de n'mporte quelle erreur afficher un message personel à moi aulieu du message "Run time Error..."

    comment faire ?

    merci.
    MATLAB 7.6 (R2008a) & Windows XP SP2

  2. #2
    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
    si c'est juste des mauvaise données, et bien tu fais un test à la lecture de tes données et tu vérifie qu'elles sont bonne...

    regarde du coté de la fonction INQUIRE
    il n'y a que ceux qui savent qui ne savent pas qu'ils savent...
    Libere-toi hacker, GNU's Not Unix!!!

  3. #3
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 78
    Points : 61
    Points
    61
    Par défaut
    ce que je veux faire c'est remplacer le message génerer par le programme quand il y'a une erreur à l'éxecution par un message à moi, je pense utiliser les "Branch Specifiers" mais je sais pas comment.
    MATLAB 7.6 (R2008a) & Windows XP SP2

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Je pense qu'il faudrait surtout que tu débugges ton programme

  5. #5
    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
    et bien faut utiliser un debugger mais tu perd toute la vitesse d'éxecution qui est le charme du fortran...

    cela dit si ce n'est que de mauvaise données il vaut mieux faire une fonction de test de validité des données

    les erreur d'éxécution sont vraiment à banir, si tu en as c que ton code n'est pas bon....
    il n'y a que ceux qui savent qui ne savent pas qu'ils savent...
    Libere-toi hacker, GNU's Not Unix!!!

  6. #6
    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
    En regroupant les réponses précédentes :

    Fortran ne permet pas directement, contrairement à d'autres langages, d'intercepter des messages d'erreurs (try ... catch ...). Tu devras donc tout programmer, et la stratégie sera différente pour chaque catégorie d'erreur.

    Tu devras d'abord utiliser un algorithme fiable et robuste (précision, convergence, ...)

    Pour les traitements de fichier, tu devras utiliser les options ioStat dans les open / read / write.

    Tu devras valider toutes les données entrées (il est plus instructif de se faire dire que le données XYZ est invalide que de se faire dire LOG: domain error ...)

    Tu dois tester les résultats intermédiares (Sont-ils d'un ordre de grandeur acceptable?)

    Pour les calculs, si ton compilateur le supporte, tu peux utiliser les services IEEE exception de Fortran 2003.

    Finalement: la tâche est souvent plus compliquée qu'elle en a l'air. Bien que les messages automatiques soient difficiles à lire pour un non initiés, il est souvent difficile d'offrir autant d'information par programmation.

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/05/2013, 01h29
  2. Comment gérer les erreurs de la compilation sous linux ?
    Par petitclem dans le forum Autres éditeurs
    Réponses: 15
    Dernier message: 01/08/2008, 15h53
  3. [bash][ftp] comment gérer les erreurs
    Par Merfolk dans le forum Linux
    Réponses: 2
    Dernier message: 31/07/2008, 09h17
  4. [Débutant]Comment gérer les erreurs simplement ?
    Par nahouto dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2006, 21h55

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