Faute inaperçue

Résolu
TSI3ISSAT Messages postés 46 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 28 mai 2008 - 16 avril 2008 à 23:38
cs_Chatbour Messages postés 764 Date d'inscription jeudi 27 juillet 2006 Statut Membre Dernière intervention 6 septembre 2010 - 17 avril 2008 à 11:53
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

cs_Chatbour Messages postés 764 Date d'inscription jeudi 27 juillet 2006 Statut Membre Dernière intervention 6 septembre 2010 19
17 avril 2008 à 11:53
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..
3
Rejoignez-nous