You are on page 1of 22

Programación

Programación
Estructurada
Programación I
Prof. Gabriela Guevara
Estructura de ciclos for

• Ejemplo 1:
for(int n=1; n<=10;System.out.println(n),n++);

Salida:
1
2
3
4
5
6
7
8
9
10
Estructura de ciclos for

• Ejemplo 2:
for(int n=1; n<=10;n++)
System.out.println(n);

Salida:
1
2
3
4
5
6
7
8
9
10
Estructura de ciclos for

• Ejemplo 3:
Calcular la suma de los numeros enteros de 1 a 10

int suma=0;
for(int n=1; n<=10; n++)
suma=suma+n;

System.out.println("Total suma "+suma);

Salida:
Total suma 55
Estructura de ciclos for

• Ejemplo 4:
Calcular la suma de los numeros enteros de 1 a 10
int suma=0;
for(int n=1; n<=10;suma=suma+n,n++)
System.out.println("Suma "+suma);

Salida:
Suma 0
Suma 1
Suma 3
Suma 6
Suma 10
Suma 15
Suma 21
Suma 28
Suma 36
Suma 45
Estructura de ciclos for

• Solución al Ejemplo 4:
Calcular la suma de los numeros enteros de 1 a 10
int suma=0;

for(int n=1; n<=10;suma=suma+n,n++);

System.out.println("Suma "+suma);

Salida:
Colocar
Colocarpunto
puntoyycoma
coma(;)
(;)
Suma 55
Estructura de ciclos for

• ¿Qué sucede?:
Calcular la suma de los numeros enteros de 1 a 10
//int suma=0;

for(int n=1, suma=0; n<=10;suma=suma+n,n++);

System.out.println("Suma "+suma);

ERROR
No resuelve que es la variable suma
Estructura de ciclos for

• ¿Qué sucede?:
Calcular la suma de los numeros enteros de 1 a 10
int suma=0;

for(int n=1, suma=0; n<=10;suma=suma+n,n++);

System.out.println("Suma "+suma);

ERROR
Variable suma ya esta definida
Estructura de ciclos for

• Solución correcta:
Calcular la suma de los numeros enteros de 1 a 10
int suma=0;

for(int n=1; n<=10;suma=suma+n,n++);

System.out.println("Suma "+suma);

Salida:
Suma 55
Estructura de ciclos for

• ¿Qué sucede sí?:


invierto orden

for(int n=1; n<=10;n++,System.out.println(n));

Salida:
2
3
4
5
6
7
8
9
10
11
Estructura de ciclos for

• ¿Qué sucede sí?:


Calcular la suma de los numeros enteros de 1 a 10
int suma=0; invierto orden

for(int n=1; n<=10; n++, suma=suma+n);

System.out.println("Suma "+suma);

Salida:
Suma 65

El resultado correcto debe ser 55 y no 65


Estructura de ciclos while

Ejemplo 1 (Uso while y switch):

Un conjunto de 10 películas fueron calificadas con la


siguiente:

10 = excelente 9 = buena
8 = regular 7 = mala

Se desea conocer cuántas películas se agruparon en cada


categoría:

Nota: para switch, solo se pueden considerar


valores enteros (int) y
caracteres (char)
Estructura de ciclos while
Salida para el Ejemplo 1 (Uso while y switch):
Estructura de ciclos while
SOLUCIÓN para el Ejemplo 1 (Uso while y switch):
int nota, cont = 1;
int cont10 = 0, cont9 = 0, cont8 = 0, cont7 = 0;

while(cont <= 10) {


nota = Integer.parseInt(JOptionPane.showInputDialog(null,
"Nota película " + cont,
"Entrada de Datos",
JOptionPane.QUESTION_MESSAGE));
switch (nota) {
case 10:
cont10++;
break;
case 9:
cont9++;
break;
case 8:
cont8++;
break;
case 7:
cont7++;
break;
default:
JOptionPane.showMessageDialog(null,"Nota en letra no válida","ERROR",
JOptionPane.ERROR_MESSAGE);
cont--;
break;
}//Fin del switch
cont++;
}// while
Estructura de ciclos while
SOLUCIÓN para el Ejemplo 1 (Uso while y switch):

String mensaje = "Excelentes: " + cont10 + "\n" +


"Buenas: " + cont9 + "\n" +
"Regulares: " + cont10 + "\n" +
"Malas: " + cont10;

JOptionPane.showMessageDialog(null, mensaje, "Resultado",JOptionPane.INFORMATION_MESSAGE);


Operador ternario
expresion ? operacion1 : operacion2

igual a

(expresion ? valor si es verdadero : valor falso)

nota >= 85 ? “Excelente” : “No excelente”;


Operador ternario
EJEMPLO 1

• Supongamos que debemos realizar un programa que calcule la distancia entre dos
números. Para lograrlo, tomamos el mayor y le restamos el menor. (If / else)

int a = 12;
int b = 23;
int j;

//ó a=23, b=12;

if ( a > b )
j = a - b;
else
j = b - a;

System.out.println("El resultado es: " + j );


Operador ternario
EJEMPLO 1, Solución con operador ternario

int a = 12;

int b = 23;

int j = a > b ? a - b : b - a;

System.out.println("El resultado es: " + j );


Operador ternario
EJEMPLO 2

Imprimir Excelente para nota mayor o igual que 85


Imprimir Bueno para nota entre 70 y 85 (84 imprime Bueno)
Imprimir Malo para nota menor a 70

Solucion con if/else

int nota=90;
String salida="";
if(nota >= 85)
salida="Excelente";
else if(nota>=70 && nota <85)
salida="Bueno";
else
salida="Malo";
System.out.print(salida);
Operador ternario
EJEMPLO 2

Imprimir Excelente para nota mayor o igual que 85


Imprimir Bueno para nota entre 70 y 85 (84 imprime
Bueno)
Imprimir Malo para nota menor a 70

Solucion con operador ternario


int nota=70;

String valor = (nota>=85?"Excelente":(nota>=70 && nota<85?"Bueno":"Malo"));


System.out.println(valor);

De otra manera:
System.out.println((nota>=85?"Excelente":(nota>=70 && nota<85?"Bueno":"Malo")));
Operador ternario
OTRO EJEMPLO

public class OperadorTernario{


public static void main(String args[]){
int edadPedro = 25;

String opcion1="Pedro es mayor de edad y puede votar";

String opcion2="Pedro es menor de edad y no puede votar";

//El valor que devuelve el operador ternario se recoge en una String

String respuesta = edadPedro>=18?opcion1:opcion2;

System.out.println(respuesta);
}
}
Estructura de ciclos for (anidados)
Desarrollar ejemplos

You might also like