SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
1
TEMARIO DE CURSO
PROGRAMACIÓN JAVA SE
CAPÍTULO 3
BUCLES
© Iñaki Martín
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
2
COMO SE HAN DE LEER ESTOS APUNTES
• Se pueden leer los diferentes apartados en el orden establecido, y acudir al
documento JYOC-Java-Anexo1-Ejercicios para ir realizando los ejercicios
correspondientes a cada capítulo
• Asimismo, en cada capítulo comienza con una guía resumen, que no es necesario
leer inicialmente, sol ose aporta para posteriores consultas rápidas
• Los contenidos de los documentos están escritos con diferentes formatos, que
atienden a estos modelos;
o Los textos en morado son ejemplos de sintaxis de instrucciones
o Los textos en azul son ejemplos de instrucciones de código java
o Los textos en verde son nombres de Clases, Interfaces o métodos Java
o El texto marcado en rojo significa un concepto al que hay que prestarle
especial atención
Los textos con este fondo son ejemplos de código.
Las Clases y métodos van en verde y el resto de
código con otros colores
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.
• Los textos enmarcados en un cuadro de fondo violeta son
conceptos avanzados.
• Inicialmente NO es necesario leerlos ni aprenderlos
• Aportan algo más de profundidad sobre la materia que se esté
exponiendo, pero pueden provocar confusión por necesitar
mayor nivel del adquirido para comprenderse (más tarde se
verán).
Temas avanzados Textos no obligatorios
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
3for / while : Resumen
WHILE
int i=0;
while (i<10) {
System.out.print(i);
i++;
}
FOR ANIDADOS
for ( int a=1; a <=3 ; a++) {
System.out.print("Vuelta "+a+ " del bucle externo");
for ( int b=1; b <=3 ; b++) {
System.out.print("Vuelta "+b+ " de bucle interno);
}
}
FOR
for (int j = 0 ; j < 10 ; j++) {
System.out.print(j);
}
WHILE contra FOR
int vc = 1;
while (vc <= 10)
{
System.out.println("2 por " + vc + "es " + (2 * vc));
vc++;
}
for ( int vc = 1; vc <= 10 ; vc++)
{
System.out.println("2 por " + vc + "es " + (2 * vc));
}
DO-WHILE
int a=0;
do{ //asegura pasar a menos una vez
System.out.print(a);
a++;
}while(a<10);
FOR con incremento de 3
CONTINUE-BREAK
for (int j = 0; j < 10; j++) {
if(j>5){
continue; //salta a inicio
}
if(j>8){
break; //abandona el for
}
System.out.println(j);
}
for (int j = 0 ; j < 100 ; j = j + 3) {
System.out.print(j);
}
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
4
๏ Cuando se necesita que un grupo de ordenes se repita varias veces, se puede hacer uso de las instrucciones de
bucle para escribir una sola vez dichas ordenes, e indicar que se han de repetir.
๏ La instrucción while repita las ordenes que están dentro de su bloque de llaves mientras que se dé por cierta una
condición establecida. Este es el formato y un ejemplo:
Veamos paso a paso lo que va haciendo el bucle del ejemplo:
✤ La variable a toma valor 1
✤ Se evalúa la condición del while. Da cierto (a es 1, que es menor que 4), y se entra en el bucle while y se ejecutan
sus ordenes (se imprime "a vale 1" y luego se incrementa el valor de a, que ahora será 2)
✤ Como se ha acabado el bloque, se vuelve a la primera linea del bloque (línea de la instrucción while).
✤ Se evalúa la condición del while. Da cierto (a es 2, y es menor que 4), y se entra en el bucle while y se ejecutan
sus ordenes (se imprime "a vale 2" y luego se incrementa el valor de a, que ahora será 3
✤ Como se ha acabado el bloque, se vuelve a la primera linea del bloque (línea de la instrucción while).
✤ Se evalúa la condición del while. Da cierto (a es 3, y es menor que 4), y se entra en el bucle while y se ejecutan
sus ordenes (se imprime "a vale 3" y luego se incrementa el valor de a, que ahora será 4)
✤ Como se ha acabado el bloque, se vuelve a la primera linea del bloque (línea de la instrucción while).
✤ Se evalúa la condición del while. Da falso (a es 4, y 4 no es menor que 4), por lo que no se ejecuta el bucle y se
continua por la línea siguiente al bloque while
Instrucción while (I)
while
int a=1;
while ( a < 4) {
System.out.println("el valor de a es "+ a) ;
a ++;
}
// while (condición) {
// (instrucciones)
// break; //opcional
// continue; //opcional
// }
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
5
๏ La estructura normal de un bucle while es la siguiente
int valordecontrol = 1;
while ( valordecontrol < 4 ) {
System.out.println(“el valor de a es ” + valordecontrol) ;
valordecontrol ++;
}
Instrucción while (II)
Antes del bucle se define una variable de control, en este
caso valordecontrol, y se inicializa con un valor de entrada
La condición del bucle hace una comprobación
del estado de la variable de control
Dentro del bucle se realiza una
actualización de la variable de
control
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
6
๏ La condición ha de ser una expresión que de un resultado de tipo boolean (true o false)
๏ Para interrumpir la ejecución del bucle de modo incondicional, se usa la instrucción
break, que al ejecutarse abandona el bucle y continua por la línea siguiente al bloque while
๏ La instrucción continue interrumpe la ejecución del resto del bloque del while, y lleva la ejecución
nuevamente a la línea de cabecera, a volver a comenzar el bucle, y evaluando nuevamente la condición
๏ Las llaves no son obligatorias si hay solo una instrucción, aunque son recomendables por claridad
Instrucción while (III)
Consideraciones de uso de while
¡Cuidado!: Uno de los mayores peligros de un bucle es entrar en un llamado bucle infinito, esto es,
un bucle que nunca acaba. Puede darse este caso si:
• Que los elementos de la condición no cambien nunca, con lo que la condición siempre se cumple.
(p.e. si la condición es "a<4", y el valor de a es <4, pero a no se cambia nunca)
• El valor de los elementos de la condición cambia, pero en "sentido" contrario al supuesto limite
que intenta cumplir la condición
(p.e. si la condición es "a<4", y el valor de a es <4, y el cambio de a es siempre decrecer)
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
7
๏ La variable de control es el elemento que más veces habrá que analizar a la hora de decidir cómo
queremos que funcione nuestro bucle.
๏ En realidad, lo que hay que hacer a la hora de construir un bucle es pensar que éste va a ser "un grupo de
comandos que se va a repetir n veces, pero que en cada vez, un elemento va a ser diferente,
generalmente, la variable de control"
๏ Realmente, este bucle
no es más que todas estas líneas seguidas:
Instrucción while (IV)
System.out.println(“el valor de a es ” + valordecontrol) ;
valordecontrol ++;
System.out.println(“el valor de a es ” + valordecontrol) ;
valordecontrol ++;
System.out.println(“el valor de a es ” + valordecontrol) ;
valordecontrol ++;
Primera repetición, donde
valordecontrol valdrá 1
y luego cambia
Primera repetición, donde
valordecontrol valdrá 2
y luego cambia
Primera repetición, donde
valordecontrol valdrá 3
y luego cambia
int valordecontrol = 1;
Esto no es el bucle en si, va antes del bucle
int valordecontrol = 1 ;
while ( valordecontrol < 4 ){
System.out.println(“el valor de a es " + valordecontrol);
valordecontrol ++ ;
}
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
8
Ejemplo con análisis: hacer un programa que muestre la tabla de multiplicar del 2.
๏ Si pintamos en papel lo que queremos que se muestre, habrá de ser algo así:
2 por 1 es 2
2 por 2 es 4
2 por 3 es 6
.. (etc.)
๏ Vemos que realmente se trata una línea muy parecida, que ser repite n veces, y en la que cambian solo dos
cosas, así que vamos a escribir la linea que se repite y a lo que cambia lo llamaremos @@ y ##.
๏ Por lo tanto esa es la línea que hay que repetir (meter en un bucle). Busquemos los elementos de un bucle while.
๏ La variable de control la vamos a llamar vc, y vamos a empezar por darle un valor inicial que aun no sabemos
(ponemos por ahora &&) y la condición del bucle aun no la sabemos tampoco (ponemos por ahora ???) y
tampoco sabemos como va a cambiar la variable de control, así que ponemos en la condición por ahora $$$
Pasos para diseñar un bucle while (I)
Ejemplo de la ejecución del programa
primera versión del bucle
int vc = && ;
while ( ??? ){
System.out.println("2 por " + @@ +"es "+ ## );
$$$;
}
System.out.println( "2 por " + @@ + "es " + ## );
Ejemplo de pasos para diseñar un bucle
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
9
๏ Vemos que @@ en el ejemplo de ejecución del programa ha de tener los valores 1,2,3…
Y recordamos que normalmente los valores que toma una variable de control en un bucle son 1,2,3…
Si imaginamos que en mi bucle la variable de control puede ir tomando esos mismos valores, se descubre que
puedo sustituir @@ por la variable de control, y que esta ha de empezar con valor 1 y acabar con valor 10, así
que:
1. Como el primer valor de la variable de control debe ser 1, puedo sustituir && por 1
2. El último valor de la variable de control debe ser 10, por lo que el limite ??? debe ser “mientras vc<=10”
3. El valor de @@ es la propia variable de control, vc
4. El cambio de valor de vc es incrementado de uno en uno, así que la sentencia de actualización ($$$) será vc++
Pasos para diseñar un bucle while (II)
segunda versión del bucle
int vc = 1;
while ( vc<10 ) {
System.out.println("2 por " + vc + "es "+ ## );
vc++;
}
primera versión del bucle
int vc = && ;
while ( ??? ){
System.out.println("2 por " + @@ +"es "+ ## );
$$$;
}
๏ Escribimos de nuevo la primera versión que anteriormente hemos deducido, para tenerla a la vista:
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
10
๏ Sólo nos queda ver cómo obtener el contenido de # . Necesitamos que salga esto:
2 por 1 es 2
2 por 2 es 4
2 por 3 es 6
.. (etc.)
๏ ¿Cómo se puede obtener el valor deseado (marcado en rojo), sabiendo sólo los valores que (de fijo) va
a ir tomando la variable de control (los que se marcan en azul). Hay que buscar una regla para
conseguir los valores en rojo en función de lo que valen los valores en azul. Podemos hacer una tabla
de este tipo, muy útil en todos los análisis de bucles:
๏ Vemos pues que si uso 2*vc, obtengo realmente lo que quiero, así que he de sustituir ## por dicha
formula, y que me vale para cada una de las vueltas que va a dar el bucle, con lo que tengo ya mi bucle
completo:
Pasos para diseñar un bucle while (III)
tercera y definitiva versión del bucle
valor que deseamos
obtener ( ## )
valores que va a ir tomando la variable de
control (vc)
como convertir la primera
columna en la segunda
2 1 2 * vc
4 2 2 * vc
6 3 2 * vc
int vc = 1;
while (vc < 10) {
System.out.println ("2 por " + vc +"es "+ 2 * vc);
vc++;
}
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
11
๏ Una vez que tenemos la solución, vamos a “leer” la ejecución del programa, línea a línea,
para analizar lo que hace más despacio:
1. Se da valor 1 a vc
2. Como vc es menor o igual que 10, entra en el bucle
3. Con la instrucción System… imprime "2 por 1 es 2" (se ve claro sustituyendo vc por su valor actual, 1)
4. Incrementa el valor de vc, que ahora vale 2
5. Acaba el bucle, con lo que evalúa nuevamente la condición para ver si ha de entrar en el while otra vez
6. Como vc es menor o igual que 10, (vc es 2) entra en el bucle otra vez
7. Con la instrucción System… imprime "2 por 2 es 4" (se ve claro sustituyendo vc por su valor actual, 2)
8. Incrementa el valor de vc, que ahora vale 3
9. Acaba el bucle, con lo que evalúa nuevamente la condición para ver si ha de entrar en el while otra vez
10. Como vc es menor o igual que 10, (vc es 3) entra en el bucle
11. Con la instrucción System… imprime "2 por 3 es 6" (se ve claro sustituyendo vc por su valor actual, 1)
12. Incrementa el valor de vc, que ahora vale 4
13. ……
14. y sigue repitiendo hasta que un incremento de vc le de un valor de 11, con lo que al acabar el bucle,
15. al evaluar la condición como vc ya no es menor o igual que 10, no entra en el bucle y sigue
int vc = 1;
while (vc < 10) {
System.out.println ("2 por " + vc + "es " + 2 * vc);
vc++;
}
Pasos para diseñar un bucle while (IV)
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
12
๏ Hay una variante de while que consiste en la instrucción do-while, con esta sintaxis y ejemplo:
๏ Vemos que la condición de ejecutar el bucle ha pasado de ser la primera a ser la última línea del bucle
๏ La diferencia con el while anterior está en que
➡ en un while se evalúa siempre la condición para entrar, incluso la primera vez que se llega al bucle, por
lo que puede que no se entre en el bucle ni una sola vez
➡ en un do-while la evaluación de la condición se hace al final del bucle, por lo que la primera vez el bucle
se ejecutará siempre, y solo se pueden discriminar subsiguientes ejecuciones del bucle.
๏ Se garantiza pues, con un do-while, que el bucle se ejecuta al menos una vez.
๏ Por lo demás todas las consideraciones del while se aplican al do-while
do-while
do-while
// do {
// (instrucciones)
// } while (condición)
int a=1;
do {
System.out.println("el valor de a es " + a) ;
a ++;
}while ( a < 4);
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
13Instrucción for (I)
for
int vc = 1;
while (vc <= 10)
{
System.out.println("2 por " + vc + "es " + (2 * vc));
vc++;
}
for ( int vc = 1; vc <= 10 ; vc++)
{
System.out.println("2 por " + vc + "es " + (2 * vc));
}
๏ La instrucción for permite ejecutar bucles de un modo muy similar a while, con otra sintaxis. Realmente podemos
ver como lo que hace es recolocar los elementos del bucle while en otra estructura, veamos la comparación
๏ El ejemplo anterior de la tabla del 2 con un while y un for comparados:
// for (inicialización; comprobación; actualización) {
// (instrucciones)
// break; //opcional
// continue; //opcional
// }
estructura de un while estructura de un for
inicialización
while ( comprobación ) { for ( inicialización ; comprobación ; actualización ) {
instrucciones instrucciones
…. ….
actualización }
}
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
14
๏ La condición ha de ser una expresión que de un resultado de tipo boolean (true o false)
๏ La condición se evalúa ANTES de la primera ejecución de un for, por lo que puede que no se cumpla y no se
entre ni una sola vez al bucle
๏ En la inicialización se permite la declaración de la variable de control, si esta antes no existía.
Parece poco, pero realmente sí hay una diferencia importante. La variable vc declarada en la inicialización del for
(columna derecha) sólo existe dentro del bucle, se crea cuando se inicia el bucle y se destruye cuando se
acaba el bucle.
๏ Se puede usar break y continue del mismo modo que se usaban en while. En el caso de continue, en un
while dirige la acción a la condición del bucle, en el caso de un for, lo envía a la instrucción de actualización.
Instrucción for (II)
Consideraciones de uso de for
int vc ;
for ( vc = 1; vc <= 10 ; vc++)
{
System.out.println("2 por " + vc + "es " + (2 * vc));
}
for ( int vc = 1; vc <= 10 ; vc++)
{
System.out.println("2 por " + vc + "es " + (2 * vc));
}
Este es el único caso confuso al tratar la visibilidad de una variable. Aunque parezca lo contrario, la
variables declaradas dentro de los paréntesis del for pertenecen realmente al interior del bloque,
como si se hubieran declarado dentro de las llaves (aunque no se haya hecho)
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
15
๏ El cambio de valor en la actualización de la variable de control puede ser cualquiera, tanto en for
como en while, no necesariamente incrementando de 1 en 1.
๏ En el ejemplo siguiente, el bucle va cambiando la variable de 2 en 2, y decreciendo, desde 20 hasta 0.
Atención al cambio que se ha de hacer en la condición :
๏ Y este bucle cambia de 5 en 5 desde 0 hasta 100 :
Instrucción for (III) Incremento variable
Incremento variable
for (int vc=0 ; vc <=100 ; vc=vc+5) {
System.out.println( vc );
}
for (int vc=20 ; vc >=0 ; vc = vc - 2 ) {
System.out.println( vc );
}
• No son obligatorios ninguno de los elementos de la cabecera de un for. Por ejemplo:
for ( ; ; )
es una instrucción totalmente valida, crea además un bucle infinito salvo que usemos una salida forzada dentro del bucle.
• Opcionalmente, usando una coma como separador, se pueden añadir más de una instrucción en la inicialización y la
actualización de una instrucción for:
for ( a=1, b=12 ; a<12 ; a++, b - - , c=a+b , System.out.println(“valor de c”+c ){
. . . . .
}
Parámetros de un forTemas avanzados
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
16
๏ Se puede incluir un bucle dentro de otro bucle. El bucle interno se repite por lo tanto tantas veces como
indique el bucle externo. Esto es especialmente útil en el tratamiento de matrices (ver más adelante)
๏ Ver este código y la ejecución que resulta:
‣ Resultado de la ejecución:
Comienza la vuelta 1 del bucle externo
--Vuelta 1 del bucle interno donde el externo esta la vuelta 1
--Vuelta 2 del bucle interno donde el externo esta la vuelta 1
--Vuelta 3 del bucle interno donde el externo esta la vuelta 1
Comienza la vuelta 2 del bucle externo
--Vuelta 1 del bucle interno donde el externo esta la vuelta 2
--Vuelta 2 del bucle interno donde el externo esta la vuelta 2
--Vuelta 3 del bucle interno donde el externo esta la vuelta 2
Comienza la vuelta 3 del bucle externo
--Vuelta 1 del bucle interno donde el externo esta la vuelta 3
--Vuelta 2 del bucle interno donde el externo esta la vuelta 3
--Vuelta 3 del bucle interno donde el externo esta la vuelta 3
Bucles anidados
Bucles anidados
for ( int a=1; a <=3 ; a++) {
System.out.println("Comienza la vuelta "+a+ " del bucle externo" );
for ( int b=1; b <=3 ; b++) {
System.out.println("--Vuelta "+b+ " del bucle interno donde el externo esta la vuelta"+a );
}
}
TemariodecursoJavaSE©IñakiMartín
3.- Bucles
©
Iñaki Martín
17Ejercicios prácticos
int[] lista = new int[4];
for (int i = 0; i <lista.length ; i++) {
lista[i]= (int) (Math.random()*20);
System.out.println("el elemento añadido es "+lista[i]);
}
int suma = 0;
for (int i = 0; i <lista.length ; i++) {
suma = suma + lista[i];
}
System.out.println("La suma es "+suma);
๏Ejercicio: Crear un array con números al azar y sumar todos sus elementos posteriormente
Ejercicios prácticos
int[] lista = new int[4];
int[] listaCopia = new int[4];
for (int i = 0; i < lista.length; i++) {
lista[i] = (int) (Math.random() * 20);
}
System.out.println("Elementos de lista;");
for (int i = 0; i < lista.length; i++) {
System.out.println(lista[i]);
}
for (int i = 0; i < lista.length; i++) {
listaCopia[i] = lista[i];
}
System.out.println("Elementos de listaCopia;");
for (int i = 0; i < lista.length; i++) {
System.out.println(listaCopia[i]);
}
๏Ejercicio: Crear un array con números al azar, crear otro array y copiar los elementos del primero en el segundo

Más contenido relacionado

La actualidad más candente

Sentencia de control
Sentencia de controlSentencia de control
Sentencia de controlStalyn Cruz
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...David Zapateria Besteiro
 
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...David Zapateria Besteiro
 
Aprendiendo php 2
Aprendiendo php 2Aprendiendo php 2
Aprendiendo php 2Erick Trejo
 
Tema 3 sentencias de control de java por gio
Tema 3   sentencias de control de java por gioTema 3   sentencias de control de java por gio
Tema 3 sentencias de control de java por gioRobert Wolf
 
Matlab 2
Matlab 2Matlab 2
Matlab 2jmh700
 
Js control de flujo
Js control de flujoJs control de flujo
Js control de flujoFERNANDOZ9
 
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...Diego Andrés Alvarez Marín
 
2,1 elementos de java script
2,1 elementos de java script2,1 elementos de java script
2,1 elementos de java scriptCronio Antmao
 
Estructuras De Control
Estructuras De ControlEstructuras De Control
Estructuras De ControlUPS
 
Tutorial basico de vbscript by novlucker parte5
Tutorial basico de vbscript by novlucker parte5Tutorial basico de vbscript by novlucker parte5
Tutorial basico de vbscript by novlucker parte5Leo Alvavel
 
7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server7090112 Clase Transact Sql Server
7090112 Clase Transact Sql ServerCorfapo
 
métodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control javamétodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control javaHenry Upla
 

La actualidad más candente (20)

Sentencia de control
Sentencia de controlSentencia de control
Sentencia de control
 
Programación básica
Programación básicaProgramación básica
Programación básica
 
Semana 1 Estructuras de Datos en Java
Semana 1   Estructuras de Datos en JavaSemana 1   Estructuras de Datos en Java
Semana 1 Estructuras de Datos en Java
 
Semana 1 Estructuras de Control en Java
Semana 1   Estructuras de Control en JavaSemana 1   Estructuras de Control en Java
Semana 1 Estructuras de Control en Java
 
Programación Java
Programación JavaProgramación Java
Programación Java
 
Funciones
FuncionesFunciones
Funciones
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
 
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
 
Mod2ud2 1
Mod2ud2 1Mod2ud2 1
Mod2ud2 1
 
Aprendiendo php 2
Aprendiendo php 2Aprendiendo php 2
Aprendiendo php 2
 
Tema 3 sentencias de control de java por gio
Tema 3   sentencias de control de java por gioTema 3   sentencias de control de java por gio
Tema 3 sentencias de control de java por gio
 
Matlab 2
Matlab 2Matlab 2
Matlab 2
 
Js control de flujo
Js control de flujoJs control de flujo
Js control de flujo
 
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
04 - Sentencias de control condicionales y ciclos en lenguaje C: for, while, ...
 
2,1 elementos de java script
2,1 elementos de java script2,1 elementos de java script
2,1 elementos de java script
 
Semana 5 Java Swing
Semana 5   Java SwingSemana 5   Java Swing
Semana 5 Java Swing
 
Estructuras De Control
Estructuras De ControlEstructuras De Control
Estructuras De Control
 
Tutorial basico de vbscript by novlucker parte5
Tutorial basico de vbscript by novlucker parte5Tutorial basico de vbscript by novlucker parte5
Tutorial basico de vbscript by novlucker parte5
 
7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server
 
métodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control javamétodos procedimimientos estructuras de control java
métodos procedimimientos estructuras de control java
 

Similar a Java While Loops Table

Php04 estructuras control
Php04 estructuras controlPhp04 estructuras control
Php04 estructuras controlJulio Pari
 
Estructuras secuenciales, selectivas e iterativas3
Estructuras secuenciales, selectivas e iterativas3Estructuras secuenciales, selectivas e iterativas3
Estructuras secuenciales, selectivas e iterativas3maria_z2
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Javaquesada_diego
 
Semana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptxSemana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptxCarlos Díaz Sánchez
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Rommel Lòpez
 
Sentencias de Programacion
Sentencias de ProgramacionSentencias de Programacion
Sentencias de Programacionaeroscar90
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivasAbrirllave
 
Alexander power point
Alexander power pointAlexander power point
Alexander power point20081027
 
Estructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigoEstructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigoAlex Cordova
 
5.3 instruccion while
5.3 instruccion while5.3 instruccion while
5.3 instruccion whileSNPP
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivassena
 
1clase e12 estructurasderepeticionc
1clase e12 estructurasderepeticionc1clase e12 estructurasderepeticionc
1clase e12 estructurasderepeticioncMonica Martinez
 

Similar a Java While Loops Table (20)

Php04 estructuras control
Php04 estructuras controlPhp04 estructuras control
Php04 estructuras control
 
Estructuras secuenciales, selectivas e iterativas3
Estructuras secuenciales, selectivas e iterativas3Estructuras secuenciales, selectivas e iterativas3
Estructuras secuenciales, selectivas e iterativas3
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Java
 
Semana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptxSemana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptx
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)
 
Sentencias de Programacion
Sentencias de ProgramacionSentencias de Programacion
Sentencias de Programacion
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivas
 
Alexander power point
Alexander power pointAlexander power point
Alexander power point
 
Estructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigoEstructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigo
 
5.3 instruccion while
5.3 instruccion while5.3 instruccion while
5.3 instruccion while
 
Manual
ManualManual
Manual
 
Manual de programación de Arduino
Manual de programación de Arduino Manual de programación de Arduino
Manual de programación de Arduino
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 
Las estructuras de control
Las estructuras de controlLas estructuras de control
Las estructuras de control
 
Unidad3.pptx
Unidad3.pptxUnidad3.pptx
Unidad3.pptx
 
Pl
PlPl
Pl
 
Estructura repetitiva
Estructura repetitivaEstructura repetitiva
Estructura repetitiva
 
1clase e12 estructurasderepeticionc
1clase e12 estructurasderepeticionc1clase e12 estructurasderepeticionc
1clase e12 estructurasderepeticionc
 
ESTRUCTURA DO WHILE
ESTRUCTURA  DO WHILEESTRUCTURA  DO WHILE
ESTRUCTURA DO WHILE
 
Arreglos Expresiones y Control de Flujo
Arreglos Expresiones y Control de FlujoArreglos Expresiones y Control de Flujo
Arreglos Expresiones y Control de Flujo
 

Más de Jyoc X

Jyoc java-cap23 j unit
Jyoc java-cap23 j unitJyoc java-cap23 j unit
Jyoc java-cap23 j unitJyoc X
 
Jyoc java-cap22 seguridad
Jyoc java-cap22 seguridadJyoc java-cap22 seguridad
Jyoc java-cap22 seguridadJyoc X
 
Jyoc java-cap21 jse avanzado
Jyoc java-cap21 jse avanzadoJyoc java-cap21 jse avanzado
Jyoc java-cap21 jse avanzadoJyoc X
 
Jyoc java-cap20 listas, colas y pilas
Jyoc java-cap20 listas, colas y pilasJyoc java-cap20 listas, colas y pilas
Jyoc java-cap20 listas, colas y pilasJyoc X
 
Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)Jyoc X
 
Jyoc java-cap18 swing y java fx
Jyoc java-cap18 swing y java fxJyoc java-cap18 swing y java fx
Jyoc java-cap18 swing y java fxJyoc X
 
Jyoc java-cap17 persistencia. nio
Jyoc java-cap17 persistencia. nioJyoc java-cap17 persistencia. nio
Jyoc java-cap17 persistencia. nioJyoc X
 
Jyoc java-cap15 persistencia. ficheros xml, j son y pdf
Jyoc java-cap15 persistencia. ficheros xml, j son y pdfJyoc java-cap15 persistencia. ficheros xml, j son y pdf
Jyoc java-cap15 persistencia. ficheros xml, j son y pdfJyoc X
 
Jyoc java-cap14 persistencia. ficheros corrientes
Jyoc java-cap14 persistencia. ficheros corrientesJyoc java-cap14 persistencia. ficheros corrientes
Jyoc java-cap14 persistencia. ficheros corrientesJyoc X
 
Jyoc java-cap13 recursividad
Jyoc java-cap13 recursividadJyoc java-cap13 recursividad
Jyoc java-cap13 recursividadJyoc X
 
Jyoc java-cap12 excepciones
Jyoc java-cap12 excepcionesJyoc java-cap12 excepciones
Jyoc java-cap12 excepcionesJyoc X
 
Jyoc java-cap11 colecciones
Jyoc java-cap11 coleccionesJyoc java-cap11 colecciones
Jyoc java-cap11 coleccionesJyoc X
 
Jyoc java-cap10 clases complementarias y enumerados
Jyoc java-cap10 clases complementarias y enumeradosJyoc java-cap10 clases complementarias y enumerados
Jyoc java-cap10 clases complementarias y enumeradosJyoc X
 
Jyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc X
 
Jyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetosJyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetosJyoc X
 
Jyoc java-cap06 la clase string
Jyoc java-cap06 la clase stringJyoc java-cap06 la clase string
Jyoc java-cap06 la clase stringJyoc X
 
Jyoc java-cap05 metodos (funciones)
Jyoc java-cap05 metodos (funciones)Jyoc java-cap05 metodos (funciones)
Jyoc java-cap05 metodos (funciones)Jyoc X
 
Jyoc java-cap01 tipos de datos y entrada-salida
Jyoc java-cap01 tipos de datos y entrada-salidaJyoc java-cap01 tipos de datos y entrada-salida
Jyoc java-cap01 tipos de datos y entrada-salidaJyoc X
 

Más de Jyoc X (18)

Jyoc java-cap23 j unit
Jyoc java-cap23 j unitJyoc java-cap23 j unit
Jyoc java-cap23 j unit
 
Jyoc java-cap22 seguridad
Jyoc java-cap22 seguridadJyoc java-cap22 seguridad
Jyoc java-cap22 seguridad
 
Jyoc java-cap21 jse avanzado
Jyoc java-cap21 jse avanzadoJyoc java-cap21 jse avanzado
Jyoc java-cap21 jse avanzado
 
Jyoc java-cap20 listas, colas y pilas
Jyoc java-cap20 listas, colas y pilasJyoc java-cap20 listas, colas y pilas
Jyoc java-cap20 listas, colas y pilas
 
Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)
 
Jyoc java-cap18 swing y java fx
Jyoc java-cap18 swing y java fxJyoc java-cap18 swing y java fx
Jyoc java-cap18 swing y java fx
 
Jyoc java-cap17 persistencia. nio
Jyoc java-cap17 persistencia. nioJyoc java-cap17 persistencia. nio
Jyoc java-cap17 persistencia. nio
 
Jyoc java-cap15 persistencia. ficheros xml, j son y pdf
Jyoc java-cap15 persistencia. ficheros xml, j son y pdfJyoc java-cap15 persistencia. ficheros xml, j son y pdf
Jyoc java-cap15 persistencia. ficheros xml, j son y pdf
 
Jyoc java-cap14 persistencia. ficheros corrientes
Jyoc java-cap14 persistencia. ficheros corrientesJyoc java-cap14 persistencia. ficheros corrientes
Jyoc java-cap14 persistencia. ficheros corrientes
 
Jyoc java-cap13 recursividad
Jyoc java-cap13 recursividadJyoc java-cap13 recursividad
Jyoc java-cap13 recursividad
 
Jyoc java-cap12 excepciones
Jyoc java-cap12 excepcionesJyoc java-cap12 excepciones
Jyoc java-cap12 excepciones
 
Jyoc java-cap11 colecciones
Jyoc java-cap11 coleccionesJyoc java-cap11 colecciones
Jyoc java-cap11 colecciones
 
Jyoc java-cap10 clases complementarias y enumerados
Jyoc java-cap10 clases complementarias y enumeradosJyoc java-cap10 clases complementarias y enumerados
Jyoc java-cap10 clases complementarias y enumerados
 
Jyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc java-cap08 principios poo
Jyoc java-cap08 principios poo
 
Jyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetosJyoc java-cap07 clases y objetos
Jyoc java-cap07 clases y objetos
 
Jyoc java-cap06 la clase string
Jyoc java-cap06 la clase stringJyoc java-cap06 la clase string
Jyoc java-cap06 la clase string
 
Jyoc java-cap05 metodos (funciones)
Jyoc java-cap05 metodos (funciones)Jyoc java-cap05 metodos (funciones)
Jyoc java-cap05 metodos (funciones)
 
Jyoc java-cap01 tipos de datos y entrada-salida
Jyoc java-cap01 tipos de datos y entrada-salidaJyoc java-cap01 tipos de datos y entrada-salida
Jyoc java-cap01 tipos de datos y entrada-salida
 

Último

ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 

Último (20)

ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 

Java While Loops Table

  • 1. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 1 TEMARIO DE CURSO PROGRAMACIÓN JAVA SE CAPÍTULO 3 BUCLES © Iñaki Martín Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.
  • 2. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 2 COMO SE HAN DE LEER ESTOS APUNTES • Se pueden leer los diferentes apartados en el orden establecido, y acudir al documento JYOC-Java-Anexo1-Ejercicios para ir realizando los ejercicios correspondientes a cada capítulo • Asimismo, en cada capítulo comienza con una guía resumen, que no es necesario leer inicialmente, sol ose aporta para posteriores consultas rápidas • Los contenidos de los documentos están escritos con diferentes formatos, que atienden a estos modelos; o Los textos en morado son ejemplos de sintaxis de instrucciones o Los textos en azul son ejemplos de instrucciones de código java o Los textos en verde son nombres de Clases, Interfaces o métodos Java o El texto marcado en rojo significa un concepto al que hay que prestarle especial atención Los textos con este fondo son ejemplos de código. Las Clases y métodos van en verde y el resto de código con otros colores Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional. • Los textos enmarcados en un cuadro de fondo violeta son conceptos avanzados. • Inicialmente NO es necesario leerlos ni aprenderlos • Aportan algo más de profundidad sobre la materia que se esté exponiendo, pero pueden provocar confusión por necesitar mayor nivel del adquirido para comprenderse (más tarde se verán). Temas avanzados Textos no obligatorios
  • 3. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 3for / while : Resumen WHILE int i=0; while (i<10) { System.out.print(i); i++; } FOR ANIDADOS for ( int a=1; a <=3 ; a++) { System.out.print("Vuelta "+a+ " del bucle externo"); for ( int b=1; b <=3 ; b++) { System.out.print("Vuelta "+b+ " de bucle interno); } } FOR for (int j = 0 ; j < 10 ; j++) { System.out.print(j); } WHILE contra FOR int vc = 1; while (vc <= 10) { System.out.println("2 por " + vc + "es " + (2 * vc)); vc++; } for ( int vc = 1; vc <= 10 ; vc++) { System.out.println("2 por " + vc + "es " + (2 * vc)); } DO-WHILE int a=0; do{ //asegura pasar a menos una vez System.out.print(a); a++; }while(a<10); FOR con incremento de 3 CONTINUE-BREAK for (int j = 0; j < 10; j++) { if(j>5){ continue; //salta a inicio } if(j>8){ break; //abandona el for } System.out.println(j); } for (int j = 0 ; j < 100 ; j = j + 3) { System.out.print(j); }
  • 4. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 4 ๏ Cuando se necesita que un grupo de ordenes se repita varias veces, se puede hacer uso de las instrucciones de bucle para escribir una sola vez dichas ordenes, e indicar que se han de repetir. ๏ La instrucción while repita las ordenes que están dentro de su bloque de llaves mientras que se dé por cierta una condición establecida. Este es el formato y un ejemplo: Veamos paso a paso lo que va haciendo el bucle del ejemplo: ✤ La variable a toma valor 1 ✤ Se evalúa la condición del while. Da cierto (a es 1, que es menor que 4), y se entra en el bucle while y se ejecutan sus ordenes (se imprime "a vale 1" y luego se incrementa el valor de a, que ahora será 2) ✤ Como se ha acabado el bloque, se vuelve a la primera linea del bloque (línea de la instrucción while). ✤ Se evalúa la condición del while. Da cierto (a es 2, y es menor que 4), y se entra en el bucle while y se ejecutan sus ordenes (se imprime "a vale 2" y luego se incrementa el valor de a, que ahora será 3 ✤ Como se ha acabado el bloque, se vuelve a la primera linea del bloque (línea de la instrucción while). ✤ Se evalúa la condición del while. Da cierto (a es 3, y es menor que 4), y se entra en el bucle while y se ejecutan sus ordenes (se imprime "a vale 3" y luego se incrementa el valor de a, que ahora será 4) ✤ Como se ha acabado el bloque, se vuelve a la primera linea del bloque (línea de la instrucción while). ✤ Se evalúa la condición del while. Da falso (a es 4, y 4 no es menor que 4), por lo que no se ejecuta el bucle y se continua por la línea siguiente al bloque while Instrucción while (I) while int a=1; while ( a < 4) { System.out.println("el valor de a es "+ a) ; a ++; } // while (condición) { // (instrucciones) // break; //opcional // continue; //opcional // }
  • 5. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 5 ๏ La estructura normal de un bucle while es la siguiente int valordecontrol = 1; while ( valordecontrol < 4 ) { System.out.println(“el valor de a es ” + valordecontrol) ; valordecontrol ++; } Instrucción while (II) Antes del bucle se define una variable de control, en este caso valordecontrol, y se inicializa con un valor de entrada La condición del bucle hace una comprobación del estado de la variable de control Dentro del bucle se realiza una actualización de la variable de control
  • 6. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 6 ๏ La condición ha de ser una expresión que de un resultado de tipo boolean (true o false) ๏ Para interrumpir la ejecución del bucle de modo incondicional, se usa la instrucción break, que al ejecutarse abandona el bucle y continua por la línea siguiente al bloque while ๏ La instrucción continue interrumpe la ejecución del resto del bloque del while, y lleva la ejecución nuevamente a la línea de cabecera, a volver a comenzar el bucle, y evaluando nuevamente la condición ๏ Las llaves no son obligatorias si hay solo una instrucción, aunque son recomendables por claridad Instrucción while (III) Consideraciones de uso de while ¡Cuidado!: Uno de los mayores peligros de un bucle es entrar en un llamado bucle infinito, esto es, un bucle que nunca acaba. Puede darse este caso si: • Que los elementos de la condición no cambien nunca, con lo que la condición siempre se cumple. (p.e. si la condición es "a<4", y el valor de a es <4, pero a no se cambia nunca) • El valor de los elementos de la condición cambia, pero en "sentido" contrario al supuesto limite que intenta cumplir la condición (p.e. si la condición es "a<4", y el valor de a es <4, y el cambio de a es siempre decrecer)
  • 7. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 7 ๏ La variable de control es el elemento que más veces habrá que analizar a la hora de decidir cómo queremos que funcione nuestro bucle. ๏ En realidad, lo que hay que hacer a la hora de construir un bucle es pensar que éste va a ser "un grupo de comandos que se va a repetir n veces, pero que en cada vez, un elemento va a ser diferente, generalmente, la variable de control" ๏ Realmente, este bucle no es más que todas estas líneas seguidas: Instrucción while (IV) System.out.println(“el valor de a es ” + valordecontrol) ; valordecontrol ++; System.out.println(“el valor de a es ” + valordecontrol) ; valordecontrol ++; System.out.println(“el valor de a es ” + valordecontrol) ; valordecontrol ++; Primera repetición, donde valordecontrol valdrá 1 y luego cambia Primera repetición, donde valordecontrol valdrá 2 y luego cambia Primera repetición, donde valordecontrol valdrá 3 y luego cambia int valordecontrol = 1; Esto no es el bucle en si, va antes del bucle int valordecontrol = 1 ; while ( valordecontrol < 4 ){ System.out.println(“el valor de a es " + valordecontrol); valordecontrol ++ ; }
  • 8. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 8 Ejemplo con análisis: hacer un programa que muestre la tabla de multiplicar del 2. ๏ Si pintamos en papel lo que queremos que se muestre, habrá de ser algo así: 2 por 1 es 2 2 por 2 es 4 2 por 3 es 6 .. (etc.) ๏ Vemos que realmente se trata una línea muy parecida, que ser repite n veces, y en la que cambian solo dos cosas, así que vamos a escribir la linea que se repite y a lo que cambia lo llamaremos @@ y ##. ๏ Por lo tanto esa es la línea que hay que repetir (meter en un bucle). Busquemos los elementos de un bucle while. ๏ La variable de control la vamos a llamar vc, y vamos a empezar por darle un valor inicial que aun no sabemos (ponemos por ahora &&) y la condición del bucle aun no la sabemos tampoco (ponemos por ahora ???) y tampoco sabemos como va a cambiar la variable de control, así que ponemos en la condición por ahora $$$ Pasos para diseñar un bucle while (I) Ejemplo de la ejecución del programa primera versión del bucle int vc = && ; while ( ??? ){ System.out.println("2 por " + @@ +"es "+ ## ); $$$; } System.out.println( "2 por " + @@ + "es " + ## ); Ejemplo de pasos para diseñar un bucle
  • 9. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 9 ๏ Vemos que @@ en el ejemplo de ejecución del programa ha de tener los valores 1,2,3… Y recordamos que normalmente los valores que toma una variable de control en un bucle son 1,2,3… Si imaginamos que en mi bucle la variable de control puede ir tomando esos mismos valores, se descubre que puedo sustituir @@ por la variable de control, y que esta ha de empezar con valor 1 y acabar con valor 10, así que: 1. Como el primer valor de la variable de control debe ser 1, puedo sustituir && por 1 2. El último valor de la variable de control debe ser 10, por lo que el limite ??? debe ser “mientras vc<=10” 3. El valor de @@ es la propia variable de control, vc 4. El cambio de valor de vc es incrementado de uno en uno, así que la sentencia de actualización ($$$) será vc++ Pasos para diseñar un bucle while (II) segunda versión del bucle int vc = 1; while ( vc<10 ) { System.out.println("2 por " + vc + "es "+ ## ); vc++; } primera versión del bucle int vc = && ; while ( ??? ){ System.out.println("2 por " + @@ +"es "+ ## ); $$$; } ๏ Escribimos de nuevo la primera versión que anteriormente hemos deducido, para tenerla a la vista:
  • 10. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 10 ๏ Sólo nos queda ver cómo obtener el contenido de # . Necesitamos que salga esto: 2 por 1 es 2 2 por 2 es 4 2 por 3 es 6 .. (etc.) ๏ ¿Cómo se puede obtener el valor deseado (marcado en rojo), sabiendo sólo los valores que (de fijo) va a ir tomando la variable de control (los que se marcan en azul). Hay que buscar una regla para conseguir los valores en rojo en función de lo que valen los valores en azul. Podemos hacer una tabla de este tipo, muy útil en todos los análisis de bucles: ๏ Vemos pues que si uso 2*vc, obtengo realmente lo que quiero, así que he de sustituir ## por dicha formula, y que me vale para cada una de las vueltas que va a dar el bucle, con lo que tengo ya mi bucle completo: Pasos para diseñar un bucle while (III) tercera y definitiva versión del bucle valor que deseamos obtener ( ## ) valores que va a ir tomando la variable de control (vc) como convertir la primera columna en la segunda 2 1 2 * vc 4 2 2 * vc 6 3 2 * vc int vc = 1; while (vc < 10) { System.out.println ("2 por " + vc +"es "+ 2 * vc); vc++; }
  • 11. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 11 ๏ Una vez que tenemos la solución, vamos a “leer” la ejecución del programa, línea a línea, para analizar lo que hace más despacio: 1. Se da valor 1 a vc 2. Como vc es menor o igual que 10, entra en el bucle 3. Con la instrucción System… imprime "2 por 1 es 2" (se ve claro sustituyendo vc por su valor actual, 1) 4. Incrementa el valor de vc, que ahora vale 2 5. Acaba el bucle, con lo que evalúa nuevamente la condición para ver si ha de entrar en el while otra vez 6. Como vc es menor o igual que 10, (vc es 2) entra en el bucle otra vez 7. Con la instrucción System… imprime "2 por 2 es 4" (se ve claro sustituyendo vc por su valor actual, 2) 8. Incrementa el valor de vc, que ahora vale 3 9. Acaba el bucle, con lo que evalúa nuevamente la condición para ver si ha de entrar en el while otra vez 10. Como vc es menor o igual que 10, (vc es 3) entra en el bucle 11. Con la instrucción System… imprime "2 por 3 es 6" (se ve claro sustituyendo vc por su valor actual, 1) 12. Incrementa el valor de vc, que ahora vale 4 13. …… 14. y sigue repitiendo hasta que un incremento de vc le de un valor de 11, con lo que al acabar el bucle, 15. al evaluar la condición como vc ya no es menor o igual que 10, no entra en el bucle y sigue int vc = 1; while (vc < 10) { System.out.println ("2 por " + vc + "es " + 2 * vc); vc++; } Pasos para diseñar un bucle while (IV)
  • 12. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 12 ๏ Hay una variante de while que consiste en la instrucción do-while, con esta sintaxis y ejemplo: ๏ Vemos que la condición de ejecutar el bucle ha pasado de ser la primera a ser la última línea del bucle ๏ La diferencia con el while anterior está en que ➡ en un while se evalúa siempre la condición para entrar, incluso la primera vez que se llega al bucle, por lo que puede que no se entre en el bucle ni una sola vez ➡ en un do-while la evaluación de la condición se hace al final del bucle, por lo que la primera vez el bucle se ejecutará siempre, y solo se pueden discriminar subsiguientes ejecuciones del bucle. ๏ Se garantiza pues, con un do-while, que el bucle se ejecuta al menos una vez. ๏ Por lo demás todas las consideraciones del while se aplican al do-while do-while do-while // do { // (instrucciones) // } while (condición) int a=1; do { System.out.println("el valor de a es " + a) ; a ++; }while ( a < 4);
  • 13. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 13Instrucción for (I) for int vc = 1; while (vc <= 10) { System.out.println("2 por " + vc + "es " + (2 * vc)); vc++; } for ( int vc = 1; vc <= 10 ; vc++) { System.out.println("2 por " + vc + "es " + (2 * vc)); } ๏ La instrucción for permite ejecutar bucles de un modo muy similar a while, con otra sintaxis. Realmente podemos ver como lo que hace es recolocar los elementos del bucle while en otra estructura, veamos la comparación ๏ El ejemplo anterior de la tabla del 2 con un while y un for comparados: // for (inicialización; comprobación; actualización) { // (instrucciones) // break; //opcional // continue; //opcional // } estructura de un while estructura de un for inicialización while ( comprobación ) { for ( inicialización ; comprobación ; actualización ) { instrucciones instrucciones …. …. actualización } }
  • 14. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 14 ๏ La condición ha de ser una expresión que de un resultado de tipo boolean (true o false) ๏ La condición se evalúa ANTES de la primera ejecución de un for, por lo que puede que no se cumpla y no se entre ni una sola vez al bucle ๏ En la inicialización se permite la declaración de la variable de control, si esta antes no existía. Parece poco, pero realmente sí hay una diferencia importante. La variable vc declarada en la inicialización del for (columna derecha) sólo existe dentro del bucle, se crea cuando se inicia el bucle y se destruye cuando se acaba el bucle. ๏ Se puede usar break y continue del mismo modo que se usaban en while. En el caso de continue, en un while dirige la acción a la condición del bucle, en el caso de un for, lo envía a la instrucción de actualización. Instrucción for (II) Consideraciones de uso de for int vc ; for ( vc = 1; vc <= 10 ; vc++) { System.out.println("2 por " + vc + "es " + (2 * vc)); } for ( int vc = 1; vc <= 10 ; vc++) { System.out.println("2 por " + vc + "es " + (2 * vc)); } Este es el único caso confuso al tratar la visibilidad de una variable. Aunque parezca lo contrario, la variables declaradas dentro de los paréntesis del for pertenecen realmente al interior del bloque, como si se hubieran declarado dentro de las llaves (aunque no se haya hecho)
  • 15. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 15 ๏ El cambio de valor en la actualización de la variable de control puede ser cualquiera, tanto en for como en while, no necesariamente incrementando de 1 en 1. ๏ En el ejemplo siguiente, el bucle va cambiando la variable de 2 en 2, y decreciendo, desde 20 hasta 0. Atención al cambio que se ha de hacer en la condición : ๏ Y este bucle cambia de 5 en 5 desde 0 hasta 100 : Instrucción for (III) Incremento variable Incremento variable for (int vc=0 ; vc <=100 ; vc=vc+5) { System.out.println( vc ); } for (int vc=20 ; vc >=0 ; vc = vc - 2 ) { System.out.println( vc ); } • No son obligatorios ninguno de los elementos de la cabecera de un for. Por ejemplo: for ( ; ; ) es una instrucción totalmente valida, crea además un bucle infinito salvo que usemos una salida forzada dentro del bucle. • Opcionalmente, usando una coma como separador, se pueden añadir más de una instrucción en la inicialización y la actualización de una instrucción for: for ( a=1, b=12 ; a<12 ; a++, b - - , c=a+b , System.out.println(“valor de c”+c ){ . . . . . } Parámetros de un forTemas avanzados
  • 16. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 16 ๏ Se puede incluir un bucle dentro de otro bucle. El bucle interno se repite por lo tanto tantas veces como indique el bucle externo. Esto es especialmente útil en el tratamiento de matrices (ver más adelante) ๏ Ver este código y la ejecución que resulta: ‣ Resultado de la ejecución: Comienza la vuelta 1 del bucle externo --Vuelta 1 del bucle interno donde el externo esta la vuelta 1 --Vuelta 2 del bucle interno donde el externo esta la vuelta 1 --Vuelta 3 del bucle interno donde el externo esta la vuelta 1 Comienza la vuelta 2 del bucle externo --Vuelta 1 del bucle interno donde el externo esta la vuelta 2 --Vuelta 2 del bucle interno donde el externo esta la vuelta 2 --Vuelta 3 del bucle interno donde el externo esta la vuelta 2 Comienza la vuelta 3 del bucle externo --Vuelta 1 del bucle interno donde el externo esta la vuelta 3 --Vuelta 2 del bucle interno donde el externo esta la vuelta 3 --Vuelta 3 del bucle interno donde el externo esta la vuelta 3 Bucles anidados Bucles anidados for ( int a=1; a <=3 ; a++) { System.out.println("Comienza la vuelta "+a+ " del bucle externo" ); for ( int b=1; b <=3 ; b++) { System.out.println("--Vuelta "+b+ " del bucle interno donde el externo esta la vuelta"+a ); } }
  • 17. TemariodecursoJavaSE©IñakiMartín 3.- Bucles © Iñaki Martín 17Ejercicios prácticos int[] lista = new int[4]; for (int i = 0; i <lista.length ; i++) { lista[i]= (int) (Math.random()*20); System.out.println("el elemento añadido es "+lista[i]); } int suma = 0; for (int i = 0; i <lista.length ; i++) { suma = suma + lista[i]; } System.out.println("La suma es "+suma); ๏Ejercicio: Crear un array con números al azar y sumar todos sus elementos posteriormente Ejercicios prácticos int[] lista = new int[4]; int[] listaCopia = new int[4]; for (int i = 0; i < lista.length; i++) { lista[i] = (int) (Math.random() * 20); } System.out.println("Elementos de lista;"); for (int i = 0; i < lista.length; i++) { System.out.println(lista[i]); } for (int i = 0; i < lista.length; i++) { listaCopia[i] = lista[i]; } System.out.println("Elementos de listaCopia;"); for (int i = 0; i < lista.length; i++) { System.out.println(listaCopia[i]); } ๏Ejercicio: Crear un array con números al azar, crear otro array y copiar los elementos del primero en el segundo