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 :

Boucle infinie ou avec contraintes


Sujet :

Fortran

  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    386
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 386
    Par défaut Boucle infinie ou avec contraintes
    Bonjour,
    je demande s il y a des boucle de type DO-ENDDO mais infinis, car j ai a calcule' une somme 1/n^2 et cette somme doit s arreter lorsque son terme soit plus petit que epsilon*1/n^2, je ne veux pas utiliser la boucle do-while
    merci pour votre aide

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    386
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 386
    Par défaut
    J'ai essayé de faire mon programme et je n'ai pas eu d'erreurs, mais je ne suis pas totalement convaincu des résultats, pouvez-vous m'aider et de me dire si c'est correct ou pas ?
    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
    program calcul
    implicit none
    integer n
    real somme
    real, parameter :: epsilon = 10000000
    n=0
     somme=0
     do
       n=n+1
       somme=somme+1/n**2
       if(1/n**2 .LT. epsilon*somme) then
         exit
       end if
      end do
     
      print*,"Nombre d iteration :",n
      print*,"Somme=",somme
    end program Calcul
    PS: le programme est de calculer la somme sur n de 1/n^2 jusqu'à ce que 1/n^2< epsilon*somme
    Merci pour votre aide

  3. #3
    Membre émérite 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
    Par défaut
    en fait c bon ça!

    juste j'aurais omis de mettre le "then" et le "end if"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    do
    ...
    <boucle>
    ...
    if (<condition>) EXIT
    end do
    est une structure tout à fait correcte....

    le gros soucis est de ne pas avoir de boucle infinie.... genre rajouter après le "if (<condition>) EXIT":
    if n>100000 exit

    tu a le droit de mettre plusieur conditions d'arrêts, c'est bien d'en mettre une de sécurité pour éviter de faire tourné le programme en bourrique!!!

Discussions similaires

  1. Boucle infini avec exploitation d'un resultset
    Par mithrendil dans le forum JDBC
    Réponses: 5
    Dernier message: 01/02/2008, 16h21
  2. probleme avec une boucle infinie
    Par hunter99 dans le forum C++
    Réponses: 3
    Dernier message: 26/12/2007, 23h37
  3. problème avec les boucle infinies
    Par manciaux dans le forum C
    Réponses: 3
    Dernier message: 14/05/2007, 12h16
  4. Réponses: 29
    Dernier message: 17/06/2006, 13h04
  5. [JMeter] Problème avec la boucle infinie pour les tests
    Par zegreg dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 05/10/2005, 11h41

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