Autor Tema: ayuda ec.2 grado  (Leído 838 veces)

Desconectado albrandariz

  • PHPer@ Fijo
  • ***
  • Mensajes: 180
  • Karma: 2
  • Sexo: Masculino
    • Ver Perfil
    • Gritos De Mimo
ayuda ec.2 grado
« en: 19 de Septiembre de 2007, 15:26:57 pm »
buenas, estoy haciendo un script para resolver una ecuacion de 2º grado y presentarla pero el problema es q no si si por alguna burrada q abre puesto no me deja ya q me da elsiguiente error:

Warning: Division by zero in /home/virtual/sitio152938/www/2g/solucion.php on line 21

Warning: Division by zero in /home/virtual/sitio152938/www/2g/solucion.php on line 24


haber si me pueden ayudar y decir q habre exo mal q como os e dixo creo q es por alguna burrada o algo xd

este es el archivo solucion.php

<?
    
// declaramos las variables que contendran los numeros de la ecuacion.
$n1 $_post[&#39;n1&#39;];
$n2 $_post[&#39;n2&#39;];
$n3 $_post[&#39;n3&#39;];

    // si no existen las variables da error.
if (!$_post){
	
echo
"No as rellenado el formulario o te as dejado algún campo en Blanco.";
    
// si no resolvemos la ecuacion.
}else{

$nominador_positivo = -$n2+(Sqrt(($n2 $n2)-$n1 $n3)); // declaramos el numerador de la formula: -b +  raiz cuadrada de b al cuadrado menos 4ac.
$denominador $n1// declaramos el denominador de la formula: 2a.

$solucion1 $nominador_positivo $denominador// hacemos la division entre numerador1 y  el denominador.

$nominador_negativo = -$n2+(Sqrt(($n2 $n2)-$n1 $n3)); // declaramos el numerador de la formula: -b -  raiz. cuadrada de b al cuadrado menos 4ac
$solucion2 $nominador_negativo $denominador// hacemos la division entre el numerador2 y el denominador que no cambia.

    // si la raiz cuadrada es menor que 0 (al no existir dicha solucion), expresamos que no tiene solución.
if (sqrt() < 0){
echo
"Esta ecuación no tiene solución real.";
    
// si no es menor que 0 la solucion expresamos las 2 soluciones.
}else{  
echo
"La primera solucion es X = $solucion1";
echo
"La segunda solucion es X = $solucion2";
}
}
//fin del codigo.
?>


las variables son enviadas mediante el index q es solo un formulario
si quieren ver el script subido aunque con el error o errores esta aki : http://regalvaro.gratishost.com/2g/index.php

por cierto como no sabia si se puede verificar la raiz cuadrada probe con "if (sqrt() < 0){"
pero creo q esta mal y de eso si soy consciente xd
gracias y haber si me pueden ayudar
« Última modificación: 19 de Septiembre de 2007, 18:12:47 pm por mOrK »

Comunidad PHPeros

ayuda ec.2 grado
« en: 19 de Septiembre de 2007, 15:26:57 pm »

Desconectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: ayuda ec.2 grado
« Respuesta #1 en: 19 de Septiembre de 2007, 17:47:13 pm »
Bueno de primeras te digo que esta mal la teoria que has puesto:


Además no lo has aplicado ni siquiera como tu has dicho.
//AMBAS SON IGUALES
$nominador_positivo = -$n2+(Sqrt(($n2 $n2)-$n1 $n3)); // declaramos el numerador de la formula: -b +  raiz cuadrada 
$nominador_negativo = -$n2+(Sqrt(($n2 $n2)-$n1 $n3)); // declaramos el numerador de la formula: -b -  raiz. cuadrada 


La ecuacion correcta es...

Menos b, mas menos, raiz cuadrada de b al cuadrado menos 4ac, dividido entre 2a.
Aplica la formula correctamente.
« Última modificación: 19 de Septiembre de 2007, 18:20:27 pm por naveda »
Por favor, leete las Normas


Desconectado albrandariz

  • PHPer@ Fijo
  • ***
  • Mensajes: 180
  • Karma: 2
  • Sexo: Masculino
    • Ver Perfil
    • Gritos De Mimo
Re: ayuda ec.2 grado
« Respuesta #2 en: 19 de Septiembre de 2007, 19:02:36 pm »
ok, la imagen la debi de haber revisado dos veces antes de colgarla xd lo siento, de todas maneras el codigo cambiando el + de $nominador_negativo por el menos me sigue dando el error de no se puede dividir por 0 no se por q...

Desconectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: ayuda ec.2 grado
« Respuesta #3 en: 19 de Septiembre de 2007, 19:07:37 pm »
Pero porque no estas elevando al cuadrado la b... Te lo estoy diciendo jaja.
Para elevar se usa n^e Donde n es un numero cualquiera y e la potencia a la que se encuentra elevado.
Por favor, leete las Normas


Desconectado albrandariz

  • PHPer@ Fijo
  • ***
  • Mensajes: 180
  • Karma: 2
  • Sexo: Masculino
    • Ver Perfil
    • Gritos De Mimo
Re: ayuda ec.2 grado
« Respuesta #4 en: 19 de Septiembre de 2007, 19:24:24 pm »
ok eso ya lo arregle. no se si soy yo q no me pispo de las cosas o k xd pero me sigue dando el mismo fallo.

Código: [Seleccionar]
<?
    // declaramos las variables que contendran los numeros de la ecuacion.
$n1 = $_post['n1'];
$n2 = $_post['n2'];
$n3 = $_post['n3'];

    // si no existen las variables da error.
if ($_post = ""){
echo"No as rellenado el formulario o te as dejado algún campo en Blanco.";
    // si no resolvemos la ecuacion.
}else{

$nominador_positivo = -$n2+(Sqrt(($n2^2) -4 * $n1 * $n3)); // declaramos el numerador de la formula: -b +  raiz cuadrada de b al cuadrado menos 4ac.
$denominador = 2 * $n1; // declaramos el denominador de la formula: 2a.

$solucion1 = $nominador_positivo/$denominador; // hacemos la division entre numerador1 y  el denominador.

$nominador_negativo = -$n2-Sqrt(($n2^2) -4 * $n1 * $n3); // declaramos el numerador de la formula: -b -  raiz. cuadrada de b al cuadrado menos 4ac
$solucion2 = $nominador_negativo / $denominador; // hacemos la division entre el numerador2 y el denominador que no cambia.

    // si la raiz cuadrada es menor que 0 (al no existir dicha solucion), expresamos que no tiene solución.
 
echo"La primera solucion es X = $solucion1";
echo"La segunda solucion es X = $solucion2";

}
//fin del codigo.
?>

un saludo y gracias

Desconectado lalitros

  • PHPer@ Fijo
  • ***
  • Mensajes: 162
  • Karma: 3
  • Sexo: Masculino
    • Ver Perfil
Re: ayuda ec.2 grado
« Respuesta #5 en: 20 de Septiembre de 2007, 21:00:37 pm »
Prueba con agregarle una arroba "@" al inicio de tu variable donde tenga la division. Tal vez se quite el WARNING. Saludos

Si me dieran a escojer entre el MUNDO y Tu.. Te escojeria a Ti, porque mi MUNDO ERES TU