SlideShare una empresa de Scribd logo
1 de 86
Descargar para leer sin conexión
ESTRUCTURAS DE CONTROL

Algoritmia y Programación
CONTENIDO
Estructuras de Control
if-else

switch-case
Ejercicios

EISC
Universidad del Valle - Algoritmia y Programación

Slide 2
ESTRUCTURAS DE CONTROL
 La forma de tomar decisiones en un programa es a través
de las Estructuras de Control.

EISC
Universidad del Valle - Algoritmia y Programación

Slide 3
ESTRUCTURAS DE CONTROL
 La forma de tomar decisiones en un programa es a través
de las Estructuras de Control.
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no

EISC
Universidad del Valle - Algoritmia y Programación

Slide 4
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: ??
 Salidas: ??
 Proceso:??

EISC
Universidad del Valle - Algoritmia y Programación

Slide 5
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: edad
 Salidas: ??
 Proceso:??

EISC
Universidad del Valle - Algoritmia y Programación

Slide 6
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: edad
 Salidas: impresión de mensaje de texto (anuncio)
 Proceso:??

EISC
Universidad del Valle - Algoritmia y Programación

Slide 7
Conceptos preliminares
Análisis del problema

edad

Proceso?

Impresión de
mensaje

EISC
Universidad del Valle - Algoritmia y Programación

Slide 8
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: edad
 Salidas: mensaje de texto
 Proceso:
SI la edad es mayor o igual que 18

EISC
Universidad del Valle - Algoritmia y Programación

Slide 9
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: edad
 Salidas: mensaje de texto
 Proceso:
SI la edad es mayor o igual que 18
Mostrar el mensaje “Usted es mayor de edad”.

EISC
Universidad del Valle - Algoritmia y Programación

Slide 10
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: edad
 Salidas: mensaje de texto
 Proceso:
SI la edad es mayor o igual que 18
Mostrar el mensaje “Usted es mayor de edad”.
SI NO

EISC
Universidad del Valle - Algoritmia y Programación

Slide 11
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
1. Análisis del problema
 Entradas: edad
 Salidas: mensaje de texto
 Proceso:
SI la edad es mayor o igual que 18
Mostrar el mensaje “Usted es mayor de edad”.
SI NO
mostrar el mensaje “Usted es menor de edad”

EISC
Universidad del Valle - Algoritmia y Programación

Slide 12
Conceptos preliminares
Análisis del problema

edad

Si edad > = 18
Imprimir usted es mayor de edad
Sino
Imprimir usted es menor de edad

Impresión
de mensaje

EISC
Universidad del Valle - Algoritmia y Programación

Slide 13
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
???

Fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 14
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
??

Como expresar la
condición “la edad es
mayor que 18” en
pseudocódigo??

Fin

EISC
Universidad del Valle - Algoritmia y Programación

Slide 15
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
SI edad >= 18

Fin

EISC
Universidad del Valle - Algoritmia y Programación

Slide 16
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
SI edad > =18
imprimir(“Usted es mayor de edad”)

Fin

EISC
Universidad del Valle - Algoritmia y Programación

Slide 17
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
SI edad > =18
imprimir(“Usted es mayor de edad”)

SINO
Fin

EISC
Universidad del Valle - Algoritmia y Programación

Slide 18
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
SI edad > =18
imprimir(“Usted es mayor de edad”)

SINO
imprimir(“Usted es menor de edad”)
Fin

EISC
Universidad del Valle - Algoritmia y Programación

Slide 19
EJERCICIO ESTRUCTURA

DE CONTROL

 Problema: Se requiere de un programa que permita leer:
dos números enteros y la opción de la operación
matemática que deseen realizar:
opción

operación

1

Suma

2

Resta

3

Multiplicación

4

División

Según la opción elegida se debe mostrar el resultado de la
operación sobre los dos números

EISC
Universidad del Valle - Algoritmia y Programación

Slide 20
OPERADORES RELACIONALES
Actúan sobre valores enteros, reales y caracteres. Estos
operadores retorna un valor booleano.

EISC
Universidad del Valle - Algoritmia y Programación

Slide 21
OPERADORES RELACIONALES
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n es menor que 30

 n es igual que 60

 n es mayor o igual que 90

EISC
Universidad del Valle - Algoritmia y Programación

Slide 22
OPERADORES RELACIONALES
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n es menor que 30
n < 30
 n es igual que 60

 n es mayor o igual que 90

EISC
Universidad del Valle - Algoritmia y Programación

Slide 23
OPERADORES RELACIONALES
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n es menor que 30
n < 30
 n es igual que 60
n==60
 n es mayor o igual que 90
n>=90

EISC
Universidad del Valle - Algoritmia y Programación

Slide 24
OPERADORES LÓGICOS
Actúan sobre operadores o expresiones lógicas, como las
tablas de verdad.

EISC
Universidad del Valle - Algoritmia y Programación

Slide 25
OPERADORES LÓGICOS
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n pertenece al rango [-10,30]

 n es menor o igual que 40

 n es diferente de 30 ó mayor que 100

EISC
Universidad del Valle - Algoritmia y Programación

Slide 26
OPERADORES LÓGICOS
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n pertenece al rango [-10,30]
((n>=-10) && (n<=30))
 n es menor o igual que 40

 n es diferente de 30 ó mayor que 100

EISC
Universidad del Valle - Algoritmia y Programación

Slide 27
OPERADORES LÓGICOS
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n pertenece al rango [-10,30]
((n>=-10) && (n<=30))
 n es menor o igual que 40
n<=40
 n es diferente de 30 ó mayor que 100

EISC
Universidad del Valle - Algoritmia y Programación

Slide 28
OPERADORES LÓGICOS
 Ejercicio:
int n;
Exprese las siguientes condiciones en java:
 n pertenece al rango [-10,30]
((n>=-10) && (n<=30))
 n es menor o igual que 40
n<=40
 n es diferente de 30 ó mayor que 100
((n!=30 ) || (n>100))

EISC
Universidad del Valle - Algoritmia y Programación

Slide 29
EJERCICIO ESTRUCTURA

DE CONTROL

 Problema: Se requiere de un programa que permita leer:
la cédula,
salario básico y año de vinculación de un
empleado y que permita calcular su salario neto sabiendo
que:
Si gana más de $1200000 y entro a trabajar después de
1990 se le debe descontar un 8%.
Si gana menos de 550000 ó entró a trabajar en 1990 se le
descuenta 2%.
En cualquier otro caso se descontará el 5% del salario.
El programa debe imprimir la cédula y salario neto del
empleado.
EISC
Universidad del Valle - Algoritmia y Programación

Slide 30
EJERCICIO

IF-ELSE

1. Análisis del problema
 Entradas: cedula, ahno, salarioBasico
 Salidas: salarioNeto
 Proceso:
??

cedula ahno,
salarioBasico

Proceso?

cedula
salarioNeto

EISC
Universidad del Valle - Algoritmia y Programación

Slide 31
EJERCICIO

IF-ELSE

1. Análisis del problema
 Entradas: cedula, ahno, salarioBasico
 Salidas: salarioNeto
 Proceso:
SI el salarioBasico es mayor que 1200000, y el ahno es mayor 1990
salarioNeto= salarioBasico - salarioBasico *0.08
SINO
SI el salarioBasico es menor que 550000, o el ahno es igual 1990
salarioNeto= salarioBasico - salarioBasico *0.02
SINO
salarioNeto= salarioBasico - salarioBasico *0.05
EISC
Universidad del Valle - Algoritmia y Programación

Slide 32
Conceptos preliminares
Análisis del problema

SI el salarioBasico > 1200000 y
ahno es >1990

cedula ahno,
salarioBasico

salarioNeto= salarioBasico - ( salarioBasico *0.08 )

SINO
SI el salarioBasico > 550000, o ahno == 1990

cedula
salarioNeto

salarioNeto= salarioBasico - salarioBasico *0.02

SINO
salarioNeto= salarioBasico - salarioBasico *0.05

EISC
Universidad del Valle - Algoritmia y Programación

Slide 33
EJERCICIO

IF-ELSE

2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
cedula, ahno: entero
salarioBasico, salarioNeto: real
leer(cedula)
leer(ahno)
leer(salarioBasico)

???
imprimir(cedula)
imprimir(salarioNeto)

fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 34
EJERCICIO

IF-ELSE

2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
cedula, ahno: entero
salarioBasico, salarioNeto: real
leer(cedula)
leer(ahno)
leer(salarioBasico)
SI (salarioBasico > 1200000) Y (ahno>1990)
salarioNeto= salarioBasico – (salarioBasico *0.08 )
SINO
SI (salarioBasico < 550000) O (ahno==1990)
salarioNeto= salarioBasico – (salarioBasico *0.02)
SINO
salarioNeto= salarioBasico – (salarioBasico *0.05)

imprimir(cedula)
imprimir(salarioNeto)
fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 35
EJERCICIO

IF-ELSE

3. Realizar una prueba de escritorio para el algoritmo

Cédula

Año
vinculación

Salario
Bruto

Salario
Neto

11301245

2000

1.300.000

1.170.000

3036978

1990

400.000

392.000

5045893

1985

2.000.000

1.900.000

EISC
Universidad del Valle - Algoritmia y Programación

Slide 36
EJERCICIO

IF-ELSE

Pasando a Java…..

EISC
Universidad del Valle - Algoritmia y Programación

Slide 37
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
4. Codificar el algoritmo usando algún lenguaje de
programación

pseudocódigo

Java

