Estas en: gratiszona > apuntes > javascript

bucles For en javascript

for (contador = valor inicial; condicion; expresion de incremento)

{

...;

...;

...;

}

Ejemplo:

for (i=1;i<=10;i++)

{

sentencia1;

sentencia2;

sentencia3;

}

En palabras significa:

"Desde i=1, hasta i=10 de 1 en 1, repite las sentencias 1, 2 y 3"

Es decir: Repite 10 veces las sentencias 1, 2 y 3

Observa que el contador o indice del "for" (en nuestro caso la "i"), es una variable que no es necesario declararla, ya que la expresion "i=1" la declara e inicializa.

Programa que repite un texto cualquiera en numero de veces que queramos, utilizando un "for"

  • Escribe el siguiente programa:

<HTML>

<SCRIPT LANGUAGE='JavaScript'>

// PROG019.HTM

var texto;

var num;

var salida='';

texto=prompt('Escribe un texto','');

num=prompt('Cuantas veces quieres que lo repita','');

num=parseInt(num,10);

for(i=1;i<=num;i++)

{

salida=salida+texto+'\n';

}

alert(salida);

</SCRIPT>

</HTML>

  • Graba el fichero en TuCarpeta, con el nombre Prog019.htm y ejecutalo unas cuantas veces.

Programa que calcula todos los multiplos de 11 menores de 3000 y por ultimo nos da la suma de todos ellos.

  • Escribe el siguiente programa:

<HTML>

<SCRIPT LANGUAGE='JavaScript'>

// PROG020.HTM

var salida='';

var sum=0;

for(multi=11;multi<3000;multi=multi+11)

{

salida=salida+multi+' ';

sum=sum+multi;

}

alert(salida+'\nLa Suma de todos ellos es= '+sum);

</SCRIPT>

</HTML>

  • Grabalo en TuCarpeta, con el nombre Prog020.htm y ejecutalo.

Programa que calcula el factorial de un numero

Recuerda que el factorial del numero "x" es: 1*2*3*4*5*...*x

  • Escribe el siguiente programa:

<HTML>

<SCRIPT LANGUAGE='JavaScript'>

// PROG021.HTM

var salida='';

var fact=1;

var num;

num=prompt('Calculo del factorial del numero ','');

num=parseInt(num,10);

for(i=1;i<=num;i++) fact=fact*i;

alert('El factorial de '+num+' es '+fact);

</SCRIPT>

</HTML>

  • Grabalo en TuCarpeta con el nombre Prog021.htm y ejecutalo varias veces.

Observa que nuestro "for" no necesita llaves, porque contiene una unica sentencia.

Programa que calcula los 10 primeros multiplos del numero que queramos, por ultimo nos da la suma de todos ellos.

  • Escribe el siguiente programa:

<HTML>

<SCRIPT LANGUAGE='JavaScript'>

// PROG022.HTM

var salida='';

var num;

var mult;

var sum=0;

num=prompt('¿Multiplos de que numero?','');

num=parseInt(num,10);

for(i=1;i<=10;i++)

{

mult=num*i;

salida=salida+mult+' ';

sum=sum+mult;

}

alert(salida+'\nSuma= '+sum);

</SCRIPT>

</HTML>

  • Grabalo con el nombre Prog022.htm en TuCarpeta y ejecutalo varias veces.

Tabla de valores de la funcion y=x2-5x+10

  • Escribe el siguiente programa:

<HTML>

<SCRIPT LANGUAGE='JavaScript'>

// PROG023.HTM

var x1,x2,paso;

var salida='';

var y;

x1=prompt('Escribe el menor valor de x','');

x1=parseFloat(x1);

x2=prompt('Escribe el mayor valor de x','');

x2=parseFloat(x2);

paso=prompt('Escribe el incremento de x:','');

paso=parseFloat(paso);

for(i=x1;i<=x2;i=i+paso)

{

y=i*i-5*i+10;

salida=salida+i+' '+y+'\n';

}

alert(salida);

</SCRIPT>

</HTML>

  • Graba el fichero en TuCarpeta con el nombre Prog023.htm y ejecutalo varias veces.
  • Al ejecutar el programa anterior, nos podemos encontrar con una serie de problemas, por ejemplo si introducimos en el valor menor de "x" (x1), un valor que sea mayor que el introducido en la variable x2, o tambien puede suceder que en la variable paso escribamos un numero negativo.
  • Vamos a solucionar estos posibles problemas, es decir vamos a "mejorar" el programa anterior.

Escribe:

<HTML>

<SCRIPT LANGUAGE='JavaScript'>

// PROG024.HTM

var x1,x2,paso;

var salida='';

var y;

x1=prompt('Escribe el menor valor de x de la tabla','');

x1=parseFloat(x1);

x2=prompt('Escribe el mayor valor de x de la tabla','');

x2=parseFloat(x2);

if (x1>=x2)

{

alert('No tiene sentido lo que intentas hacer');

}

else

{

paso=prompt('Escribe el incremento de x','');

paso=parseFloat(paso);

if (paso<=0)

{

alert('No tine sentido lo que intentas hacer');

}

else

{

for (i=x1;i<=x2;i=i+paso)

{

y=i*i-5*i+10;

salida=salida+i+' '+y+'\n';

}

alert(salida);

}

}

</SCRIPT>

</HTML>

  • Grabalo con el nombre Prog024.htm en TuCarpeta y ejecutalo, convendria probar los casos x1>=x2 y paso<0
  • Observa de que forma salimos del programa si introducimos datos que no tienen sentido.

Anterior: while
Siguiente: switch case

· Introduccion a javascript
· Javascript: sintaxis basica
· Variables en javascript
· Javascript: tipos de datos
· Javascript: contadores
· Javascript: conversion entre tipos
· Operadores logicos y relacionales en javascript
· If else en javascript
· While en javascript
· Bucles for en javascript
· Switch case javascript
· Do while en javascript
· Calculos iterativos en javascript
· El objeto math javascript
· Variable temporal en javascript
· Funciones sin retorno de parametro. Javascript
· Funciones que devuelven parametros en javascript
· Arrays en javascript
· Matrices con varias dimensiones en javascript
· Codigo ascii/unicode y javascript
· Buscar una letra en un string con javascript
· Temporizadores en javascript
· Introduccion a javascript y html
· Escribiendo en el navegador con javascript
· Formularios en javascript
· Botones en javascript


IMPORTANTE:

- Si te ha gustado esta pagina, por favor, votanos aqui:

- Si no te ha gustado, escribenos y cuentanos en que mejorar.

Actualizado: 15/09/2014
Contactar