Foros del Web » Programando para Internet » PHP »

[DUDA] condicion IF (+-)

Estas en el tema de [DUDA] condicion IF (+-) en el foro de PHP en Foros del Web. Hola chicos, queria saber si alguien conocen una manera de simplificar dentro de la condicion IF el nivel de tolerancia. O si hay una formula ...
  #1 (permalink)  
Antiguo 06/05/2012, 08:52
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
[DUDA] condicion IF (+-)

Hola chicos,
queria saber si alguien conocen una manera de simplificar dentro de la condicion IF el nivel de tolerancia. O si hay una formula que no recuerde.

Estoy buscando esto $variable +- 0.03 y por ahora la condicion es la siguiente:

Código PHP:
<?php
$variable 
100;
$tolerancia =  0.03;
$max = ($variable $tolerancia);
$min = ($variable $tolerancia);
$variable2 100.02;
 if(  
$max >= $variable2 AND $min <= $variable2 ){
   echo  
"Dentro del rango tolerable<hr>";
 }
// Resultado -----!> Dentro del rango tolerable.
?>
Espero sus comentarios!
__________________
Mono programando!
twitter.com/eguimariano
  #2 (permalink)  
Antiguo 06/05/2012, 09:10
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: [DUDA] condicion IF (+-)

simpificar?
Código PHP:
Ver original
  1. $variable = 100;
  2. $tolerancia =  0.03;
  3. $variable2=100.02;
  4. if($variable+$tolerancia >=$variable2 && $variable-$tolerancia<=$variable2)

o preguntas por una funcion que lo haga?
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #3 (permalink)  
Antiguo 06/05/2012, 09:13
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: [DUDA] condicion IF (+-)

si esta pefecto, tambien podrias crear una función en base de esto
Código PHP:
Ver original
  1. <?php
  2. function tolerancia($variable,$tolerancia,$variable2){
  3. $max = ($variable + $tolerancia);
  4. $min = ($variable - $tolerancia);
  5.  if(  $max >= $variable2 AND $min <= $variable2 ){
  6.    return true;
  7.  }else return false;
  8.  }
  9. if (tolerancia(100,0.03,100.03)) echo "100.03 es tolerable";
  10. else echo "100.03 no es tolerable";
  11. ?>

saludos
  #4 (permalink)  
Antiguo 06/05/2012, 09:20
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: [DUDA] condicion IF (+-)

para solo llamar la funcion se podria realizar de la sigueinte manera:
Código PHP:
Ver original
  1. <?php
  2. function tolerancia($variable,$tolerancia,$variable2)
  3.     {
  4.     if($variable + $tolerancia >= $variable2 AND $variable - $tolerancia <= $variable2 )
  5.         {echo $variable2." es tolerable";}
  6.     else
  7.         {echo $variable2." NO es tolerable";}
  8.     }
  9. ?>
asi solonecesitas los paramentros para llamar y no hacer la condicion cada vez que la utilices

Cita:
<?php
tolerancia(100,0.03,100.04);
?>
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #5 (permalink)  
Antiguo 06/05/2012, 09:42
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: [DUDA] condicion IF (+-)

Gracias chicos,
se me ocurrio que se me olvido una formua matematica, pero veo que no, en ese caso creare la funcion que devuelva true/false para que la condicion IF no sea tan grande.
__________________
Mono programando!
twitter.com/eguimariano
  #6 (permalink)  
Antiguo 06/05/2012, 10:00
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: [DUDA] condicion IF (+-)

Puedes simplificar el codigo con algo como esto




Código PHP:
Ver original
  1. ini_set ('error_reporting', E_ALL);
  2.  
  3. $valor   = 100;
  4. $tole    = 0.03;
  5. $comp    = 100.02;
  6.  
  7. if ( (($valor+=$tole) > $comp) && (($valor-=$tole) < $comp) ){
  8.  echo  "Dentro del rango tolerable<hr><br>";
  9. }

Saludos.

Etiquetas: variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:54.