SI edad > 18
imprimir(“Usted es mayor de edad”)
SINO
imprimir(“Usted es menor de edad”)

EISC
Universidad del Valle - Algoritmia y Programación

Slide 38
ESTRUCTURAS DE CONTROL
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
4. Codificar el algoritmo usando algún lenguaje de
programación

pseudocódigo
SI edad >= 18
imprimir(“Usted es mayor de edad”)
SINO
imprimir(“Usted es menor de edad”)

Java

Estructura
de Control
if-else

EISC
Universidad del Valle - Algoritmia y Programación

Slide 39
ESTRUCTURA

IF-ELSE

SI edad >= 18
imprimir(“Usted es mayor de edad”)
SINO
imprimir(“Usted es menor de edad”)

EISC
Universidad del Valle - Algoritmia y Programación

Slide 40
ESTRUCTURA

IF-ELSE

SI (edad >= 18)

Las condiciones en
Java se colocan
entre paréntesis

imprimir(“Usted es mayor de edad”)
SINO
imprimir(“Usted es menor de edad”)

EISC
Universidad del Valle - Algoritmia y Programación

Slide 41
ESTRUCTURA

IF-ELSE
El pseudocodigo SI,
se reemplaza por la
palabra reservada if

if (edad >= 18)
{
imprimir(“Usted es mayor de edad”)
}
SINO

imprimir(“Usted es menor de edad”)

EISC
Universidad del Valle - Algoritmia y Programación

Slide 42
ESTRUCTURA

IF-ELSE

if (edad >= 18)
{
imprimir(“Usted es mayor de edad”)
}
else
{
imprimir(“Usted es menor de edad”)
}

El pseudocodigo
SINO, se reemplaza
por la palabra
reservada else

EISC
Universidad del Valle - Algoritmia y Programación

Slide 43
ESTRUCTURA

IF-ELSE
SI edad >= 18
imprimir(“Usted es mayor de edad”)
SINO
imprimir(“Usted es menor de edad”)

if (edad >= 18)
{
JOptionPane.showMessageDialog(null,“Usted es mayor de edad”);

}
else
{
JOptionPane.showMessageDialog(null,“Usted es menor de edad”);

}

EISC
Universidad del Valle - Algoritmia y Programación

Slide 44
ESTRUCTURA

IF-ELSE

La estructura de control if-else permite ejecutar una serie
de instrucciones solo cuando se cumple una condición
establecida

EISC
Universidad del Valle - Algoritmia y Programación

Slide 45
ESTRUCTURA

IF-ELSE

La estructura de control if-else permite ejecutar una serie
de instrucciones solo cuando se cumple una condición
establecida

EISC
Universidad del Valle - Algoritmia y Programación

Slide 46
ESTRUCTURA IF-ELSE
 Problema: Desarrollar una aplicación Java que solicite la
edad de una persona e indique si es mayor de edad o no
2. Diseñar el algoritmo y escribirlo en pseudocódigo
Inicio
edad: entero
leer (edad)
SI edad >= 18
imprimir(“Usted es mayor de edad”)

SINO
Fin

imprimir(“Usted es menor de edad”)

EISC
Universidad del Valle - Algoritmia y Programación

Slide 47
ESTRUCTURA

IF-ELSE
Inicio
edad: entero

public class MayorEdad
leer (edad)
{
public static void main(String args[])
SI edad >= 18
{
imprimir(“Usted es mayor de edad”)
// Variable de entrada
SINO
imprimir(“Usted es menor de edad”)
int edad;
Fin
// Lectura de los datos de entrada
edad=Integer.parseInt(JOptionPane.showInputDialog(“Ingrese su edad:”));
// Proceso
if (edad>=18)
{
JOptionPane.showMessageDialog(null,"Usted es mayor de edad");
}
else
{
JOptionPane.showMessageDialog(null,"Usted es menor de edad");
}
}
}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 48
EJERCICIO

IF-ELSE

2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
cedula, ahno: entero
salarioBasico, salarioNeto: real
leer(cedula)
leer(ahno)
leer(salarioBasico)
SI (salarioBasico > 1200000) Y (ahno>1990)
salarioNeto= salarioBasico - salarioBasico *0.08
SINO
SI (salarioBasico < 550000) O (ahno==1990)
salarioNeto= salarioBasico - salarioBasico *0.02
SINO
salarioNeto= salarioBasico - salarioBasico *0.05

imprimir(cedula)
imprimir(salarioNeto)
fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 49
EJERCICIO

IF-ELSE

4. Codificar el algoritmo usando algún lenguaje de programación
pseudocódigo

SI (salarioBasico > 1200000) Y (ahno>1990)
salarioNeto= salarioBasico - salarioBasico *0.08
SINO
SI (salarioBasico < 550000) O (ahno==1990)
salarioNeto= salarioBasico - salarioBasico *0.02
SINO
salarioNeto= salarioBasico - salarioBasico *0.05

Código Java

EISC
Universidad del Valle - Algoritmia y Programación

Slide 50
EJERCICIO

IF-ELSE

4. Codificar el algoritmo usando algún lenguaje de programación
pseudocódigo

SI (salarioBasico > 1200000) Y (ahno>1990)
salarioNeto= salarioBasico - salarioBasico *0.08
SINO
SI (salarioBasico < 550000) O (ahno==1990)
salarioNeto= salarioBasico - salarioBasico *0.02
SINO
salarioNeto= salarioBasico - salarioBasico *0.05

Código Java
if ((salarioBasico > 1200000) && (ahno>1990)){
salarioNeto= salarioBasico - salarioBasico*0.08;
}
else{
if((salarioBasico < 550000) || (ahno==1990)){
salarioNeto= salarioBasico - salarioBasico*0.02;
}
else{
salarioNeto= salarioBasico - salarioBasico*0.05;
}

}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 51
EJERCICIO
4.

IF-ELSE

Codificar el algoritmo usando algún lenguaje de programación

import javax.swing.JOptionPane;
public class Nomina {
public static void main(String args[])
{ int cedula, ahno; double salarioBasico, salarioNeto;
cedula =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese cedula:”));
ahno =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese ahno:”));
salarioBasico =Double.parseDouble(JOptionPane.showInputDialog(“Ingrese salario básico:”));
if ((salarioBasico > 1200000) && (ahno>1990))
{
salarioNeto= salarioBasico - salarioBasico*0.08;
}
else
{
if((salarioBasico < 550000) || (ahno==1990))
{
salarioNeto= salarioBasico - salarioBasico*0.02;
}
else
{
salarioNeto= salarioBasico - salarioBasico*0.050;
}
}
JOptionPane.showMessageDialog(null,“cedula:“+ cedula+”n”+”salario neto:”+ salarioNeto);
}}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 52
EJERCICIO
4.

IF-ELSE

Codificar el algoritmo usando algún lenguaje de programación

import javax.swing.JOptionPane;
public class Nomina {
public static void main(String args[])
{ int cedula, ahno; double salarioBasico, salarioNeto;
cedula =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese cedula:”));
ahno =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese ahno:”));
salarioBasico =Double.parseDouble(JOptionPane.showInputDialog(“Ingrese salario básico:”));
if ((salarioBasico > 1200000) && (ahno>1990))
{
salarioNeto= salarioBasico - salarioBasico*0.08;
}
else
{
if((salarioBasico < 550000) || (ahno==1990))
{
salarioNeto= salarioBasico - salarioBasico*0.02;
}
else
{
salarioNeto= salarioBasico - salarioBasico*0.050;
}
}
JOptionPane.showMessageDialog(null,“cedula:“+ cedula+”n”+”salario neto:”+ salarioNeto);
}}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 53
EJERCICIO

IF-ELSE

4. Codificar el algoritmo usando algún lenguaje de programación

Ver código fuente Nomina.java en el campus del
curso…

EISC
Universidad del Valle - Algoritmia y Programación

Slide 54
Más estructuras de control….

EISC
Universidad del Valle - Algoritmia y Programación

Slide 55
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
resumiendo cuando se tengan varios if-else anidados

EISC
Universidad del Valle - Algoritmia y Programación

Slide 56
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
resumiendo cuando se tengan varios if-else anidados
 En pseudocódigo

según sea(x)
caso 1: instrucciones_1
caso 2: instrucciones_2
…
caso n: instrucciones_n
por defecto: instrucciones_por_defecto
fin según sea
EISC
Universidad del Valle - Algoritmia y Programación

Slide 57
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
resumiendo cuando se tengan varios if-else anidados

 En pseudocodigo

según sea(x)
caso 1
:
caso 2
:
…
caso n
:
por defecto:
fin según sea

instrucciones_1
instrucciones_2

La variable x debe ser de
tipo entero, o de tipo
carácter o de tipo String.

No se permiten
otros tipos de datos.

instrucciones_n
instrucciones_por_defecto

EISC
Universidad del Valle - Algoritmia y Programación

Slide 58
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
permitiendo resumir
cuando se tengan varios if-else
anidados

 En código java
switch(x)
{
caso 1
:
caso 2
:
caso n
:
por defecto:
}

El pseudocógido según sea se
reemplaza por la palabra
reservada switch

instrucciones_1
instrucciones_2
instrucciones_n
instrucciones_df

EISC
Universidad del Valle - Algoritmia y Programación

Slide 59
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
permitiendo resumir
cuando se tengan varios if-else
anidados
 En código java

switch(x)
{
case 1
:
case 2
:
case n
:
por defecto:
}

