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

Algorithmes et structures de données Discussion :

calcul de la valeur de pi à l'aide d'un algorithme


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Par défaut calcul de la valeur de pi à l'aide d'un algorithme
    l'exo est le suivant:
    ecrire un algorithmequi calcule et affiche la valeur de pi à l'aide de la serie
    pi/4=1-1/3+1/5-1/7...........
    mon essai est le suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    algorithme:serie
    variables:s,n,a,i,s':entiers
    debut:
    s=0
    k=1
      pour i allant de 1 à n faire 
        k=k*(-1)
        s=s+k/(a+2)
      finpour 
     s'=s*4
     ecrire(s')
    fin
    donc comme d'habitude j'attend vos corrections et commentaires pour que je puisse voir mes faiblaisses et meme mes points forts
    merci d'avance a tous ceux qui m 'aident à m'ameliorer !

  2. #2
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Par défaut
    En fait, si tu veux utiliser cette série (basée sur arctan), je te conseille d'utiliser non pas directement arctan(1) mais : 4arctan(1/5) -arctan(1/239)

    Le développement limité converge plus vite

  3. #3
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    si tu deroules ton algo, tu vas calculer:

    s = 0 - 1/3 + 1/4 - 1/5 + 1/7 ...

    au lieu de

    s = 1 - 1/3 + 1/5 - 1/7 + 1/9 ...

    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Par défaut
    Salut,

    Moi, je ferais k = -k plutôt que k = k * (-1), cela me semble plus rapide de faire un changement de signe plutôt que de faire une multiplication.

    Ensuite, il faut initialiser s à 1 et non 0 sinon, comme le dit s-ehtp, tu n'aurais pas la bonne suite.

    enfin, tu n'es pas obligé d'utiliser s' à la fin et tu peux écrire directement s = s * 4

    Voila

    Xavier

  5. #5
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Par défaut
    merci pour vos corrections.mais j'ai une question,pour faire le calcul de pi/4 j'ai utiliser i allant de 1 à n,j ai donc supposé que pi/4 est fini.mais en fait,elle ne l'est pas!que dois-je donc faire?pi/4=1-1/3+1/5-1/7...................

  6. #6
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par s-ehtp Voir le message
    merci pour vos corrections.mais j'ai une question,pour faire le calcul de pi/4 j'ai utiliser i allant de 1 à n,j ai donc supposé que pi/4 est fini.mais en fait,elle ne l'est pas!que dois-je donc faire?pi/4=1-1/3+1/5-1/7...................
    Arreter ta boucle lorsque tu as atteint une précision suffisante. Par exemple quand ton nouveau terme "1/a" est inferieur a ta précision. Ou lorsque "s" ne varie plus beaucoup entre 2 tours de boucle. A toi de voir...
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  7. #7
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Par défaut
    je vais donc proceder par une boucle repeter.
    repeter instructions
    i=i+1
    jusqu'a 1/(a+2) inferieur à epsilon
    en fait si je procede par la boucle pour,je sais pas comment faire entrer cette condition?

  8. #8
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 832
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 832
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    Arreter ta boucle lorsque tu as atteint une précision suffisante. Par exemple quand ton nouveau terme "1/a" est inferieur a ta précision. Ou lorsque "s" ne varie plus beaucoup entre 2 tours de boucle. A toi de voir...
    Ou par exemple quand la "n" ième valeur calculée est identique à la précédente => cela signifie que ton calcul a atteint la précision maximale possible de ton processeur (c'est mon prof de C qui m'avait expliqué ça lors d'un exo sur un calcul de limite)...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

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

Discussions similaires

  1. [V5] Aide sur l'erreur #calcul ou aucune valeur retournée.
    Par littlegekko dans le forum Deski
    Réponses: 2
    Dernier message: 08/09/2011, 15h55
  2. Calcul rapide des valeurs propres d'une matrice creuse
    Par gsagnol dans le forum Mathématiques
    Réponses: 3
    Dernier message: 21/12/2007, 23h37
  3. [XSLT] calcul d'une valeur absolue
    Par FlyByck dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 15/01/2007, 14h01
  4. [VB2005]Calcul de deux valeurs de TextBox
    Par Jiyuu dans le forum Windows Forms
    Réponses: 5
    Dernier message: 07/01/2007, 22h55
  5. Faire du calcul avec la valeur d'un élément/attribut
    Par camboui dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 03/11/2005, 16h10

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