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 :

Question concernant les goto


Sujet :

Fortran

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 14
    Points : 15
    Points
    15
    Par défaut Question concernant les goto
    Bonjour,
    j'ai une autre question concernant mon programme :
    quand on a un goto, le programme ne lit-il que la ligne concernée, ou bien tout ce qui suit la ligne.
    Par exemple dans le fragment de programme qui suit,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
           if (s2.gt..005)then
             goto 7999
    avec goto situé plus haut dans la subroutine. Reprend-t-on uniquement 7999 s2=0.0 ou bien on recommence tout ? (j'ai tendance à penser que cela ne concerne que la ligne, mais j'aimerais être sûre)

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    subroutine lapadj (at,gam,za,cp,ch,nt,ce)
          real at(20),gam(20),za(20),cp(20),ch(20),ce(20)
          real s2,d1,d2,d3,db,dt
          integer nt
          nt=6
          do 7998 i=1,19
           ch(i)=0.0
    7998   continue
    7999   s2=0.0
          za(19)=0.0
          do 8002 i=18,2,-1
          d1=at(i+1)-at(i)
          d2=gam(i)*(za(i)-za(i+1))
           if (d1.gt.d2) then
            d3=1.0*(d1-d2)
             db=cp(i)*d3/(cp(i)+cp(i+1))
             dt=cp(i+1)*d3/(cp(i)+cp(i+1))
             at(i)=at(i)+dt
             at(i+1)=at(i+1)-db
             ch(i)=ch(i)+dt
             ch(i+1)=ch(i+1)-db
             s2=s2+d3
             nt=i
            end if
    8002  continue
           if (s2.gt..005)then
             goto 7999
           endif
          do 8005 i=2,18
            if (at(19).lt.(at(18)+.04))then
            ce(i)=ce(i)*.95
          end if
            ce(i)=ce(i)+ch(i)/8.0
          if(ch(i).lt..00001) then
          ce(i)=ce(i)*.99
          end if
    8005    continue
           return
           end
    Merci beaucoup.

  2. #2
    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 !

    Non. Si S2 est plus grand que 0,005, le programme reprend à 7999 S2=0.0 et continue avec za(19)=0.0 et toutes les instructions qui suivent.

    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)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 14
    Points : 15
    Points
    15
    Par défaut
    Décidémment, vous m'êtes d'une aide précieuse ! merci beaucoup !
    Lucie

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

Discussions similaires

  1. question concernant les fichier.bin
    Par argon dans le forum Autres Logiciels
    Réponses: 10
    Dernier message: 27/08/2005, 17h44
  2. Questions concernant les études supérieures et travails
    Par Vivian Pennel dans le forum Etudes
    Réponses: 25
    Dernier message: 21/06/2005, 15h23
  3. Réponses: 11
    Dernier message: 21/06/2005, 10h16
  4. [Débutant] Deux questions concernants les vues
    Par 13obscur dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 19/04/2005, 14h29
  5. Réponses: 7
    Dernier message: 10/09/2004, 14h28

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