El pseudocódigo caso se
reemplaza por la palabra
reservada case
instrucciones_1
instrucciones_2
instrucciones_n
instrucciones_df

EISC
Universidad del Valle - Algoritmia y Programación

Slide 60
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
permitiendo resumir
cuando se tengan varios if-else
anidados
 En código java

switch(x)
{
case 1
case 2
case n
default
}

:
:
:
:

instrucciones_1
instrucciones_2 El pseudocódigo por
instrucciones_n defecto se reemplaza por
la palabra reservada
instrucciones_df
default

EISC
Universidad del Valle - Algoritmia y Programación

Slide 61
ESTRUCTURA SWITCH -CASE
 Permite manejar varias opciones de forma sencilla,
permitiendo resumir
cuando se tengan varios if-else
anidados
Al finalizar de cada bloque
de instrucciones se debe
 En código java
agregar la instrucción
break; Para indicar el final
switch(x)
de cada caso.
{
case 1
: instrucciones_1; break;
case 2
: instrucciones_2 ; break;
case n
: instrucciones_n ; break;
default
: instrucciones_df ; break;
}

EISC
Universidad del Valle - Algoritmia y Programación

Slide 62
ESTRUCTURA SWITCH -CASE
Problema: Desarrollar una aplicación en java que reciba un
entero correspondiente a una categoría y el total de ventas
de un empleado y retorne la comisión que recibe.
Tome en cuenta la siguiente tabla.
categoría

Comisión

1

10%

2

20%

3

35%

4

45%

5

50%

6

60%

EISC
Universidad del Valle - Algoritmia y Programación

Slide 63
ESTRUCTURA SWITCH -CASE
1. Análisis del problema
 Entradas: ??
 Salidas: ??
 Proceso:??

EISC
Universidad del Valle - Algoritmia y Programación

Slide 64
ESTRUCTURA SWITCH -CASE
1. Análisis del problema
 Entradas: categoria, ventas
 Salidas: comision
 Proceso:??

categoria
ventas

Proceso?

comision

EISC
Universidad del Valle - Algoritmia y Programación

Slide 65
ESTRUCTURA SWITCH -CASE
1. Análisis del problema
 Entradas: categoria, ventas
 Salidas: comision
 Proceso:
SEGÚN SEA categoria

EISC
Universidad del Valle - Algoritmia y Programación

Slide 66
ESTRUCTURA SWITCH -CASE
1. Análisis del problema
 Entradas: categoria, ventas
 Salidas: comision
 Proceso:
SEGÚN SEA categoria
caso 1 : comision = ventas * 0.1

EISC
Universidad del Valle - Algoritmia y Programación

Slide 67
ESTRUCTURA SWITCH -CASE
1. Análisis del problema
 Entradas: categoria, ventas
 Salidas: comision
 Proceso:
SEGÚN SEA categoria
caso 1 : comision = ventas * 0.1
caso 2 : comision = ventas * 0.2

EISC
Universidad del Valle - Algoritmia y Programación

Slide 68
ESTRUCTURA SWITCH -CASE
1. Análisis del problema
 Entradas: categoria, ventas
 Salidas: comision
 Proceso:
SEGÚN SEA categoria
caso 1 : comision = ventas * 0.1
caso 2 : comision = ventas * 0.2
caso 3 : comision = ventas * 0.35
caso 4 : comision = ventas * 0.45
caso 5 : comision = ventas * 0.5
caso 6 : comision = ventas * 0.6
Por defecto : imprimir(“Categoría inexistente”)
EISC
Universidad del Valle - Algoritmia y Programación

Slide 69
ESTRUCTURA SWITCH -CASE
2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
categoria: entero
ventas, comision: real
leer(categoria)
leer(ventas)

???

imprimir(comision)

fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 70
ESTRUCTURA SWITCH -CASE
2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
categoria: entero
ventas, comision: real
leer(categoria)
leer(ventas)
Según sea categoria
caso 1: comision = ventas * 0.1
caso 2: comision = ventas * 0.2
caso 3: comision = ventas * 0.35
caso 4: comision = ventas * 0.45
caso 5: comision = ventas * 0.5
caso 6: comision = ventas * 0.6
por defecto: imprimir(“categoría inexistente”)
fin según_sea
imprimir(comision)

fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 71
ESTRUCTURA SWITCH -CASE
4. Codificar el algoritmo usando algún lenguaje de
programación
Según sea categoria
caso 1: comision = ventas * 0.1
caso 2: comision = ventas * 0.2
caso 3: comision = ventas * 0.35
caso 4: comision = ventas * 0.45
caso 5: comision = ventas * 0.5
caso 6: comision = ventas * 0.6
por defecto: imprimir(“categoría inexistente”)
fin según_sea

EISC
Universidad del Valle - Algoritmia y Programación

Slide 72
ESTRUCTURA SWITCH -CASE
4. Codificar el algoritmo usando algún lenguaje de
programación
switch(categoria)
{
case 1: comision = ventas * 0.1; break;
case 2: comision = ventas * 0.2; break;
case 3: comision = ventas * 0.35; break;
case 4: comision = ventas * 0.45; break;
case 5: comision = ventas * 0.5; break;
case 6: comision = ventas * 0.6; break;
default: JoptionPane.showMessageDialog(null, “Categoría Inexistente”);
}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 73
ESTRUCTURA

IF-ELSE

public class ComisionEmpleado{
public static void main(String args[])
{ // Variables de entrada y salida
int categoria; double ventas; double comision;
// Lectura de los datos de entrada

categoria =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese categoria:”));
ventas =Double.parseDouble(JOptionPane.showInputDialog(“Ingrese venta:”));
// Proceso
switch(categoria) {
case 1: comision = ventas * 0.1; break;
case 2: comision = ventas * 0.2; break;
case 3: comision = ventas * 0.35; break;
case 4: comision = ventas * 0.45; break;
case 5: comision = ventas * 0.5; break;
case 6: comision = ventas * 0.6; break;
default: JOptionPane.showMessageDialog(null,“categoria inexistente”);
}
//imprimir

JOptionPane.showMessageDialog(null,“la comision es “+ comision);
}}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 74
EJERCICIO
 Problema: Emcali requiere recalcular la factura de energía
de los consumidores. Para ello, se necesita de un programa
que lea el estrato social y el valor de consumo del cliente, y
determine el valor básico a adicionar para establecer el
nuevo valor de la factura.
El programa debe reportar el nuevo valor de la factura.
Para saber los valores básicos que corresponde a cada
categoría use la siguiente tabla:
Estrato

Valor Base

1

500

2

700

3

4800

4

6700

Si se digita una categoría
que no esté en la tabla se
debe mostrar un mensaje
indicando que la categoría
no es válida.

EISC
Universidad del Valle - Algoritmia y Programación

Slide 75
Anexos

EISC
Universidad del Valle - Algoritmia y Programación

Slide 76
EJERCICIO

SWITCH-CASE

 Problema: Emcali requiere recalcular la factura de energía
de los consumidores. Para ello, se necesita de un programa
que lea el estrato social y el valor de consumo del cliente, y
determine el valor básico a adicionar para establecer el
nuevo valor de la factura. Para saber los valores básicos
que corresponde a cada categoría use la siguiente tabla:

Estrato

Valor Base

1

500

2

700

3

4800

4

6700

Si
se
digita
una
categoría que no esté en
la tabla se debe mostrar
un mensaje indicando
que la categoría no es
válida.

EISC
Universidad del Valle - Algoritmia y Programación

Slide 77
EJERCICIO

SWITCH-CASE

1. Análisis del problema
 Entradas: estrato, consumo
 Salidas: valorFactura
 Proceso:
??

EISC
Universidad del Valle - Algoritmia y Programación

Slide 78
EJERCICIO

SWITCH-CASE

1. Análisis del problema
 Entradas: estrato, consumo
 Salidas: valorFactura
 Proceso:
Si estrato es 1, valorFactura = consumo + 500
Si estrato es 2, valorFactura = consumo + 700
Si estrato es 3, valorFactura = consumo + 4800
Si estrato es 4, valorFactura = consumo + 5700

EISC
Universidad del Valle - Algoritmia y Programación

Slide 79
EJERCICIO

SWITCH-CASE

2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
estrato: entero
consumo, valorFactura: real
leer(categoria)
leer(consumo)

??

imprimir(valorFactura)

fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 80
EJERCICIO

SWITCH-CASE

2. Diseñar el algoritmo y escribirlo en pseudocódigo
inicio
estrato: entero
consumo, valorFactura: real
leer(categoria)
leer(consumo)
según sea categoria
caso 1: valorFactura = consumo + 500
caso 2: valorFactura = consumo + 700
caso 3: valorFactura = consumo + 4800
caso 4: valorFactura = consumo + 5700
defecto : imprimir(“categoría no válida”)
fin según_sea
imprimir(valorFactura)
EISC

fin

Universidad del Valle - Algoritmia y Programación

Slide 81
EJERCICIO

SWITCH-CASE

3. Realizar una prueba de escritorio para el algoritmo

inicio

Valor
Consumo

Valor
Factura

1

20000

20500

2

79000

79700

3

200100

20490

4

estrato: entero
consumo, valorFactura: real
leer(categoria)
leer(consumo)

Estrato

600540

607240

según sea categoria
caso 1: valorFactura = consumo + 500
caso 2: valorFactura = consumo + 700
caso 3: valorFactura = consumo + 4800
caso 4: valorFactura = consumo + 5700
defecto : imprimir(“categoría no válida”)
fin según_sea
imprimir(valorFactura)

