0% encontró este documento útil (0 votos)
142 vistas25 páginas

Taller de Programación: Estructuras For en Java

Cargado por

josue48 rojas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
142 vistas25 páginas

Taller de Programación: Estructuras For en Java

Cargado por

josue48 rojas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Taller de

Programación

Imagen obtenida de: https://www.pixelstalk.net/wp-content/uploads/images6/Abstract-Wallpaper-HD-Free-download.png


Dudas de la clase anterior

Bucle for

Bucle for vs while


vs do-while
¿Cuándo usar
cada una?
2
Dudas de la clase anterior

Bucle for

Bucle for vs while


vs do-while
¿Cuándo usar
cada una?
3
Dudas de la clase anterior

Bucle for

Bucle for vs while


vs do-while
¿Cuándo usar
cada una?
4
Estructura Repetitiva

for (II)
Semana 08 - Sesión 16
Conocimientos previos
Observa e indica cuál final int _NUMERO_LINEAS_ = 8;
int valor = 1;
de las siguientes es la
for (int i = 1; i <= _NUMERO_LINEAS_; i++) {
salida del programa System.out.printf("%" + _NUMERO_LINEAS_ + "d\n",

mostrado. valor);
valor = valor * 10 + 1;
}
Justificar respuesta.
1 1 1
11 11 111
111 111 11111
1111 1111 1111111
11111 11111 111111111
111111 111111 11111111111
1111111 1111111 1111111111111
11111111 11111111 111111111111111

A. B. C.
6
Logro de aprendizaje
Al finalizar la sesión, el
estudiante desarrolla
programas con la estructura
repetitiva do-while utilizando
un IDE Java para resolver
problemas sencillos que
requieren acciones que se
ejecuten repetidamente.

Imagen obtenida de:


https://img.freepik.com/free-vector/clever-man-student-standing-books-stack-with-flag-self-learning-personal-improvement-knowledge-obtaining-educational-achievement_335657-3461.jpg
7
Utilidad
Observa y responde:
• ¿Qué se muestra en la imagen?​
• ¿Algo se repite? ​
• ¿Hay algún contador o
acumulador?​
• ¿Se conoce el número de cuotas?
• ¿Cómo te puede ayudar el uso de
la estructura for en la
elaboración de programa Java?

Desarrollar programas utilizando


la estructura repetitiva for en
Java.
Imagen obtenida de: https://www.philscomputerlab.com/uploads/3/7/2/3/37231621/6532844_orig.png 8
contenido 1
Estructura repetitiva
for (repaso)

2
Bucles anidados

3
Práctica

9
contenido 1
Estructura repetitiva
for (repaso)

2
Bucles anidados

3
Práctica

10
1
Estructura repetitiva
for (repaso)

Bucle for Expresión de inicialización

• Generalmente, permite
ejecutar acciones un número condición
false

conocido de veces.
• Consta de 3 partes: true

for (inicialización; condición; iteración)


{ Cuerpo del bucle
// instrucciones;
}

• Su variable de control Expresión de iteración

(contador interno) puede ser


progresivo o regresivo. fin de bucle

11
contenido 1
Estructura repetitiva
for (repaso)

2
Bucles anidados

3
Práctica

12
2
Bucles anidados

Bucle anidado
Bucle externo
• Se denomina bucle anidado al
bucle que se encuentra dentro
de otro bucle.
Bucle interno
• Cualquiera de las estructuras
repetitivas conocidas (while,
do-while, for) puede anidarse
dentro de otra.
• No existe límite en el nivel de
anidamiento, pero se
recomienda no tener
demasiados. 13
2
Bucles anidados

Anidamiento
¿Cómo se pueden
anidar las
estructuras while
repetitivas?

do-
for
while

14
2
Bucles anidados

Bucle anidado. Ejemplo.


Salida:
El ejemplo Semana 1
int semanas = 3; Día 1
muestra un Día 2
bucle que itera int dias = 7; Día 3
Día 4
3 veces String expresion1, expresion2; Día 5
Día 6
(semanas) y Día 7
Semana 2
dentro de éste, for (int i = 1; i <= semanas; i++) { Día 1
Día 2
otro bucle que expresion1 = String.format("Semana %d\n", i);
Día 3
System.out.println(expresion1); Día 4
itera 7 veces Día 5
(días) for (int j = 1; j <= dias; j++) { Día 6
Día 7
expresion2 = String.format("\tDía %d\n", j); Semana 3
Día 1
System.out.println(expresion2); Día 2
Se hace uso de Día 3
String.format() para } Día 4
Día 5
formatear la salida } Día 6
antes de enviarla a Día 7

la pantalla.
15
2
Bucles anidados

Bucle anidado. Ejemplo.


