Ver Mensaje Individual
  #7 (permalink)  
Antiguo 10/04/2008, 13:01
usermax
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 529
Antigüedad: 17 años, 5 meses
Puntos: 11
Re: ayuda con este script de numeros...

Ok. Ahora entiendo, son intervalos.

Prueba con esto, ten en cuenta que lo programñe aquí sin probarlo, si da algun error me avisas y lo depuramos:

Código PHP:
$sql=mysql_query("select numero from numero",$link); 
 
$maximo 0;
while(
$numero=mysql_fetch_assoc($sql)){ 
$ArrayNum[$numero['numero']] = $numero['numero'];
if (
$numero['numero'] > $maximo)
$maximo $numero['numero'];
}
$ContarIntervalos 1;

for (
$i=1;$i<=$maximo;$i++) {
if (
$ArrayNum[$i])
{
 
 if (isset(
$BanderaExistencia))
 {
  if (
$BanderaExistencia == false)
  {
  
$ArrayIntervalos[$ContarIntervalos]['fin'] = $i-1;
  
$ContarIntervalos++;
  
$BanderaExistencia true;
  
$ArrayIntervalos[$ContarIntervalos]['inicio'] = $i;
  }
 }
 else 
 {
 
$BanderaExistencia true;
 
$ArrayIntervalos[$ContarIntervalos]['inicio'] = $i;
 }
 if (!isset(
$inicio))
 
$inicio "N";
}
else
{
 if (isset(
$BanderaExistencia))
 {
  if (
$BanderaExistencia == true)
  {
  
$ArrayIntervalos[$ContarIntervalos]['fin'] = $i-1;
  
$ContarIntervalos++;
  
$BanderaExistencia false;
  
$ArrayIntervalos[$ContarIntervalos]['inicio'] = $i;
  }
 }
 else
 {
 
$BanderaExistencia false;
 
$ArrayIntervalos[$ContarIntervalos]['inicio'] = $i;
 }
 if (!isset(
$inicio))
 
$inicio "S";
}
 
}

foreach (
$ArrayIntervalos As $valor)
{
$L = ($inicio == "S") ? "N" "S";
echo 
"Número Inicial: ".$valor['inicio']." ------ Número Final: ".$valor['fin']." ------ Total de Números: ".(($valor['fin']-$valor['inicio'])+1)." ---- Existe: ".$L."<br>";

Me cuentas...