fin
EISC
Universidad del Valle - Algoritmia y Programación

Slide 82
EJERCICIO

SWITCH-CASE

4. Codificar el algoritmo usando algún lenguaje de programación
pseudocódigo
según sea categoria
caso 1: valorFactura = consumo + 500
caso 2: valorFactura = consumo + 700
caso 3: valorFactura = consumo + 4800
caso 4: valorFactura = consumo + 5700
fin según_sea
Código Java

EISC
Universidad del Valle - Algoritmia y Programación

Slide 83
EJERCICIO

SWITCH-CASE

4. Codificar el algoritmo usando algún lenguaje de programación
pseudocódigo
según sea categoria
caso 1: valorFactura = consumo + 500
caso 2: valorFactura = consumo + 700
caso 3: valorFactura = consumo + 4800
caso 4: valorFactura = consumo + 5700
fin según_sea
Código Java
switch(estrato){
case 1: valorFactura=consumo + 500; break;
case 2: valorFactura=consumo + 700; break;
case 3: valorFactura=consumo + 4800; break;
case 4: valorFactura=consumo + 5700; break;
default : JOptionPane.showMessageDialog(null,“Categoría no válida”); break:

}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 84
EJERCICIO
4.

SWITCH-CASE

Codificar el algoritmo usando algún lenguaje de programación

import javax.swing.JOptionPane;
public class Factura{
public static void main(String args[])
{ // Variables de entrada y salida
int estrato; double consumo,valorFactura;
// Lectura de los datos de entrada
estrato =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese estrato:”));
consumo=Double.parseDouble(JOptionPane.showInputDialog(“Ingrese consumo:”));
// Proceso
switch(estrato){
case 1: valorFactura=consumo + 500; break;
case 2: valorFactura=consumo + 700; break;
case 3: valorFactura=consumo + 4800; break;
case 4: valorFactura=consumo+ 5700; break;
default : JOptionPane.showMessageDialog(null,“Categoría no válida”); break:}
//imprimir
JOptionPane.showMessageDialog(null,“el nuevo valor de factura“+ valorFactura);
}}
EISC
Universidad del Valle - Algoritmia y Programación

Slide 85
EJERCICIO

SWITCH-CASE

4. Codificar el algoritmo usando algún lenguaje de programación

Ver código fuente Factura.java en el campus del
curso…

EISC
Universidad del Valle - Algoritmia y Programación

Slide 86

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Graficar lineas en java, en un j panel
Graficar lineas en java, en un j panelGraficar lineas en java, en un j panel
Graficar lineas en java, en un j panel
 
Fundamentos de Programacion - Unidad 2 Algoritmos
Fundamentos de Programacion - Unidad 2 AlgoritmosFundamentos de Programacion - Unidad 2 Algoritmos
Fundamentos de Programacion - Unidad 2 Algoritmos
 
Ejercicio 2 de computacion ing
Ejercicio 2 de computacion ingEjercicio 2 de computacion ing
Ejercicio 2 de computacion ing
 
Introduccion a python 3
Introduccion a python 3Introduccion a python 3
Introduccion a python 3
 
Encapsulamiento
EncapsulamientoEncapsulamiento
Encapsulamiento
 
Ejercicios de raptor
Ejercicios de raptor Ejercicios de raptor
Ejercicios de raptor
 
Greenfoot 2
Greenfoot 2Greenfoot 2
Greenfoot 2
 
Greenfoot 4
Greenfoot 4Greenfoot 4
Greenfoot 4
 
arreglos y matrices
arreglos  y matricesarreglos  y matrices
arreglos y matrices
 
Greenfoot 3
Greenfoot 3Greenfoot 3
Greenfoot 3
 
10 ejercicios-de-do-while
10 ejercicios-de-do-while10 ejercicios-de-do-while
10 ejercicios-de-do-while
 
Condicion Si ANIDADA
Condicion Si ANIDADACondicion Si ANIDADA
Condicion Si ANIDADA
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventos
 
Diseño algorítmico
Diseño algorítmicoDiseño algorítmico
Diseño algorítmico
 
Ejercicios de arreglo
Ejercicios de arregloEjercicios de arreglo
Ejercicios de arreglo
 
Estructura secuencial
Estructura secuencialEstructura secuencial
Estructura secuencial
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Greenfoot 1
Greenfoot 1Greenfoot 1
Greenfoot 1
 
Presentacion arbol-binario
Presentacion arbol-binarioPresentacion arbol-binario
Presentacion arbol-binario
 
Greenfoot 10
Greenfoot 10Greenfoot 10
Greenfoot 10
 

Destacado

Concepto Básicos Algoritmia
Concepto Básicos Algoritmia Concepto Básicos Algoritmia
Concepto Básicos Algoritmia Daniel Gómez
 
C1 intro java
C1 intro javaC1 intro java
C1 intro javaalenco
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectivaIEO Santo Tomás
 
Ciclos Java - NetsBeans - Algoritmia
Ciclos Java - NetsBeans - AlgoritmiaCiclos Java - NetsBeans - Algoritmia
Ciclos Java - NetsBeans - AlgoritmiaDaniel Gómez
 
Fundamentos de algoritmia
Fundamentos de algoritmiaFundamentos de algoritmia
Fundamentos de algoritmiaNilson Negrete
 
Trabajo de algoritmos
Trabajo de algoritmosTrabajo de algoritmos
Trabajo de algoritmos1002pc16
 
Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)Daniel Gómez
 
Intro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - AlgoritmiaIntro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - AlgoritmiaDaniel Gómez
 
Métodos y Funciones - Java - Algoritmia
Métodos y Funciones - Java - AlgoritmiaMétodos y Funciones - Java - Algoritmia
Métodos y Funciones - Java - AlgoritmiaDaniel Gómez
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmiapierre R.
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)irvingsalazar2
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacionMichele André
 
Tutorial Definición de algoritmo
Tutorial Definición de algoritmo Tutorial Definición de algoritmo
Tutorial Definición de algoritmo Michele André
 
Tutorial algoritmo estructuras condicionales
Tutorial algoritmo   estructuras condicionalesTutorial algoritmo   estructuras condicionales
Tutorial algoritmo estructuras condicionalesMichele André
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltosRoldan El Gato
 

Destacado (19)

Estructura switch case
Estructura switch caseEstructura switch case
Estructura switch case
 
Concepto Básicos Algoritmia
Concepto Básicos Algoritmia Concepto Básicos Algoritmia
Concepto Básicos Algoritmia
 
C1 intro java
C1 intro javaC1 intro java
C1 intro java
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectiva
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Ciclos Java - NetsBeans - Algoritmia
Ciclos Java - NetsBeans - AlgoritmiaCiclos Java - NetsBeans - Algoritmia
Ciclos Java - NetsBeans - Algoritmia
 
Fundamentos de algoritmia
Fundamentos de algoritmiaFundamentos de algoritmia
Fundamentos de algoritmia
 
Trabajo de algoritmos
Trabajo de algoritmosTrabajo de algoritmos
Trabajo de algoritmos
 
Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)
 
Intro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - AlgoritmiaIntro. Lenguaje de Programación Java - Algoritmia
Intro. Lenguaje de Programación Java - Algoritmia
 
Métodos y Funciones - Java - Algoritmia
Métodos y Funciones - Java - AlgoritmiaMétodos y Funciones - Java - Algoritmia
Métodos y Funciones - Java - Algoritmia
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmia
 
Estructura de casos de uso
Estructura de casos de usoEstructura de casos de uso
Estructura de casos de uso
 
Fundamentos de Algoritmia
Fundamentos de AlgoritmiaFundamentos de Algoritmia
Fundamentos de Algoritmia
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacion
 
Tutorial Definición de algoritmo
Tutorial Definición de algoritmo Tutorial Definición de algoritmo
Tutorial Definición de algoritmo
 
Tutorial algoritmo estructuras condicionales
Tutorial algoritmo   estructuras condicionalesTutorial algoritmo   estructuras condicionales
Tutorial algoritmo estructuras condicionales
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
 

Similar a Control de flujo para cálculo de salario neto

FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)
FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)
FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)Videoconferencias UTPL
 
Fundamentosdeprogramacion 2
Fundamentosdeprogramacion 2Fundamentosdeprogramacion 2
Fundamentosdeprogramacion 2agustin rojas
 
Introducción a la programación en java
Introducción a la programación en javaIntroducción a la programación en java
Introducción a la programación en javaIvan Alvarado
 
Prueba aptitudinal ferdjjd
Prueba aptitudinal ferdjjdPrueba aptitudinal ferdjjd
Prueba aptitudinal ferdjjdFernandoDjjd
 
Conjuntos, propiedades y operaciones.pptx
Conjuntos, propiedades y operaciones.pptxConjuntos, propiedades y operaciones.pptx
Conjuntos, propiedades y operaciones.pptxyamirandresgamarra
 
CLASE 05 - 2018-3.pdf
CLASE 05 - 2018-3.pdfCLASE 05 - 2018-3.pdf
CLASE 05 - 2018-3.pdfAndrCamones
 
Manual de desarrollo_aplicacion_n_capas. Universidad de Ecuador
Manual de desarrollo_aplicacion_n_capas. Universidad de EcuadorManual de desarrollo_aplicacion_n_capas. Universidad de Ecuador
Manual de desarrollo_aplicacion_n_capas. Universidad de Ecuadorjbersosa
 
Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...
Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...
Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...JAVIER SOLIS NOYOLA
 