int semanas = 3, dias = 7, i = 1, j; int semanas = 3, dias = 7, i = 1, j;
El ejemplo
while (i <= semanas) { do { anterior,
System.out.println("Semana " + i++); System.out.println("Semana " + i++);
j = 1; j = 1;
expresado con
while (j <= dias) { do { otras estructuras
System.out.println("\tDía " + j+ System.out.println("\tDía " + j+ repetitivas
+); +);
} } while (j <= dias);
anidadas.
} } while (i <= semanas);
La salida es la
int semanas = 3, dias = 7, j;
misma en todos
int semanas = 3, dias = 7, i = 1;
los casos.
while (i <= semanas) { for (int i = 1; i <= semanas; i++) {

System.out.println("Semana " + i++); System.out.println("Semana " + i);

for (int j = 1; j <= dias; j++) { j = 1;

System.out.println("\tDía " + j); do {

} System.out.println("\tDía " + j+

} +);
} while (j <= dias);
} 16
2
Bucles anidados

Anidamiento
Recuerda:
Todas las estructuras, ya sean condicionales o
repetitivas pueden anidarse entre sí, de forma
combinada, según se requiera y sin límite de
anidamiento.

Estructura Estructura
condicional repetitiva

Imagen obtenida de: https://creazilla-store.fra1.digitaloceanspaces.com/cliparts/32933/business-man-advise-clipart-xl.png 17


contenido 1
Estructura repetitiva
for (repaso)

2
Bucles anidados

3
Práctica

18
3
Práctica

Ejercicio 1
Elaborar un programa que permita ingresar
mediante un menú la información de un
empleado, su salario y sus boletas emitidas​
.
Opcion1: Se debe pedir el nombre y el tipo
de empleado (contratado o nombrado)​
Opción2: Se debe ingresar el salario
mensual, número de boletas emitidas y
número de mes en curso​.
Opción 3: Elaborar el reporte ASCII (validar
que los datos hayan sido ingresados)​
Utilizar String.format para generar el
reporte. Almacene el reporte en una
variable String.
19
3
Práctica

Ejercicio 2
Escribir un programa para 1, 1, 2, 3, 5, 8, 13, 21, 34, …
generar los N primeros números
de la serie de Fibonacci, donde
N es un valor entero positivo
ingresado por el usuario (validar)
Mostrar además al final, la suma
de los números mostrados.
Utilizar String.format para
acumular en una cadena la serie
de números a mostrar.

Imagen obtenida de:


https://www.mathsisfun.com/numbers/images/fibonacci-spiral.svg 20
3
Práctica

Ejercicio 3
Escribir un programa para recoger los
votos de 10 personas que elegirán un
color para una campaña publicitaria.
Los colores son: celeste, morado y
turquesa.
Mostrar al final, cuántos votos obtuvo
cada color, su porcentaje y qué color
resultó elegido.
Todo el reporte debe generarse y
almacenarse en una cadena utilizando
String.format
21
Tarea grupal
Implementar 5 programas en Java para:
1. Resolver un problema que utilice una estructura Indicaciones
for con un contador interno progresivo​.
• Grupos: 3 integrantes
2. Resolver un problema que utilice una estructura (máximo)
for con un contador adicional y un acumulador​. • Entregables: a). Video de
3 minutos (máximo)
3. Elaborar un programa que genere un reporte
explicando las
ASCII utilizando la estructura repetitiva for​. soluciones propuestas;
4. Resolver un problema que utilice anidamiento b). Archivo ZIP
conteniendo el Proyecto
entre estructuras repetitivas.
java con las soluciones.
5. Resolver un problema que utilice anidamiento • Los integrantes
entre estructuras condicionales y repetitivas. aparecerán en el video
explicando los ejercicios.
Recuerda revisar en la
Nota: Los programas 1,2,3 deben incluir alguna
plataforma la rúbrica de la
estructura de control revisada en clases previas. tarea grupal.

22
Resumen de la sesión
• Mencione 3 características del
bucle for.
• ¿Qué es anidamiento?
• ¿Qué estructuras repetitivas
pueden anidarse?
• ¿Qué ventajas tiene el uso de
estructuras anidadas?
• ¿Qué es un reporte ASCII?

Imagen obtenida de: 23


https://dpemfoco.com.br/wp-content/uploads/2019/08/Departamento-de-Pessoal-em-Foco-Checklist-Check-list-Checklists.png
Bibliografía
• Tanenbaum & Van Steen (2008). Algoritmos y
Estructuras de Datos - Principios y Paradigmas,
2da Edición. Pearson Education​.
• Khalid A. Mughal & Rolf W. Rasmussen (2017). A
Programmer’s guide to Java SE 8 Oracle Certified
Associate.
• Schildt, Herbert (2019). A Java Beginner’s Guide
Eighth Edition. Oracle Press.
• Schildt, Herbert (2019). Java The Complete
Reference Eleventh Edition. Oracle Press.
Imagen obtenida de: 24
https://pngimg.com/d/book_PNG51088.png

También podría gustarte