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 77] Convertir un caractère en réel


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Par défaut [Fortran 77] Convertir un caractère en réel
    salut
    Existe t' il une fonction en fortran77 qui permet de convertir une chaine de character ( '1234.12' par exemple ) en reel (1234.12 )

  2. #2
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    Tu peux utiliser read() en donnant une chaine de caractere comme source des donnees, plutot qu'un specificateur de fichier. Mais c'est une extension au standard Fortran, et ne sera peut etre pas acceptee par ton compilateur (ceci dit, ceux que je connais l'acceptent avec un avertissement).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    character (len=10), parameter :: string = '1234.5'
    real :: value
     
    read(string,*) value

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Par défaut
    Mon compilateur n acepte pas cette extension.
    j ai trouve une autre methode . je convertie la partir entier sous la forme 1234.00
    puis la partie decimale en entier (12) et je divise cette patie decimal par 100 j obtiens 0.12
    et j additionne 1234.00+0.12=1234.12
    code
    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
     
          !STRING = character a convertir en entier 
          character string*50, digits*10
          integer ln,m,k,i,entier
           ln=len_trim(string) ! longueur du character
           digits = '0123456789'
          entier = 0
           m = 1
           do i = ln,1,-1
           k = index(digits,string(i:i)) - 1
           entier = entier + k*m
           m = 10*m
           enddo
     
           write (*,*)entier
           end

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 5
    Par défaut
    L'exemple qui suit est en Fortran77, il fonctionne avec le compilateur ifort :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
             program string2real
     
              real x
              character*7 s
              s = "1234.56"
              read (s,100) x
     100    format (F7.2)
              print *,x
              end

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Par défaut
    fafaro
    c est encore plus simple que ce que je fesais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Convertir un code fortran en VB
    Par Rifano dans le forum Fortran
    Réponses: 2
    Dernier message: 03/08/2014, 00h17
  2. convertir une chaine de caract en code Perl
    Par radahm dans le forum Langage
    Réponses: 3
    Dernier message: 29/04/2009, 21h05
  3. Convertir atn2() en fortran
    Par Phoenix407 dans le forum Requêtes
    Réponses: 0
    Dernier message: 19/05/2008, 11h45
  4. Convertir Matlab en Fortran 90
    Par driss80 dans le forum Fortran
    Réponses: 12
    Dernier message: 30/10/2007, 20h15
  5. Réponses: 4
    Dernier message: 22/12/2006, 15h10

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