Array: métodos unshift y shift


Así como el método push inserta un elemento al final del vector el método unshift inserta un elemento al principio el vector y desplaza el resto una posición.

El método shift extrae el primer elemento del vector y desplaza hacia delante el resto de elementos del vector.

Problema

Ingresar valores por teclado. Los valores menores a 100 ingresarlos al principio del vector y los mayores o iguales a 100 ingresarlos al final. Se finaliza la carga de datos al ingresar el cero. Cuando sale del do/while extraer el último valor ingresado que es el cero del vector. Imprimir el vector en la página

<html>
<head>
</head>
<body>

<script type="text/javascript">

  var vec=[];
  var f;
  var valor;
  do {
    valor=prompt('Ingresar un valor (0 para finalizar):','');
    valor=parseInt(valor);
    if (valor<100)
    {
      vec.unshift(valor);
    }
    else
    {
      vec.push(valor);
    }
  } while (valor!=0);
  vec.shift();
  for(f=0;f<vec.length;f++)
  {
    document.write(vec[f]+'<br>');
  }

</script>

</body>
</html>

Si el valor es menor a 100 procedemos a llamar al método unshift que lo inserta al principio del vector en caso contrario se inserta al final mediante el método push:

    if (valor<100)
    {
      vec.unshift(valor);
    }
    else
    {
      vec.push(valor);
    }

Fuera del do/while procedemos a extraer el primer elemento del vector que es el cero:

  vec.shift();

Finalmente procedemos a imprimir en forma completa el vector:

  for(f=0;f<vec.length;f++)
  {
    document.write(vec[f]+'<br>');
  }

Retornar