JAVA arreglos unidimensionales y ciclos (FOR / WHILE)
JAVA arreglos unidimensionales y ciclos (FOR / WHILE)JAVA arreglos unidimensionales y ciclos (FOR / WHILE)
JAVA arreglos unidimensionales y ciclos (FOR / WHILE)Universidad Santo Tomás
 
Semana xiii.i
 Semana xiii.i Semana xiii.i
Semana xiii.ielssalinas
 
Presentación proyecto SNe
Presentación proyecto SNePresentación proyecto SNe
Presentación proyecto SNeUTN
 

Similar a Control de flujo para cálculo de salario neto (20)

FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)
FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)
FUNDAMENTOS DE LA PROGRAMACION ( I Bimestre Abril Agosto 2011)
 
Fundamentosdeprogramacion 2
Fundamentosdeprogramacion 2Fundamentosdeprogramacion 2
Fundamentosdeprogramacion 2
 
Introducción a la programación en java
Introducción a la programación en javaIntroducción a la programación en java
Introducción a la programación en java
 
Prueba aptitudinal ferdjjd
Prueba aptitudinal ferdjjdPrueba aptitudinal ferdjjd
Prueba aptitudinal ferdjjd
 
Conjuntos, propiedades y operaciones.pptx
Conjuntos, propiedades y operaciones.pptxConjuntos, propiedades y operaciones.pptx
Conjuntos, propiedades y operaciones.pptx
 
CLASE 05 - 2018-3.pdf
CLASE 05 - 2018-3.pdfCLASE 05 - 2018-3.pdf
CLASE 05 - 2018-3.pdf
 
Guia 5
Guia 5Guia 5
Guia 5
 
Manual de desarrollo_aplicacion_n_capas. Universidad de Ecuador
Manual de desarrollo_aplicacion_n_capas. Universidad de EcuadorManual de desarrollo_aplicacion_n_capas. Universidad de Ecuador
Manual de desarrollo_aplicacion_n_capas. Universidad de Ecuador
 
Practica 3 (1)
Practica 3 (1)Practica 3 (1)
Practica 3 (1)
 
Practica 3
Practica 3Practica 3
Practica 3
 
Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...
Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...
Aplicación Multimedia #8 Álgebra Lineal. SOLUCIÓN DE SISTEMAS DE ECUACIONES L...
 
Lenguaje C_Curso Secap
Lenguaje C_Curso SecapLenguaje C_Curso Secap
Lenguaje C_Curso Secap
 
JAVA arreglos unidimensionales y ciclos (FOR / WHILE)
JAVA arreglos unidimensionales y ciclos (FOR / WHILE)JAVA arreglos unidimensionales y ciclos (FOR / WHILE)
JAVA arreglos unidimensionales y ciclos (FOR / WHILE)
 
ECUACIONES LINEALES 2º
ECUACIONES LINEALES  2ºECUACIONES LINEALES  2º
ECUACIONES LINEALES 2º
 
Sesion 07 -
Sesion 07 -Sesion 07 -
Sesion 07 -
 
Sesion 07 -
Sesion 07 -Sesion 07 -
Sesion 07 -
 
Ejercicios java
Ejercicios javaEjercicios java
Ejercicios java
 
Ejemplo
EjemploEjemplo
Ejemplo
 
Semana xiii.i
 Semana xiii.i Semana xiii.i
Semana xiii.i
 
Presentación proyecto SNe
Presentación proyecto SNePresentación proyecto SNe
Presentación proyecto SNe
 

Más de Daniel Gómez

Distribuciones de Probabilidad (Variable Aleatoria Continua)
Distribuciones de Probabilidad (Variable Aleatoria Continua)Distribuciones de Probabilidad (Variable Aleatoria Continua)
Distribuciones de Probabilidad (Variable Aleatoria Continua)Daniel Gómez
 
Distribución Probabilidad (Variable Aleatoria Discreta)
Distribución Probabilidad (Variable Aleatoria Discreta)Distribución Probabilidad (Variable Aleatoria Discreta)
Distribución Probabilidad (Variable Aleatoria Discreta)Daniel Gómez
 
Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...
Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...
Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...Daniel Gómez
 
Coagulación - Floculación - Sedimentación Lixiviados
Coagulación - Floculación - Sedimentación LixiviadosCoagulación - Floculación - Sedimentación Lixiviados
Coagulación - Floculación - Sedimentación LixiviadosDaniel Gómez
 
Tratamiento Lixiviados por Coagulación-Floculación-Sedimentación
Tratamiento Lixiviados por Coagulación-Floculación-SedimentaciónTratamiento Lixiviados por Coagulación-Floculación-Sedimentación
Tratamiento Lixiviados por Coagulación-Floculación-SedimentaciónDaniel Gómez
 

Más de Daniel Gómez (8)

Distribuciones de Probabilidad (Variable Aleatoria Continua)
Distribuciones de Probabilidad (Variable Aleatoria Continua)Distribuciones de Probabilidad (Variable Aleatoria Continua)
Distribuciones de Probabilidad (Variable Aleatoria Continua)
 
Distribución Probabilidad (Variable Aleatoria Discreta)
Distribución Probabilidad (Variable Aleatoria Discreta)Distribución Probabilidad (Variable Aleatoria Discreta)
Distribución Probabilidad (Variable Aleatoria Discreta)
 
Probabilidad
Probabilidad Probabilidad
Probabilidad
 
Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...
Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...
Estudio Comparativo de dos Coagulantes para el Tratamiento de Lixiviados, en ...
 
Coagulación - Floculación - Sedimentación Lixiviados
Coagulación - Floculación - Sedimentación LixiviadosCoagulación - Floculación - Sedimentación Lixiviados
Coagulación - Floculación - Sedimentación Lixiviados
 
Carbohidratos
CarbohidratosCarbohidratos
Carbohidratos
 
Carbo3
Carbo3Carbo3
Carbo3
 
Tratamiento Lixiviados por Coagulación-Floculación-Sedimentación
Tratamiento Lixiviados por Coagulación-Floculación-SedimentaciónTratamiento Lixiviados por Coagulación-Floculación-Sedimentación
Tratamiento Lixiviados por Coagulación-Floculación-Sedimentación
 

Último

Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxNataliaGonzalez619348
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxRosabel UA
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfFichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfssuser50d1252
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdfPROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdfMaritza438836
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 
Acuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdfAcuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdfmiriamguevara21
 
Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.profandrearivero
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.monthuerta17
 
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...Martin M Flynn
 
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docxMagalyDacostaPea
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...DavidBautistaFlores1
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfssuser50d1252
 
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...MagalyDacostaPea
 

Último (20)

Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptx
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfFichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
Unidad 2 | Teorías de la Comunicación | MCDIU
Unidad 2 | Teorías de la Comunicación | MCDIUUnidad 2 | Teorías de la Comunicación | MCDIU
Unidad 2 | Teorías de la Comunicación | MCDIU
 
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdfPROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
 
¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
Acuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdfAcuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdf
 
Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.
 
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
 
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...
 
El Bullying.
El Bullying.El Bullying.
El Bullying.
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
 
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
 

