¿Qué es un bucle?
El bucle for
El bucle for o for loop se utiliza para ejecutar un bloque de código un número determinado de veces usando una expresion inicial que se actualisa durante la ejecucion de el programa. La sintaxis del bucle for es:
for (expresión inicial; expresión de prueba; expresión de actualización) {
// cuerpo del bucle
}
En estos pasos:
- exprecion inicial declara variables y se ejecuta solo una vez.
- Se evalúa la condición. Si la condición es verdadera, se ejecuta el cuerpo del bucle for.
- La expression de prueba actualiza el valor de la expresion inicial.
- La condición se evalúa de nuevo. El proceso continúa hasta que la condición es falsa.
Ejempos usando el bucle for:
/* Sintaxis:
for(inicialización; condición de prueba;incremento/decremento)
{
declaraciones ejecutadas cada iteracion
}
*/
////////////////////////////////////////////////////////////
// Ejemplo #1:
// Programa para imprimir de el numero uno a cinco
public class Main {
public static void main(String[] args) {
int n = 5;
for (int i = 1; i <= n; ++i) {
System.out.println("El numero:"+i);
}
}
}
/*
salida:
El numero:1
El numero:2
El numero:3
El numero:4
El numero:5
*/
////////////////////////////////////////////////////////////
// Ejemplo #2:
// Un programa que suma un grupo de números y obtiene su promedio
public class Main {
public static void main(String[] args) {
int total = 0;
int promedio = 0;
int []numeros={3,44,77,89,6,2,66,70};
for (int i = 0; i < numeros.length; ++i) {
total += numeros[i];
}
promedio = total/numeros.length;
System.out.println("El promedio es:"+promedio);
}
}
/*
salida:
El promedio es: 44
*/
////////////////////////////////////////////////////////////
// Ejemplo #3:
// Un programa que recorre una matriz con letras. Utiliza un bucle for para comprobar si una letra es una vocal o una consonante.
public class vocalOconsonante {
public static void main(String[] args) {
char[] ch = {'i','z','t','a','e','c','t'};
int vocal=0;
int consonante=0;
for(int i =0; i
El bucle for each
El bucle for each se utiliza para iterar a traves de elementos de matrices y colecciones. El bucle for each es una manera mejorada de usar el bucle for.
for (tipo de dato elemento : matriz){
// cuerpo del bucle
El bucle for each se utiliza para iterar a traves de elementos de matrices y colecciones. El bucle for each es una manera mejorada de usar el bucle for.
}
- El tipo de dato tiene que ser el mismo al de la matriz.
- En cada iteracion de el bucle el elemento cambia al siquiente valor de la matriz.
Ejempos usando el bucle for:
/* Sintaxis:
for(datatipo elemento: matriz)
{
declaraciones ejecutadas cada iteracion
}
*/
////////////////////////////////////////////////////////////
// Ejemplo #1:
// Programa para imprimir los numeros en un array
public class Main {
public static void main(String[] args) {
int numeros[] = {1,2,3,4,5};
for (int i : numeros) {
System.out.println("El numero:"+i);
}
}
}
/*
salida:
El numero:1
El numero:2
El numero:3
El numero:4
El numero:5
*/
////////////////////////////////////////////////////////////
// Ejemplo #2:
// Un programa que suma un grupo de números y obtiene su promedio
public class Main {
public static void main(String[] args) {
int total = 0;
int promedio = 0;
int []numeros={3,44,77,89,6,2,66,70};
for (int i : numeros) {
total += i;
}
promedio = total/numeros.length;
System.out.println("El promedio es:"+promedio);
}
}
/*
salida:
El promedio es: 44
*/
////////////////////////////////////////////////////////////
// Ejemplo #3:
// Un programa que recorre una matriz con letras. Utiliza un bucle for para comprobar si una letra es una vocal o una consonante.
public class vocalOconsonante {
public static void main(String[] args) {
char[] ch = {'i','z','t','a','e','c','t'};
int vocal=0;
int consonante=0;
for(char i : ch)
if(i == 'a' || i == 'e' || i == 'i' || i == 'o' || i == 'u' )
vocal++;
else
consonante++;
System.out.println("El numero de vocales en el array es:"+vocal);
System.out.println("El numero de consonantes en el array es:"+consonante);
}
}
/*
Salida:
El numero de vocales en el array es:3
El numero de consonantes en el array es:4
*/
El bucle while
while (expresion){
cuerpo de el bucle
}
Aqui,
- el bucle evalúa la expresión entre paréntesis.
- Si es verdadero, ejecuta el bloque de código. Posteriormente la expresión será evaluada nuevamente.
- Si es falso, sale del bucle.
/* Sintaxis:
while(expresion)
{
declaraciones ejecutadas cada iteracion
}
*/
////////////////////////////////////////////////////////////
// Ejemplo #1:
// Programa para imprimir de el numero uno a cinco
public class Main {
public static void main(String[] args) {
int n = 5;
int i = 1;
while (i<=5) {
System.out.println("El numero:"+i);
i++;
}
}
}
/*
salida:
El numero:1
El numero:2
El numero:3
El numero:4
El numero:5
*/
////////////////////////////////////////////////////////////
// Ejemplo #2:
// Un programa que suma un grupo de números y obtiene su promedio
public class Main {
public static void main(String[] args) {
int total = 0;
int promedio = 0;
int cuenta = 0;
int []numeros={3,44,22,89,6,2,66,70};
while (cuenta
El bucle do while
do {
cuerpo de el bucle
}while(expresion);
- El bucle ejecuta el codigo en el cuerpo de el bucle
- el bucle evalua la expresion entre parentesis.
- si falso, sale de el bucle.
- si es verdadero, continua ejecutando el bloque de codigo.
/* Sintaxis:
do
{
declaraciones ejecutadas cada iteracion
}while(expresion)
*/
////////////////////////////////////////////////////////////
// Ejemplo #1:
// Programa para imprimir de el numero uno a cinco
public class Main {
public static void main(String[] args) {
int n = 5;
int i = 1;
do {
System.out.println("El numero:"+i);
i++;
} while (i<=5)
}
}
/*
salida:
El numero:1
El numero:2
El numero:3
El numero:4
*/
Bucles anadidos
/* Sintaxis:
Bucle(expresion)
{
Bucle(expresion){
declaraciones ejecutadas cada iteracion
}
}
*/
////////////////////////////////////////////////////////////
// Ejemplo #1:
// Programa para imprimir numeros uno a cien
public class Main {
public static void main(String[] args) {
int i = 0;
for(int j = 0;j<10;j++){
for(int k =0;k<10;k++){
i=j*10+k;
System.out.print(i+" ");
}
System.out.println(" ");
}
}
}
/*
salida:
0 1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19
20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39
40 41 42 43 44 45 46 47 48 49
50 51 52 53 54 55 56 57 58 59
60 61 62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79
80 81 82 83 84 85 86 87 88 89
90 91 92 93 94 95 96 97 98 99
*/
////////////////////////////////////////////////////////////
// Ejemplo #2:
// En este programa encontramos la nota media de cada alumno en una lista. Donde los nombres de la matriz contienen el nombre de los estudiantes y las calificaciones de la matriz bidimensional contienen sus calificaciones.
public class Main {
public static void main(String[] args) {
String n ="";
int alto = 0;
int [][]grados = {{66,52,99},{52,90,77},{89,99,87},{67,55,53},{43,66,87},{78,88,83},{82,93,84}};
String []nombres ={"luis","jose","anna","david","josefina","maria","rosy"
};
for(int j = 0;j