Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
6129 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [résolu]approximation... (débutant)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[résolu]approximation... (débutant)

n°538765
Psykolio
Posté le 13-10-2003 à 22:24:31  profilanswer
 

voilà, j'ai un exo à faire en programmation sur l'approoximation du nombre pi... je vous passe l'énoncé, c'est plus simple
 
http://www.ulb.ac.be/di/ssd/madewu [...] et2_03.pdf
 
j'ai fait 36000 versions du prog, pas moyen d'arriver à un 3.14**
 
au lieu de ça, j'ai systématiquement un 3.26**
 
j'ai essayé en remplaçant mon for par un while, en essayant de ne pas calculer le nombre n en premier lieu, rien à faire, j'y arrive pas... ce qui est chiant c'est que quand je relis mon code, ça me parait logique :D ....
 
le voilà, ce code
 

Code :
  1. //Projet n°2
  2. #include <iostream>
  3. using namespace std;
  4. int main()
  5. {
  6.     int n;
  7.     //n= le n° de rangée de la fraction
  8.     double div;
  9.     //div= le résultat de chaque fraction
  10.     cin >> n;
  11.     //on demande n
  12.     div = ((2*n-3)*(2*n-3))/(2+(2*n+1));
  13.     //on effectue la 1ère division de rangée n
  14.     n--;
  15.     //on passe à la division de la rangée précédente
  16.     for (;2<=n;n--)
  17.         {
  18.         div=((2*n-3)*(2*n-3))/(2+(div+1));
  19.         }
  20.     cout << (1/(1+div))*4;
  21.     //on termine par la division de rangée 1 et on multiplie par 4
  22.     cin >> div;
  23. }


 
alors là, j'ai énormément besoin d'aide, si vous voyez ce qui cloche, dites le!!!!


Message édité par Psykolio le 13-10-2003 à 23:30:22

---------------
-----------------------------------
mood
Publicité
Posté le 13-10-2003 à 22:24:31  profilanswer
 

n°538775
Taz
bisounours-codeur
Posté le 13-10-2003 à 22:32:15  profilanswer
 

t'es sur de ton opération entière pour la première valeur de div ?
 

Code :
  1. #include <iostream> 
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.   unsigned n;
  8.   cin >> n;
  9.   double div = ((2.*n-3.)*(2.*n-3.))/(2.+(2.*n+1.));
  10.   for(--n; 2<=n; --n)
  11.     {
  12.       div=((2.*n-3.)*(2.*n-3.))/(2.+(div+1.));
  13.     }
  14.   cout << (1./(1.+div))*4. << endl;
  15. }


 
problème d'algo donc

n°538822
Psykolio
Posté le 13-10-2003 à 23:28:34  profilanswer
 

euh le prob c'était que je rajoutais +1 dans la boucle à chaque coup... alors que je devais plus le faire hihi... merci pour l'aide, je vais tester ton code... mais de ttes façons, le prob est résolu youpiiiiiiiiiiiii


---------------
-----------------------------------

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [résolu]approximation... (débutant)

 

Sujets relatifs
[VB] "Erreur 2004" ? [RESOLU][C++][Résolu]Recupérer la taille d'un fichier de plus de 4 Go
Petit prob de débutantAfficher une info bulle sur un lien [resolu]
[c++] vector sort (Résolu)debutant [Borland c++ buider] Comment recuper la valeur d'un Edit ?
ORACLE PL/SQL Déclaration de tigger [RESOLU][TOMCAT] Déclencher l'appel de la méthod init d'une servlet. [RESOLU]
Faire 1 recherche sur 1 frame dans 1 autre frame [Résolu, code déposé]prob avec firebird [résolu]
Plus de sujets relatifs à : [résolu]approximation... (débutant)


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)