You are on page 1of 8

FUNDAMENTOS DE PROGRAMACIÓN

LABORATORIO N° 05

SENTENCIAS DE CONTROL DE FLUJO II

CODIGO DEL CURSO: II1101

Alumno(s): Bruno David Alejo Apaza Nota

Grupo: “A” Ciclo:1

Requiere No
Excelente Bueno Regular Puntaje
Criterio de Evaluación mejora acept.
(4pts) (3pts) (2pts) Logrado
(1pts) (0pts)

Reconoce la sintaxis de la sentencia FOR


Crea ejercicios que hagan uso de la sentencia
FOR
Reconoce el uso de la función break y continue

Realiza observaciones y conclusiones que


aporten un opinión crítica y técnica
Es puntual y redacta el informe
adecuadamente sin copias de otros autores

DISEÑO DE SOFTWARE E IMPLEMENTACIÓN DE SISTEMAS


PROGRAMA DE FORMACIÓN REGULAR
Nro. DD-106
Laboratorio de Fundamentos de Programación Página 1 de 8

I.- OBJETIVOS:
 Conocer las instrucciones de bucles o repetitivas en Java (for, break, continue).
 Automatizar tareas aplicando bucles en los programas Java.

II.- SEGURIDAD:
Advertencia:
En este laboratorio está prohibida la manipulación del
hardware, conexiones eléctricas o de red; así como la ingestión
de alimentos o bebidas.

III.- FUNDAMENTO TEÓRICO:

Importante. Dentro de la carpeta D:\Java, verifique que tiene una carpeta identificada con su nombre y
apellido. En esta carpeta debe crear los proyectos de los laboratorios. Si no existe la carpeta, créela.

 Los procedimientos de creación de proyectos se encuentran detallados en la guía de laboratorio de la


segunda semana.

IV.- NORMAS EMPLEADAS:


No aplica

V.- RECURSOS:
 En este laboratorio cada alumno trabajará con un equipo con Windows XP.
 Este equipo cuenta con JDK instalado, así como alguno de los IDE (Entorno de Desarrollo Integrado)
como Eclipse o NetBeans.

VI.- METODOLOGÍA PARA EL DESARROLLO DE LA TAREA:


 El desarrollo del laboratorio es en grupo de dos personas. No se permite consultar con otros grupos.

VII.- PROCEDIMIENTO:
1. Cree el proyecto 05_Estructuras_Repetitivas en su carpeta de trabajo.

DESARROLLE LOS SIGUIENTES PROGRAMAS

2. Cree la clase Bucle_for con el siguiente código:


public class Bucle_for {
public static void main(String[] args) {
int n = Integer.parseInt(args[0]);
for (int cont=1; cont<=n; cont++)
System.out.println(cont*2);
System.out.println("cont vale: " + cont);
}
}

Indique por qué se genera el error:


Porque no tenía llaves la sentencia de for para poder imprimir las condiciones, este se encuentra fuera del
for

¿Cómo corregiría el error presentado?


Colocándole llaves al inicio de la impresión y luego al final de lo que queramos imprimir para cerrar
correctamente el argumento for.
public static void main(String[] args) {
int n = Integer.parseInt(args[0]);

for (int cont=1; cont<=n; cont++){


System.out.println(cont*2);
System.out.println("cont vale: " + cont);
}
}
Nro. DD-106
Laboratorio de Fundamentos de Programación Página 2 de 8

Ahora, asigne como parámetro un número entero y ejecute la clase. Vea el resultado de la ejecución. ¿Qué
hace la clase ingresada?
Num=8
El contador hace que se sume máximo 8 veces la variable mas 2 que en total seria 16 de la suma total de la
variabla

3. Ingrese, en su proyecto, la siguiente clase. Antes de ejecutar la clase, asigne como parámetros uno o más
números enteros. Vea el resultado de la ejecución. Verifique que la clase ingresada permita sumar los
argumentos asignados. La variable cont tiene la función contador, mientras que la variable suma tiene la
función acumulador:
public class Suma_Argumentos {
public static void main(String[] args) {
int suma = 0;
for(int cont=0; cont<args.length; cont++)
suma += Integer.parseInt(args[cont]);
System.out.print("El total es: " + suma);
}
}

Asigne exactamente cinco argumentos (números enteros) antes de ejecutar la clase anterior e indique el
valor de la variables cont y suma en cada paso del bucle for, así como el valor de los argumentos
asignados:

Paso cont args[cont] suma


1 0 2 02
2 1 3 5
3 2 5 10
4 3 6 16
5 4 8 24

4. Desarrolle la clase Numero_Mayor que permita mostrar cuál es el número mayor de los argumentos
pasados (utilizar números enteros).
package numeromayor;
import java.util.Scanner;
public class NumeroMayor {
public static void main(String[] args) {

Scanner tem = new Scanner (System.in);

int n1, n2, n3, n4, n5;


System.out.println("ingrese el primer número: ");
n1 = tem.nextInt();
System.out.println("ingrese el segundo numero: ");
n2 = tem.nextInt();
System.out.println("ingrese el tercer numero: ");
n3 = tem.nextInt();
System.out.println("ingrese el cuarto numero: ");
n4 = tem.nextInt();
System.out.println("ingrese el quinto numero: ");
n5 = tem.nextInt();

if (n1 == n2 && n2 == n3 && n3 == n4 && n4 == n5){


System.out.println("los tres numeros son iguales");
} else if (n5>n1 && n5>n2 && n5>n3 && n5>n4);{
System.out.println("el numero mayor es:"+n5);
}
}
}
Nro. DD-106
Laboratorio de Fundamentos de Programación Página 3 de 8

