En esta oportunidad explicare brevemente lo que son los Ciclos En Java, que tipos de ciclos existen, su forma de uso y obviamente algunos ejemplos. Entrando en materia, un ciclo es una acción que se repite determinada cantidad de veces, esta repetición esta basada en la condicional que tenga el ciclo, en la parte de la condicional la podemos manejar con los operadores lógicos que hemos visto anteriormente. Existen tres tipos de ciclos diferentes, cada uno se maneja de una forma distinta y difieren en la evaluación de la condicional, estos ciclos son:
FOR
Sintaxis
1 2 3 | for (inicialización ; condición ; acción ) acción a realizar; |
for (inicialización ; condición ; acción ) acción a realizar;
Si se requiere realizar más de una acción se deben utilizar llaves.
1 2 3 4 | for (inicialización ; condición ; acción ){ bloque de acciones; } |
for (inicialización ; condición ; acción ){ bloque de acciones; }
Funcionamiento del For
- Ejecuta el o los estatutos de inicialización
- Evalúa la condición, si es verdadera entra al ciclo
- Ejecuta el o los estatutos
- Ejecuta la o las acciones y regresa al paso 2
Notas sobre el For
- Las 3 partes del for son opcionales, si no se pone condición se toma como verdadero.
- Si no se incluye la inicialización o condición, los «;» deben de ir.
Ejemplo: for ( ; a > 10 ; a–)
- Si la primera vez la condición es falsa no se ejecuta ningún estatuto y termina el for
- Una variable puede declararse en la sección de inicialización, solo hay que tomar en cuenta que esta variable solo esreconocida dentro del ciclo.
Ejemplo: for (int num = 1; num < = 10; num++) Para ilustrar mejor lo anterior mostrare un simple ejemplo del ciclo, el cual me pedirá ingresar una palabra, esta acción terminara hasta que se ingrese la palabra que nosotros deseemos, en este caso escogí la palabra "fin«.
Como resultado nos mostrara el numero de veces que se ingresaron palabras hasta llegar a la palabra que termino el ciclo.
WHILE Sintaxis
1 2 | while ( condición ) Sentencia a realizar; |
while ( condición ) Sentencia a realizar;
Si se requiere realizar más de una linea de acción se deben utilizar llaves.
1 2 3 4 | while( condición ){ bloque de estatutos; } |
while( condición ){ bloque de estatutos; }
Tengamos en cuenta que esta es una estructura de iteración preprueba, es decir primero se evalúa la condición antes de realizar cualquier acción. Si de entrada la condición es falsa nunca ejecutará el conjunto de sentencias. Como ejemplo mostrare el mismo problema anterior con la diferencia que el ciclo esta hecho con el ciclo while:
Obviare la imagen del resultado, ya que va ser el mismo resultado de la imagen del for, simplemente estoy mostrando la sintaxis del ciclo e intrinsicamente otra manera de «solucionar» el «problema» 😀 .
DO WHILE
Sintaxis
1 2 3 4 | do accion; while( condición ); |
do accion; while( condición );
Si se requiere realizar más de un estatuto se deben utilizar llaves.
1 2 3 | do{ bloque de acciones; }while( condición ); // importante: nota que lleva ; |
do{ bloque de acciones; }while( condición ); // importante: nota que lleva ;
Se realizan las acciones y se verifica la condición, mientras sea verdadera se sigue ejecutando; al momento de ser falsa termina el ciclo.
Dado que la condición se revisa al final del ciclo la(las) accion (es) se realizan al menos una vez a diferencia del while. Una vez mas mostrare como hacer el mismo «problema» pero esta vez con el ciclo do while:
La anterior imagen nos muestra como debemos de manejar la sintaxis para este ciclo, en esta parte tambien omitire la imagen del resultado, ya que sera el mismo, solo queda que ustedes lo pongan en practica con diferentes algoritmos, mas adelante publicare un post dedicado a realizar ejercicios en los cuales mezclare lo que hemos visto, mientra tanto espero que comenten sus dudas, comentarios, y demas siempre y cuando sean constructivos sobre este tema.
CARMINA: Gracias por toda la instrucción, es muy interesante el aprender computación, yo soy principiante solo se lo básico como quien dice prácticamente nada y si se me ha complicado bastante entender el lenguaje, sin embargo son muchos mis deseos de aprender, no soy un a mujer joven pero la edad no me limita para saber como manejar todos estos sistemas electrónicos, voy mas lenta que los demás estudiantes, pero eso no importa esto no es un maratón y es casi seguro que me reprueben pero eso no me desanima, tengo los temas y voy a seguir estudiándolos hasta que logre entender cada uno de los bloques, felicito a todos los integrantes de esta maravillosa plataforma y gracias por compartir sus conocimientos
Hola amigo, tengo una duda, me han dejado un trabajo con ciclos y pues la verdad es que me he quedado estancado aquí:
«Realizar un programa que muestre un listado de números entre el 900 y 200
mostrándolos de mayor a menor.»
Se como hacer el listado de 200 a 900, pero no se como ordenarlos de mayor a menor, me podrías echar una mano?
Gracias.
public class EstructuraRepetitivaWhile1 {
public static void main(String[] ar) {
int x;
x=900;
while (x>1) {
System.out.print(x);
System.out.print(» – «);
x–;
}
}
}
JAGONZALEZ QUIERO FELICITARTE Y DARTE LAS GRACIAS POR TU GRAN APORTE CON TU EJEMPLO DE CICLO IMPLEMENTANDO UN STRING YA QUE LLEVABA VARIOS DÍAS BUSCANDO EN LA RED UN EJEMPLO ASÍ PARA UNA VALIDACIÓN SENCILLA DE UN CAJERO AUTOMÁTICO (TALLER DE LA UNIVERSIDAD) PERO DESAFORTUNADAMENTE SI NO ES CON UN INT LOS DEMÁS NO PUEDEN EXPLICAR LA SINTAXIS, DE NUEVO MIL GRACIAS ESPERO SEGUIR VISITANDO TU PAGINA.
Bernave, soy estudiante de programación
estoy interesada en ver el problema del proyecto del cajero automático.
Serias tan amable de enviarme el enunciado
Mil gracias
ola buenos dias me podria ayudar con un programa de un menu que me tiene que imprimir los registro de venta el corte de caja y la salida.
Si tienes algún código base, por supuesto que te ayudo.
Estoy haciendo un sistema de un centro turistico pero necesito controlar las fechas reservadas, si una habitación ha esta ocupada que ya no deja reservar otra habitacion
muchas gracias ha sido de muy buena ayuda
bien echo