Control de flujo para cálculo de salario neto

  • 3. ESTRUCTURAS DE CONTROL  La forma de tomar decisiones en un programa es a través de las Estructuras de Control. EISC Universidad del Valle - Algoritmia y Programación Slide 3
  • 4. ESTRUCTURAS DE CONTROL  La forma de tomar decisiones en un programa es a través de las Estructuras de Control.  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no EISC Universidad del Valle - Algoritmia y Programación Slide 4
  • 5. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: ??  Salidas: ??  Proceso:?? EISC Universidad del Valle - Algoritmia y Programación Slide 5
  • 6. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: edad  Salidas: ??  Proceso:?? EISC Universidad del Valle - Algoritmia y Programación Slide 6
  • 7. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: edad  Salidas: impresión de mensaje de texto (anuncio)  Proceso:?? EISC Universidad del Valle - Algoritmia y Programación Slide 7
  • 8. Conceptos preliminares Análisis del problema edad Proceso? Impresión de mensaje EISC Universidad del Valle - Algoritmia y Programación Slide 8
  • 9. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: edad  Salidas: mensaje de texto  Proceso: SI la edad es mayor o igual que 18 EISC Universidad del Valle - Algoritmia y Programación Slide 9
  • 10. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: edad  Salidas: mensaje de texto  Proceso: SI la edad es mayor o igual que 18 Mostrar el mensaje “Usted es mayor de edad”. EISC Universidad del Valle - Algoritmia y Programación Slide 10
  • 11. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: edad  Salidas: mensaje de texto  Proceso: SI la edad es mayor o igual que 18 Mostrar el mensaje “Usted es mayor de edad”. SI NO EISC Universidad del Valle - Algoritmia y Programación Slide 11
  • 12. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 1. Análisis del problema  Entradas: edad  Salidas: mensaje de texto  Proceso: SI la edad es mayor o igual que 18 Mostrar el mensaje “Usted es mayor de edad”. SI NO mostrar el mensaje “Usted es menor de edad” EISC Universidad del Valle - Algoritmia y Programación Slide 12
  • 13. Conceptos preliminares Análisis del problema edad Si edad > = 18 Imprimir usted es mayor de edad Sino Imprimir usted es menor de edad Impresión de mensaje EISC Universidad del Valle - Algoritmia y Programación Slide 13
  • 14. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) ??? Fin EISC Universidad del Valle - Algoritmia y Programación Slide 14
  • 15. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) ?? Como expresar la condición “la edad es mayor que 18” en pseudocódigo?? Fin EISC Universidad del Valle - Algoritmia y Programación Slide 15
  • 16. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) SI edad >= 18 Fin EISC Universidad del Valle - Algoritmia y Programación Slide 16
  • 17. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) SI edad > =18 imprimir(“Usted es mayor de edad”) Fin EISC Universidad del Valle - Algoritmia y Programación Slide 17
  • 18. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) SI edad > =18 imprimir(“Usted es mayor de edad”) SINO Fin EISC Universidad del Valle - Algoritmia y Programación Slide 18
  • 19. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) SI edad > =18 imprimir(“Usted es mayor de edad”) SINO imprimir(“Usted es menor de edad”) Fin EISC Universidad del Valle - Algoritmia y Programación Slide 19
  • 20. EJERCICIO ESTRUCTURA DE CONTROL  Problema: Se requiere de un programa que permita leer: dos números enteros y la opción de la operación matemática que deseen realizar: opción operación 1 Suma 2 Resta 3 Multiplicación 4 División Según la opción elegida se debe mostrar el resultado de la operación sobre los dos números EISC Universidad del Valle - Algoritmia y Programación Slide 20
  • 21. OPERADORES RELACIONALES Actúan sobre valores enteros, reales y caracteres. Estos operadores retorna un valor booleano. EISC Universidad del Valle - Algoritmia y Programación Slide 21
  • 22. OPERADORES RELACIONALES  Ejercicio: int n; Exprese las siguientes condiciones en java:  n es menor que 30  n es igual que 60  n es mayor o igual que 90 EISC Universidad del Valle - Algoritmia y Programación Slide 22
  • 23. OPERADORES RELACIONALES  Ejercicio: int n; Exprese las siguientes condiciones en java:  n es menor que 30 n < 30  n es igual que 60  n es mayor o igual que 90 EISC Universidad del Valle - Algoritmia y Programación Slide 23
  • 24. OPERADORES RELACIONALES  Ejercicio: int n; Exprese las siguientes condiciones en java:  n es menor que 30 n < 30  n es igual que 60 n==60  n es mayor o igual que 90 n>=90 EISC Universidad del Valle - Algoritmia y Programación Slide 24
  • 25. OPERADORES LÓGICOS Actúan sobre operadores o expresiones lógicas, como las tablas de verdad. EISC Universidad del Valle - Algoritmia y Programación Slide 25
  • 26. OPERADORES LÓGICOS  Ejercicio: int n; Exprese las siguientes condiciones en java:  n pertenece al rango [-10,30]  n es menor o igual que 40  n es diferente de 30 ó mayor que 100 EISC Universidad del Valle - Algoritmia y Programación Slide 26
  • 27. OPERADORES LÓGICOS  Ejercicio: int n; Exprese las siguientes condiciones en java:  n pertenece al rango [-10,30] ((n>=-10) && (n<=30))  n es menor o igual que 40  n es diferente de 30 ó mayor que 100 EISC Universidad del Valle - Algoritmia y Programación Slide 27
  • 28. OPERADORES LÓGICOS  Ejercicio: int n; Exprese las siguientes condiciones en java:  n pertenece al rango [-10,30] ((n>=-10) && (n<=30))  n es menor o igual que 40 n<=40  n es diferente de 30 ó mayor que 100 EISC Universidad del Valle - Algoritmia y Programación Slide 28
  • 29. OPERADORES LÓGICOS  Ejercicio: int n; Exprese las siguientes condiciones en java:  n pertenece al rango [-10,30] ((n>=-10) && (n<=30))  n es menor o igual que 40 n<=40  n es diferente de 30 ó mayor que 100 ((n!=30 ) || (n>100)) EISC Universidad del Valle - Algoritmia y Programación Slide 29
  • 30. EJERCICIO ESTRUCTURA DE CONTROL  Problema: Se requiere de un programa que permita leer: la cédula, salario básico y año de vinculación de un empleado y que permita calcular su salario neto sabiendo que: Si gana más de $1200000 y entro a trabajar después de 1990 se le debe descontar un 8%. Si gana menos de 550000 ó entró a trabajar en 1990 se le descuenta 2%. En cualquier otro caso se descontará el 5% del salario. El programa debe imprimir la cédula y salario neto del empleado. EISC Universidad del Valle - Algoritmia y Programación Slide 30
  • 31. EJERCICIO IF-ELSE 1. Análisis del problema  Entradas: cedula, ahno, salarioBasico  Salidas: salarioNeto  Proceso: ?? cedula ahno, salarioBasico Proceso? cedula salarioNeto EISC Universidad del Valle - Algoritmia y Programación Slide 31
  • 32. EJERCICIO IF-ELSE 1. Análisis del problema  Entradas: cedula, ahno, salarioBasico  Salidas: salarioNeto  Proceso: SI el salarioBasico es mayor que 1200000, y el ahno es mayor 1990 salarioNeto= salarioBasico - salarioBasico *0.08 SINO SI el salarioBasico es menor que 550000, o el ahno es igual 1990 salarioNeto= salarioBasico - salarioBasico *0.02 SINO salarioNeto= salarioBasico - salarioBasico *0.05 EISC Universidad del Valle - Algoritmia y Programación Slide 32
  • 33. Conceptos preliminares Análisis del problema SI el salarioBasico > 1200000 y ahno es >1990 cedula ahno, salarioBasico salarioNeto= salarioBasico - ( salarioBasico *0.08 ) SINO SI el salarioBasico > 550000, o ahno == 1990 cedula salarioNeto salarioNeto= salarioBasico - salarioBasico *0.02 SINO salarioNeto= salarioBasico - salarioBasico *0.05 EISC Universidad del Valle - Algoritmia y Programación Slide 33
  • 34. EJERCICIO IF-ELSE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio cedula, ahno: entero salarioBasico, salarioNeto: real leer(cedula) leer(ahno) leer(salarioBasico) ??? imprimir(cedula) imprimir(salarioNeto) fin EISC Universidad del Valle - Algoritmia y Programación Slide 34
  • 35. EJERCICIO IF-ELSE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio cedula, ahno: entero salarioBasico, salarioNeto: real leer(cedula) leer(ahno) leer(salarioBasico) SI (salarioBasico > 1200000) Y (ahno>1990) salarioNeto= salarioBasico – (salarioBasico *0.08 ) SINO SI (salarioBasico < 550000) O (ahno==1990) salarioNeto= salarioBasico – (salarioBasico *0.02) SINO salarioNeto= salarioBasico – (salarioBasico *0.05) imprimir(cedula) imprimir(salarioNeto) fin EISC Universidad del Valle - Algoritmia y Programación Slide 35
  • 36. EJERCICIO IF-ELSE 3. Realizar una prueba de escritorio para el algoritmo Cédula Año vinculación Salario Bruto Salario Neto 11301245 2000 1.300.000 1.170.000 3036978 1990 400.000 392.000 5045893 1985 2.000.000 1.900.000 EISC Universidad del Valle - Algoritmia y Programación Slide 36
  • 37. EJERCICIO IF-ELSE Pasando a Java….. EISC Universidad del Valle - Algoritmia y Programación Slide 37
  • 38. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 4. Codificar el algoritmo usando algún lenguaje de programación pseudocódigo Java SI edad > 18 imprimir(“Usted es mayor de edad”) SINO imprimir(“Usted es menor de edad”) EISC Universidad del Valle - Algoritmia y Programación Slide 38
  • 39. ESTRUCTURAS DE CONTROL  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 4. Codificar el algoritmo usando algún lenguaje de programación pseudocódigo SI edad >= 18 imprimir(“Usted es mayor de edad”) SINO imprimir(“Usted es menor de edad”) Java Estructura de Control if-else EISC Universidad del Valle - Algoritmia y Programación Slide 39
  • 40. ESTRUCTURA IF-ELSE SI edad >= 18 imprimir(“Usted es mayor de edad”) SINO imprimir(“Usted es menor de edad”) EISC Universidad del Valle - Algoritmia y Programación Slide 40
  • 41. ESTRUCTURA IF-ELSE SI (edad >= 18) Las condiciones en Java se colocan entre paréntesis imprimir(“Usted es mayor de edad”) SINO imprimir(“Usted es menor de edad”) EISC Universidad del Valle - Algoritmia y Programación Slide 41
  • 42. ESTRUCTURA IF-ELSE El pseudocodigo SI, se reemplaza por la palabra reservada if if (edad >= 18) { imprimir(“Usted es mayor de edad”) } SINO imprimir(“Usted es menor de edad”) EISC Universidad del Valle - Algoritmia y Programación Slide 42
  • 43. ESTRUCTURA IF-ELSE if (edad >= 18) { imprimir(“Usted es mayor de edad”) } else { imprimir(“Usted es menor de edad”) } El pseudocodigo SINO, se reemplaza por la palabra reservada else EISC Universidad del Valle - Algoritmia y Programación Slide 43
  • 44. ESTRUCTURA IF-ELSE SI edad >= 18 imprimir(“Usted es mayor de edad”) SINO imprimir(“Usted es menor de edad”) if (edad >= 18) { JOptionPane.showMessageDialog(null,“Usted es mayor de edad”); } else { JOptionPane.showMessageDialog(null,“Usted es menor de edad”); } EISC Universidad del Valle - Algoritmia y Programación Slide 44
  • 45. ESTRUCTURA IF-ELSE La estructura de control if-else permite ejecutar una serie de instrucciones solo cuando se cumple una condición establecida EISC Universidad del Valle - Algoritmia y Programación Slide 45
  • 46. ESTRUCTURA IF-ELSE La estructura de control if-else permite ejecutar una serie de instrucciones solo cuando se cumple una condición establecida EISC Universidad del Valle - Algoritmia y Programación Slide 46
  • 47. ESTRUCTURA IF-ELSE  Problema: Desarrollar una aplicación Java que solicite la edad de una persona e indique si es mayor de edad o no 2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio edad: entero leer (edad) SI edad >= 18 imprimir(“Usted es mayor de edad”) SINO Fin imprimir(“Usted es menor de edad”) EISC Universidad del Valle - Algoritmia y Programación Slide 47
  • 48. ESTRUCTURA IF-ELSE Inicio edad: entero public class MayorEdad leer (edad) { public static void main(String args[]) SI edad >= 18 { imprimir(“Usted es mayor de edad”) // Variable de entrada SINO imprimir(“Usted es menor de edad”) int edad; Fin // Lectura de los datos de entrada edad=Integer.parseInt(JOptionPane.showInputDialog(“Ingrese su edad:”)); // Proceso if (edad>=18) { JOptionPane.showMessageDialog(null,"Usted es mayor de edad"); } else { JOptionPane.showMessageDialog(null,"Usted es menor de edad"); } } } EISC Universidad del Valle - Algoritmia y Programación Slide 48
  • 49. EJERCICIO IF-ELSE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio cedula, ahno: entero salarioBasico, salarioNeto: real leer(cedula) leer(ahno) leer(salarioBasico) SI (salarioBasico > 1200000) Y (ahno>1990) salarioNeto= salarioBasico - salarioBasico *0.08 SINO SI (salarioBasico < 550000) O (ahno==1990) salarioNeto= salarioBasico - salarioBasico *0.02 SINO salarioNeto= salarioBasico - salarioBasico *0.05 imprimir(cedula) imprimir(salarioNeto) fin EISC Universidad del Valle - Algoritmia y Programación Slide 49
  • 50. EJERCICIO IF-ELSE 4. Codificar el algoritmo usando algún lenguaje de programación pseudocódigo SI (salarioBasico > 1200000) Y (ahno>1990) salarioNeto= salarioBasico - salarioBasico *0.08 SINO SI (salarioBasico < 550000) O (ahno==1990) salarioNeto= salarioBasico - salarioBasico *0.02 SINO salarioNeto= salarioBasico - salarioBasico *0.05 Código Java EISC Universidad del Valle - Algoritmia y Programación Slide 50
  • 51. EJERCICIO IF-ELSE 4. Codificar el algoritmo usando algún lenguaje de programación pseudocódigo SI (salarioBasico > 1200000) Y (ahno>1990) salarioNeto= salarioBasico - salarioBasico *0.08 SINO SI (salarioBasico < 550000) O (ahno==1990) salarioNeto= salarioBasico - salarioBasico *0.02 SINO salarioNeto= salarioBasico - salarioBasico *0.05 Código Java if ((salarioBasico > 1200000) && (ahno>1990)){ salarioNeto= salarioBasico - salarioBasico*0.08; } else{ if((salarioBasico < 550000) || (ahno==1990)){ salarioNeto= salarioBasico - salarioBasico*0.02; } else{ salarioNeto= salarioBasico - salarioBasico*0.05; } } EISC Universidad del Valle - Algoritmia y Programación Slide 51
  • 52. EJERCICIO 4. IF-ELSE Codificar el algoritmo usando algún lenguaje de programación import javax.swing.JOptionPane; public class Nomina { public static void main(String args[]) { int cedula, ahno; double salarioBasico, salarioNeto; cedula =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese cedula:”)); ahno =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese ahno:”)); salarioBasico =Double.parseDouble(JOptionPane.showInputDialog(“Ingrese salario básico:”)); if ((salarioBasico > 1200000) && (ahno>1990)) { salarioNeto= salarioBasico - salarioBasico*0.08; } else { if((salarioBasico < 550000) || (ahno==1990)) { salarioNeto= salarioBasico - salarioBasico*0.02; } else { salarioNeto= salarioBasico - salarioBasico*0.050; } } JOptionPane.showMessageDialog(null,“cedula:“+ cedula+”n”+”salario neto:”+ salarioNeto); }} EISC Universidad del Valle - Algoritmia y Programación Slide 52
  • 53. EJERCICIO 4. IF-ELSE Codificar el algoritmo usando algún lenguaje de programación import javax.swing.JOptionPane; public class Nomina { public static void main(String args[]) { int cedula, ahno; double salarioBasico, salarioNeto; cedula =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese cedula:”)); ahno =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese ahno:”)); salarioBasico =Double.parseDouble(JOptionPane.showInputDialog(“Ingrese salario básico:”)); if ((salarioBasico > 1200000) && (ahno>1990)) { salarioNeto= salarioBasico - salarioBasico*0.08; } else { if((salarioBasico < 550000) || (ahno==1990)) { salarioNeto= salarioBasico - salarioBasico*0.02; } else { salarioNeto= salarioBasico - salarioBasico*0.050; } } JOptionPane.showMessageDialog(null,“cedula:“+ cedula+”n”+”salario neto:”+ salarioNeto); }} EISC Universidad del Valle - Algoritmia y Programación Slide 53
  • 54. EJERCICIO IF-ELSE 4. Codificar el algoritmo usando algún lenguaje de programación Ver código fuente Nomina.java en el campus del curso… EISC Universidad del Valle - Algoritmia y Programación Slide 54
  • 55. Más estructuras de control…. EISC Universidad del Valle - Algoritmia y Programación Slide 55
  • 56. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, resumiendo cuando se tengan varios if-else anidados EISC Universidad del Valle - Algoritmia y Programación Slide 56
  • 57. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, resumiendo cuando se tengan varios if-else anidados  En pseudocódigo según sea(x) caso 1: instrucciones_1 caso 2: instrucciones_2 … caso n: instrucciones_n por defecto: instrucciones_por_defecto fin según sea EISC Universidad del Valle - Algoritmia y Programación Slide 57
  • 58. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, resumiendo cuando se tengan varios if-else anidados  En pseudocodigo según sea(x) caso 1 : caso 2 : … caso n : por defecto: fin según sea instrucciones_1 instrucciones_2 La variable x debe ser de tipo entero, o de tipo carácter o de tipo String. No se permiten otros tipos de datos. instrucciones_n instrucciones_por_defecto EISC Universidad del Valle - Algoritmia y Programación Slide 58
  • 59. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, permitiendo resumir cuando se tengan varios if-else anidados  En código java switch(x) { caso 1 : caso 2 : caso n : por defecto: } El pseudocógido según sea se reemplaza por la palabra reservada switch instrucciones_1 instrucciones_2 instrucciones_n instrucciones_df EISC Universidad del Valle - Algoritmia y Programación Slide 59
  • 60. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, permitiendo resumir cuando se tengan varios if-else anidados  En código java switch(x) { case 1 : case 2 : case n : por defecto: } El pseudocódigo caso se reemplaza por la palabra reservada case instrucciones_1 instrucciones_2 instrucciones_n instrucciones_df EISC Universidad del Valle - Algoritmia y Programación Slide 60
  • 61. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, permitiendo resumir cuando se tengan varios if-else anidados  En código java switch(x) { case 1 case 2 case n default } : : : : instrucciones_1 instrucciones_2 El pseudocódigo por instrucciones_n defecto se reemplaza por la palabra reservada instrucciones_df default EISC Universidad del Valle - Algoritmia y Programación Slide 61
  • 62. ESTRUCTURA SWITCH -CASE  Permite manejar varias opciones de forma sencilla, permitiendo resumir cuando se tengan varios if-else anidados Al finalizar de cada bloque de instrucciones se debe  En código java agregar la instrucción break; Para indicar el final switch(x) de cada caso. { case 1 : instrucciones_1; break; case 2 : instrucciones_2 ; break; case n : instrucciones_n ; break; default : instrucciones_df ; break; } EISC Universidad del Valle - Algoritmia y Programación Slide 62
  • 63. ESTRUCTURA SWITCH -CASE Problema: Desarrollar una aplicación en java que reciba un entero correspondiente a una categoría y el total de ventas de un empleado y retorne la comisión que recibe. Tome en cuenta la siguiente tabla. categoría Comisión 1 10% 2 20% 3 35% 4 45% 5 50% 6 60% EISC Universidad del Valle - Algoritmia y Programación Slide 63
  • 64. ESTRUCTURA SWITCH -CASE 1. Análisis del problema  Entradas: ??  Salidas: ??  Proceso:?? EISC Universidad del Valle - Algoritmia y Programación Slide 64
  • 65. ESTRUCTURA SWITCH -CASE 1. Análisis del problema  Entradas: categoria, ventas  Salidas: comision  Proceso:?? categoria ventas Proceso? comision EISC Universidad del Valle - Algoritmia y Programación Slide 65
  • 66. ESTRUCTURA SWITCH -CASE 1. Análisis del problema  Entradas: categoria, ventas  Salidas: comision  Proceso: SEGÚN SEA categoria EISC Universidad del Valle - Algoritmia y Programación Slide 66
  • 67. ESTRUCTURA SWITCH -CASE 1. Análisis del problema  Entradas: categoria, ventas  Salidas: comision  Proceso: SEGÚN SEA categoria caso 1 : comision = ventas * 0.1 EISC Universidad del Valle - Algoritmia y Programación Slide 67
  • 68. ESTRUCTURA SWITCH -CASE 1. Análisis del problema  Entradas: categoria, ventas  Salidas: comision  Proceso: SEGÚN SEA categoria caso 1 : comision = ventas * 0.1 caso 2 : comision = ventas * 0.2 EISC Universidad del Valle - Algoritmia y Programación Slide 68
  • 69. ESTRUCTURA SWITCH -CASE 1. Análisis del problema  Entradas: categoria, ventas  Salidas: comision  Proceso: SEGÚN SEA categoria caso 1 : comision = ventas * 0.1 caso 2 : comision = ventas * 0.2 caso 3 : comision = ventas * 0.35 caso 4 : comision = ventas * 0.45 caso 5 : comision = ventas * 0.5 caso 6 : comision = ventas * 0.6 Por defecto : imprimir(“Categoría inexistente”) EISC Universidad del Valle - Algoritmia y Programación Slide 69
  • 70. ESTRUCTURA SWITCH -CASE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio categoria: entero ventas, comision: real leer(categoria) leer(ventas) ??? imprimir(comision) fin EISC Universidad del Valle - Algoritmia y Programación Slide 70
  • 71. ESTRUCTURA SWITCH -CASE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio categoria: entero ventas, comision: real leer(categoria) leer(ventas) Según sea categoria caso 1: comision = ventas * 0.1 caso 2: comision = ventas * 0.2 caso 3: comision = ventas * 0.35 caso 4: comision = ventas * 0.45 caso 5: comision = ventas * 0.5 caso 6: comision = ventas * 0.6 por defecto: imprimir(“categoría inexistente”) fin según_sea imprimir(comision) fin EISC Universidad del Valle - Algoritmia y Programación Slide 71
  • 72. ESTRUCTURA SWITCH -CASE 4. Codificar el algoritmo usando algún lenguaje de programación Según sea categoria caso 1: comision = ventas * 0.1 caso 2: comision = ventas * 0.2 caso 3: comision = ventas * 0.35 caso 4: comision = ventas * 0.45 caso 5: comision = ventas * 0.5 caso 6: comision = ventas * 0.6 por defecto: imprimir(“categoría inexistente”) fin según_sea EISC Universidad del Valle - Algoritmia y Programación Slide 72
  • 73. ESTRUCTURA SWITCH -CASE 4. Codificar el algoritmo usando algún lenguaje de programación switch(categoria) { case 1: comision = ventas * 0.1; break; case 2: comision = ventas * 0.2; break; case 3: comision = ventas * 0.35; break; case 4: comision = ventas * 0.45; break; case 5: comision = ventas * 0.5; break; case 6: comision = ventas * 0.6; break; default: JoptionPane.showMessageDialog(null, “Categoría Inexistente”); } EISC Universidad del Valle - Algoritmia y Programación Slide 73
  • 74. ESTRUCTURA IF-ELSE public class ComisionEmpleado{ public static void main(String args[]) { // Variables de entrada y salida int categoria; double ventas; double comision; // Lectura de los datos de entrada categoria =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese categoria:”)); ventas =Double.parseDouble(JOptionPane.showInputDialog(“Ingrese venta:”)); // Proceso switch(categoria) { case 1: comision = ventas * 0.1; break; case 2: comision = ventas * 0.2; break; case 3: comision = ventas * 0.35; break; case 4: comision = ventas * 0.45; break; case 5: comision = ventas * 0.5; break; case 6: comision = ventas * 0.6; break; default: JOptionPane.showMessageDialog(null,“categoria inexistente”); } //imprimir JOptionPane.showMessageDialog(null,“la comision es “+ comision); }} EISC Universidad del Valle - Algoritmia y Programación Slide 74
  • 75. EJERCICIO  Problema: Emcali requiere recalcular la factura de energía de los consumidores. Para ello, se necesita de un programa que lea el estrato social y el valor de consumo del cliente, y determine el valor básico a adicionar para establecer el nuevo valor de la factura. El programa debe reportar el nuevo valor de la factura. Para saber los valores básicos que corresponde a cada categoría use la siguiente tabla: Estrato Valor Base 1 500 2 700 3 4800 4 6700 Si se digita una categoría que no esté en la tabla se debe mostrar un mensaje indicando que la categoría no es válida. EISC Universidad del Valle - Algoritmia y Programación Slide 75
  • 76. Anexos EISC Universidad del Valle - Algoritmia y Programación Slide 76
  • 77. EJERCICIO SWITCH-CASE  Problema: Emcali requiere recalcular la factura de energía de los consumidores. Para ello, se necesita de un programa que lea el estrato social y el valor de consumo del cliente, y determine el valor básico a adicionar para establecer el nuevo valor de la factura. Para saber los valores básicos que corresponde a cada categoría use la siguiente tabla: Estrato Valor Base 1 500 2 700 3 4800 4 6700 Si se digita una categoría que no esté en la tabla se debe mostrar un mensaje indicando que la categoría no es válida. EISC Universidad del Valle - Algoritmia y Programación Slide 77
  • 78. EJERCICIO SWITCH-CASE 1. Análisis del problema  Entradas: estrato, consumo  Salidas: valorFactura  Proceso: ?? EISC Universidad del Valle - Algoritmia y Programación Slide 78
  • 79. EJERCICIO SWITCH-CASE 1. Análisis del problema  Entradas: estrato, consumo  Salidas: valorFactura  Proceso: Si estrato es 1, valorFactura = consumo + 500 Si estrato es 2, valorFactura = consumo + 700 Si estrato es 3, valorFactura = consumo + 4800 Si estrato es 4, valorFactura = consumo + 5700 EISC Universidad del Valle - Algoritmia y Programación Slide 79
  • 80. EJERCICIO SWITCH-CASE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio estrato: entero consumo, valorFactura: real leer(categoria) leer(consumo) ?? imprimir(valorFactura) fin EISC Universidad del Valle - Algoritmia y Programación Slide 80
  • 81. EJERCICIO SWITCH-CASE 2. Diseñar el algoritmo y escribirlo en pseudocódigo inicio estrato: entero consumo, valorFactura: real leer(categoria) leer(consumo) según sea categoria caso 1: valorFactura = consumo + 500 caso 2: valorFactura = consumo + 700 caso 3: valorFactura = consumo + 4800 caso 4: valorFactura = consumo + 5700 defecto : imprimir(“categoría no válida”) fin según_sea imprimir(valorFactura) EISC fin Universidad del Valle - Algoritmia y Programación Slide 81
  • 82. EJERCICIO SWITCH-CASE 3. Realizar una prueba de escritorio para el algoritmo inicio Valor Consumo Valor Factura 1 20000 20500 2 79000 79700 3 200100 20490 4 estrato: entero consumo, valorFactura: real leer(categoria) leer(consumo) Estrato 600540 607240 según sea categoria caso 1: valorFactura = consumo + 500 caso 2: valorFactura = consumo + 700 caso 3: valorFactura = consumo + 4800 caso 4: valorFactura = consumo + 5700 defecto : imprimir(“categoría no válida”) fin según_sea imprimir(valorFactura) fin EISC Universidad del Valle - Algoritmia y Programación Slide 82
  • 83. EJERCICIO SWITCH-CASE 4. Codificar el algoritmo usando algún lenguaje de programación pseudocódigo según sea categoria caso 1: valorFactura = consumo + 500 caso 2: valorFactura = consumo + 700 caso 3: valorFactura = consumo + 4800 caso 4: valorFactura = consumo + 5700 fin según_sea Código Java EISC Universidad del Valle - Algoritmia y Programación Slide 83
  • 84. EJERCICIO SWITCH-CASE 4. Codificar el algoritmo usando algún lenguaje de programación pseudocódigo según sea categoria caso 1: valorFactura = consumo + 500 caso 2: valorFactura = consumo + 700 caso 3: valorFactura = consumo + 4800 caso 4: valorFactura = consumo + 5700 fin según_sea Código Java switch(estrato){ case 1: valorFactura=consumo + 500; break; case 2: valorFactura=consumo + 700; break; case 3: valorFactura=consumo + 4800; break; case 4: valorFactura=consumo + 5700; break; default : JOptionPane.showMessageDialog(null,“Categoría no válida”); break: } EISC Universidad del Valle - Algoritmia y Programación Slide 84
  • 85. EJERCICIO 4. SWITCH-CASE Codificar el algoritmo usando algún lenguaje de programación import javax.swing.JOptionPane; public class Factura{ public static void main(String args[]) { // Variables de entrada y salida int estrato; double consumo,valorFactura; // Lectura de los datos de entrada estrato =Integer.parseInt(JOptionPane.showInputDialog(“Ingrese estrato:”)); consumo=Double.parseDouble(JOptionPane.showInputDialog(“Ingrese consumo:”)); // Proceso switch(estrato){ case 1: valorFactura=consumo + 500; break; case 2: valorFactura=consumo + 700; break; case 3: valorFactura=consumo + 4800; break; case 4: valorFactura=consumo+ 5700; break; default : JOptionPane.showMessageDialog(null,“Categoría no válida”); break:} //imprimir JOptionPane.showMessageDialog(null,“el nuevo valor de factura“+ valorFactura); }} EISC Universidad del Valle - Algoritmia y Programación Slide 85
  • 86. EJERCICIO SWITCH-CASE 4. Codificar el algoritmo usando algún lenguaje de programación Ver código fuente Factura.java en el campus del curso… EISC Universidad del Valle - Algoritmia y Programación Slide 86