Son novato en el mundillo de php y necesito de vuestra ayuda para solucionar una duda/problema que tengo
Les copipasteo el fragmento de código que tengo y les explico por partes este.
Código PHP:
$i0 = ($vg/$r);
$vd0 = $ktentreq * (exponencial ($i0/$is) + 1);
$errorpermitido = abs($precision * $vd1);
$contador = 0;
$vd1 = 0;
while ( abs($vd0 - $vd1) <= $errorpermitido) {
$vd1 = $vd0;
$i1 = ($vg-$vd0)/ $r;
$vd1 = $ktentreq * (exponencial ($i1/$is) + 1);
$contador++;
}
La funcion llamada exponencial calcula la constante de euler elevada a lo que se le introduzca (también funciona correctamente).
La parte que no consigo que me funcione es la del bucle. Este bucle ha de calcular $vd1 y $i1. Si el valor absoluto del valor final ($vd1) menos el valor inicial ($vd0) no son menores que $errorpermitido ha de repetir todo el bucle actualizando los valores de $vd0 y $i1 y sumando 1 al contador; es decir: el valor de $vd1 será igual que el de $vd0 y repetirá el ciclo hasta cumplir la condición.
El problema está en ese bucle, seguro que es un error garrafal el que he cometido pero no sé verlo.
¿Pueden ayudarme, por favor?
Muchas gracias de antemano