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 :

usage de la condition if


Sujet :

Fortran

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 24
    Points : 36
    Points
    36
    Par défaut usage de la condition if
    Bonjour
    lorsque j'écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    while (k.le.max)
    k=k+1
    if (i.LE.n) then
    i=i+1
    end if
    call streaming
    call collision
    .
    .
    est-ce que pour chaque valeur de i (pour une valeur de k) les instructions call sont fait ? Ou pour une valeur de k les instructions call ne sont fait que lorsque i=n ?
    merci bien

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2013
    Messages : 35
    Points : 65
    Points
    65
    Par défaut
    Bonjour,

    Dans la version du code que vous proposez, les subroutines streaming et collision sont appelées quelque soit la valeur de i, pour une valeur de k fixée.

    Si vous souhaitez faire appel à ces subroutines uniquement lors i = n vous pouvez utiliser la version modifiée ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    ...
    do while (k.le.max)
      k=k+1
      if (i < n) then
        i = i+1
      else if (i == n) then
        i = i+1
        call streaming
        call collision
      end if
     ...
    end do
    ...

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 48
    Points : 34
    Points
    34
    Par défaut
    La réponse peut s'obtenir par soi-même en rajoutant un

    print*,i,k

    dans le code à l'endroit où l'on veut tester le passage.

    Ou tout autre simple essai te permettrait de voir si le résultat est conforme à tes attentes ou pas...

    D'une façon plus générale, pour des questions aussi simplement vérifiables par soi-même, je ne suis pas sûr que la solution passe par poser le problème sur un forum et attendre une durée indéterminée dans l'espoir d'une réponse.

    Rends-toi compte : tu as passé plus de temps à écrire le problème ici que ne t'aurait pris ce simple test. Moi-même et l'auteur précédent ont passé plus de temps à lire la question que ne t'aurait pris ce simple test. Y répondre aura aussi pris plus de temps...

    Je pense qu'il est plus judicieux (et bénéfique, et formateur) pour toi de chercher à tester par toi-même plutôt que de te tourner vers le forum à la moindre question.

Discussions similaires

  1. Usage de conditions if
    Par saida29 dans le forum Fortran
    Réponses: 2
    Dernier message: 17/02/2015, 09h03
  2. Condition et contenu TImage
    Par Detlev_linux dans le forum Langage
    Réponses: 6
    Dernier message: 23/12/2003, 01h00
  3. boucle avec condition d'arret changeante
    Par NicoH dans le forum Langage
    Réponses: 3
    Dernier message: 10/06/2003, 11h48

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