Faute inaperçue

Résolu
Signaler
Messages postés
46
Date d'inscription
mercredi 26 mars 2008
Statut
Membre
Dernière intervention
28 mai 2008
-
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
-
ce programme n'affiche que 1
pour quoi?

 int fact(int n){
  int i,P=1;
  for(i=n;i>0;i--)
  P=P*i;
  return P;
  }
  double pow(double x, int n)
   { int i;
    double P=1;
   for (i=0;i<n;i++)
   P=P*x;
   return P;
   }

if (i2.isSelected()){
      double P1 = Double.parseDouble(P.getText());
      double A1 = Double.parseDouble(A.getText());
      int N1=0;
      double P,Q;
      do{
      double S=1.0;
      N1++;
      for(i=1;i<=N1;i++)
        {S=S+pow(A1,i)/(double) fact(i);}
      Q=pow(A1,N1)/(double)fact(N1);
      P=Q/S;
      }while(P==P1);
      N.setText(" "+N1);
    }

1 réponse

Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
18
Salut,

C'est normal puisque la condition de la boucle while n'est jamais vérifiée -> ce qui fait une seule itération..

mets des System.out.println() dans la boucle et tu va voir..