5. Defina la siguiente clase, ejecútela y escriba (al costado del código) la salida obtenida:
public class Filas_Columnas { 1 1 1 1 1
public static void main(String[] args) { 2 2 2 2 2
int fil, col; 3 3 3 3 3
for(fil = 1; fil < 6; fil++) { 4 4 4 4 4
for(col = 1; col < 6; col++) 5 5 5 5 5
System.out.print(fil + "\t");
System.out.print("\n");
}
}
}

6. Modifique la clase anterior para que la salida sea la siguiente. Escriba, a un costado del siguiente cuadro, las
modificaciones realizadas al código:
1 public class Suma_argumentos {
1 2
1 2 3 public static void main(String[] args) {
1 2 3 4
1 2 3 4 5
for(int f=1; f<=5;f++){
for(int c=1; c<=5;c++){
if (c<=f){

System.out.print(c + "\t");
}else{
System.out.print(" " + "\t");
}
}
System.out.print("\n");
}

}
7. Modifique la clase anterior para que la salida sea la siguiente. Escriba, a un costado del siguiente cuadro, las
modificaciones realizadas al código:
1 public static void main(String[] args) {
2 3
3 4 5 for(int f=1;f<=5;f++){
4 5 6 7 for(int c=1; c<=5;c++){
5 6 7 8 9 if (c<=f){
System.out.print((c+f-1) + "\t");

}else{
System.out.print(" " + "\t");
}

}
System.out.print("\n");
}
}
}

8. Desarrolle la clase Rectangulo que permita imprimir la figura mostrada:


Nro. DD-106
Laboratorio de Fundamentos de Programación Página 4 de 8

* * * * * * * * public static void main(String[] args) {


* *
* * for(int f=1;f<=6;f++){
* * for(int c=1; c<=8;c++){
* * if ((f==2 || f==3 || f==4 || f==5)&&(c==2 || c==3 || c==4 || c==5 || c==6
* * * * * * * * || c==7)){
System.out.print(" " + "\t");
}else{
System.out.print("*" + "\t");
}
}
System.out.print("\n" );
}
}

9. Desarrolle la clase Triangulo que permita imprimir la figura mostrada:


*
* * package triangulo;
* * public class Triangulo {
* * public static void main(String[] args) {
* *
* * * * * * * * * * * int x=5;
for(int n1=0;n1<=x;n1++){
for(int m1=0;m1<=x-n1;m1++){
System.out.print(" ");
}
for(int qw=0;qw<=(n1*2);qw++){
System.out.print("*");
if(n1==x){
continue;
}
for(int m2=1;m2<n1*2;m2++){
System.out.print(" ");
qw++;
}
}
System.out.print("\n");
}
}

10. Desarrolle la clase Letra que imprima la letra Z usando asteriscos.:


Nro. DD-106
Laboratorio de Fundamentos de Programación Página 5 de 8

package letra;
* *. * *. *. *. * public class letra {
* public static void main(String[] args) {
*
*
* int cantF = 7;
* int cantCol = 7;
*. *. *. *. *. *. *
for (int f = 1; f <= cantF; f++) {
if (f == 1 || f == cantCol) {
for (int c = 1; c <= cantCol; c++) {
System.out.print("*" + "\t");
}//fin for columna

} else {

for (int z = 1; z <= cantCol - f; z++) {

System.out.print(" " + "\t");


}//fin for columna

System.out.print("*" + "\t");
}//fin del if

System.out.print("\n");
}//fin for de fila

}
}

11. Desarrolle la clase Seno que permita imprimir la siguiente figura mostrada:
*
* package triangulo;
* public class Triangulo {
* public static void main(String[] args) {
* int cf1 = 10;
* int esp1 = 8;
* int ae1 = 2;
* for (int f = 1; f <= cf1; f++) {
*
* if (f == 5 || f == 6) {
* esp1 = 17;
* ae1 = 0;
* }
* if (f == 7) {
* ae1 = -1;
* }
* if (f == 8) {
* ae1 = -2;
* }

esp1 = esp1 + ae1;


for (int col = 1; col <= esp1; col++) {
System.out.print(" " );
}//fin for de columna
System.out.print("*" + esp1+ "\n");

}//fin for de fila


int cf2 = 9;
int eb2 = 20;
int ie2 = -4;

for (int fila = 1; fila <= cf2; fila++) {


Nro. DD-106
Laboratorio de Fundamentos de Programación Página 6 de 8

if (fila == 4) {
ie2 = -2;
}

if (fila == 5) {
ie2 = 0;
}

if (fila == 6) {
ie2 = 1;
}

if (fila == 7) {
ie2 = 3;
}

if (fila == 8) {
ie2 = 4;
}

eb2 = eb2 + ie2;

for (int col = 1; col <= eb2; col++) {


System.out.print(" ");
}//fin for de columna
System.out.print("*" + eb2 + "\n");

}
}
Nro. DD-106
Laboratorio de Fundamentos de Programación Página 7 de 8

VIII.- OBSERVACIONES Y CONCLUSIONES


- Se tuvo complicaciones a la hora de hacer las figuras geométricas
- el procedimiento de cada ejercicio es diferente
- para todos los ejercicios se usa exclusivamente el for.
- cuando se usó el argumento for nos dimos cuenta que era similar al while
- se crea bucles para así poder simplificar un ejercicio.

-se concluyó que el argumento for es muy útil al momento de hacer bucles con figuras geométricas.
- re reconoció las funciones de for para crear bucles indefinidos
- se usó muy poco las repeticiones de break o continúe en los ejercicios
- se automatizo las tareas aplicando los argumentos de for, break, continúe en java.
- cada vez que apliquemos for siempre debe de ir acompañado de 2 llaves para que no nos bote error.

You might also like