Exemplo n.º 1
0
 public Apfloat find(Apfloat a, Apfloat b, Apfloat accuracy) {
   accuracy = accuracy.divide(new Apfloat(100));
   Apfloat l2 = new Apfloat(2, Apfloat.INFINITE);
   Apfloat c = new Apfloat(Apfloat.INFINITE);
   int x = 0;
   while (b.subtract(a).compareTo(accuracy) >= 0) {
     x++;
     c = a.add(b).divide(l2);
     // nie uwzględniamy zera!
     // System.out.print(Function1.f(a));
     // System.out.println(Function1.f(c));
     if (Function1.f(a).signum() != Function1.f(c).signum()) {
       b = c;
     } else {
       a = c;
     }
   }
   System.out.println("Ilość kroków w metodzie połowienia wyniosła " + x);
   return c;
 }