Está en la página 1de 7

CORPORACIN UNIVERSITARIA AMERICANA

PROGRAMA: Ingeniera Industrial ASIGNATURA: Lenguaje de Programacin


Gua Preparada por: Ing. Germn Jimnez Mrquez

TEORIA SOBRE ALGORITMOS

ESTRUCTURAS ALGORITMICAS

Las estructuras de operacin de programas son un grupo de formas de trabajo, que permiten, mediante la
manipulacin de variables, realizar ciertos procesos especficos que nos lleven a la solucin de problemas.
Estas estructuras se clasifican de acuerdo con su complejidad en:

- Inicio
- Fin
Secuenciales - Lectura
- Escritura
- Asignacin

Estructuras - Simple (si - entonces)


Algortmicas Selectivas - Doble (si entonces - sino)
- Mltiple (en caso de/segn/dependiendo de)

- Hacer para (N Determinado de Iteraciones)


Repetitivas - Hacer mientras (N Indeterminado de Iteraciones)
- Repetir hasta (N Indeterminado de Iteraciones)

Estructuras Selectivas

Las estructuras selectivas, alternativas, condicionales o de decisin se utilizan para tomar decisiones
lgicas. Mediante la evaluacin de una condicin, estas estructuras comparan a una variable contra otro(s)
valor(es), para que en base al resultado de esta comparacin, se siga un curso de accin dentro del
programa. Cabe mencionar que la comparacin se puede hacer contra otra variable o contra una constante,
segn se necesite.

1. Estructura Selectiva Simple:

A las estructuras selectivas simples se les conoce como Tomas de decisin. Estas estructuras tienen la
siguiente forma:
FALSA
Si <condicin> entonces CONDICIN

Accin1 CIERTA
Accin2 Accin1
. Accin2
. .
.
AccinN AccinN
Fin-si

2. Estructura Selectiva Doble:


CORPORACIN UNIVERSITARIA AMERICANA
Las estructuras selectivas dobles permiten elegir entre dos opciones o alternativas posibles en funcin del
cumplimiento o no de una determinada condicin. Se representa de la siguiente forma:

Si <condicin> entonces
AccinA1
AccinA2 FALSA
. CONDICIN

. CIERTA
AccinAN AccinA1 AccinB1
Sino: AccinA2 AccinB2
AccinB1 . .
. .
AccinB2 AccinAN AccinBN
.
.
AccinBN
Fin-si

Donde:
Si Indica el comando de comparacin
Condicin Indica la condicin a evaluar
Entonces Precede a las acciones a realizar cuando se cumple la condicin
Accin(es) Son las acciones a realizar cuando se cumple o no la condicin
si no Precede a las acciones a realizar cuando no se cumple la condicin

Dependiendo de si la comparacin es cierta o falsa, se pueden realizar una o mas acciones.

Las estructuras selectivas simples y dobles se pueden anidar, es decir, encajar unas dentro de otras,
formando estructuras compuestas como la siguiente:

Si <condicin1> entonces
AccinA1
AccinA2
.
. FALSA
CONDICIN1
AccinAN
Sino: CIERTA FALSA
CONDICIN2
Si <condicin2> entonces AccinA1
AccinA2 CIERTA
AccinB1
. AccinB1
AccinB2 . AccinB2 Varias
. AccinAN . condiciones
. .
AccinBN AccinBN
Sino:
.
. Varias condiciones
.
Fin-si
Fin-si

3. Estructura Selectiva Mltiple:

Las estructuras selectivas mltiples, son tomas de decisin especializadas que permiten comparar una
variable contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones
especficas. Las formas ms comunes son las siguientes:
CORPORACIN UNIVERSITARIA AMERICANA

En caso de <expresin> haga:


op1: Accion1
op2: Accion2 . EXPRESIN
. = op1 = op2 = opN = opZ
.
Accin1 Accin2 AccinN AccinZ
opN: AccionN
sino: AccionZ
Fin-casos

Segn <expresin> haga:


op1: Accion1
op2: Accion2 .
.
.
opN: AccionN
sino: AccionZ
Fin-segn

Dependiendo de <expresin> haga:


op1: Accion1
op2: Accion2 .
.
.
opN: AccionN
sino: AccionZ
Fin-dd

EJEMPLOS DE ALGORITMOS UTILIZANDO SELECTIVAS

1. Lea dos nmeros y multiplique por dos al mayor de ellos.

INICIO
LEA a, b
SI a > b ENTONCES HAGA:
doble 2*a
SINO:
doble 2*b
FSI
ESCRIBA Los nmeros leidos son: , a, b
ESCRIBA El doble del nmero mayor es: , doble
FIN

2. Lea el valor hora, nmero y tipo de horas extras (diurnas o nocturnas) trabajadas por un empleado y
calcule cunto gan por horas extras, teniendo en cuenta que las horas nocturnas se pagan al doble.

INICIO
LEA valor, num, tipo
SI tipo = diurnas ENTONCES HAGA:
CORPORACIN UNIVERSITARIA AMERICANA
extras num*valor
SINO:
extras num*valor*2
FSI
ESCRIBA El nmero de horas extras es: , num
ESCRIBA El tipo de horas extras es: , tipo
ESCRIBA El valor ganado por horas extras es: , extras
FIN

3. Lea dos nmeros y diga si el primero de ellos es mayor, menor o igual que el segundo.

INICIO
LEA a, b
ESCRIBA Los nmeros leidos son: , a, y , b
SI a > b ENTONCES HAGA:
ESCRIBA El primer nmero es mayor que el segundo
SINO:
SI a < b ENTONCES HAGA:
ESCRIBA El primer nmero es menor que el segundo
SINO:
ESCRIBA El primer nmero es igual que el segundo
FSI
FSI
FIN

4. Dadas las 3 notas de un alumno, calcule la definitiva de la asignatura si la primera nota tiene un valor
del 20%, la segunda del 30% y la ltima del 50%. Verificar si aprueba la asignatura y si no la aprueba,
indicar si puede habilitar, sabiendo que se aprueba con nota mnima de 3,5 y pierde el derecho a
habilitar con nota inferior a 2.

INICIO
LEA nota1, nota2, nota3
def nota1*0.2+nota2*0.3+nota3*0.5
ESCRIBA El 20% de la definitiva corresponde a la nota: , nota1
ESCRIBA El 30% de la definitiva corresponde a la nota: , nota2
ESCRIBA El 50% de la definitiva corresponde a la nota: , nota3
ESCRIBA La definitiva de la asignatura es: , def
SI def 3.5 ENTONCES HAGA:
ESCRIBA La asignatura fue aprobada
SINO:
SI def 2.0 ENTONCES HAGA:
ESCRIBA La asignatura no fue aprobada, pero puede habilitarse
SINO:
ESCRIBA La asignatura no fue aprobada, ni puede habilitarse
FSI
FSI
FIN
CORPORACIN UNIVERSITARIA AMERICANA
5. Conociendo la cantidad y precio de las unidades que vendi, calcule el valor de la comisin ganada por un
vendedor, si se otorga el 5% de la venta para cantidades entre 5000 y 9999 unidades y el 10% cuando
la venta es superior a 9999 unidades.

INICIO
LEA cantidad, precio
venta cantidad*precio
SI cantidad 5000 ENTONCES HAGA:
SI cantidad > 9999 ENTONCES HAGA:
comisin venta*0.1
SINO:
comisin venta*0.05
FSI
FSI
ESCRIBA La comisin ganada por el vendedor es: , comisin
FIN

EJERCICIOS

1. Evale las siguientes expresiones lgicas y diga su resultado (si son verdaderas o falsas) utilizando los
valores de las variables dados:

m. ( x < 6.5 ) y ( x = 3) si x = 3
n. ( a <= b ) o ( 3 > 5 ) si a = 5 y b = 8
o. ( c <= d + 7 ) o ( 7 > 5 ) si c = 10 y d = 15
p. ( a1 >= d ) y ( 2 14 = 2 ) si a1 = 3 y d = 5
q. ( 1.0 < x ) y x < z + 7.0 si x = 7 y z = 2
r. no ( z > 14 ) si z = 24
s. ( 4.5 > x ) y ( z < x + 7.5 ) si x = 7 y z = 5

2. Identifique la condicin a evaluar en la siguiente estructura algortmica:

SI def 3.5 ENTONCES HAGA:


ESCRIBA La asignatura fue aprobada
FSI

3. Observe atentamente la siguiente estructura algortmica:

SI def 3.5 ENTONCES HAGA:


ESCRIBA La asignatura fue aprobada
SINO:
SI def 2.0 ENTONCES HAGA:
ESCRIBA La asignatura no fue aprobada, pero puede habilitarse
SINO:
ESCRIBA La asignatura no fue aprobada, ni puede habilitarse
FSI
FSI

En el algoritmo anterior:
- identifique las condiciones a evaluar
- cuando def = 5.0 que mensaje aparece en pantalla?
- cul de los 3 mensajes aparece en pantalla justo cuando def = 2.8?
- que orden o instruccin se ejecuta cuando def = 1.5?
CORPORACIN UNIVERSITARIA AMERICANA

PROBLEMAS PROPUESTOS:

Selectivas simples y dobles:

1) Calcular el total que una persona debe pagar en una llantera, sabiendo que el precio de cada llanta es de
$800 si se compran menos de 5 llantas y de $700 si se compran 5 o ms.

2) En un supermercado se hace una promocin, mediante la cual el cliente obtiene un descuento


dependiendo de un nmero que se escoge al azar. Si el nmero escogido es menor que 74 el descuento
es del 15% sobre el total de la compra, si es mayor o igual a 74 el descuento es del 20%. Obtener
cunto dinero se le descuenta.

3) Calcular el nmero de pulsaciones que debe tener una persona por cada 10 segundos de ejercicio
aerbico; la formula que se aplica cuando el sexo es femenino es: nm. pulsaciones =
(220 - edad) / 10 y si el sexo es masculino la frmula es: nm. pulsaciones = (210 - edad) / 10

4) Una compaa de seguros est abriendo un dpto. de finanzas y estableci un programa para captar
clientes, que consiste en lo siguiente: si el monto por el que se efecta la fianza es menor que $50.000
la cuota a pagar ser por el 3% del monto, y si el monto es mayor que $50.000 la cuota a pagar ser el
2% del monto. La afianzadora desea determinar cul ser la cuota que debe pagar un cliente.

5) En una escuela, la colegiatura (matrcula) de los alumnos se determina segn el nmero de materias que
cursan. El costo de todas las materias es igual. Se estableci un programa de estmulo, as: si el
promedio obtenido por un alumno en el ltimo periodo es mayor o igual que 9, se le har un descuento
del 30% sobre la colegiatura y no se le cobrara IVA; si el promedio es menor que 9 deber pagar la
colegiatura completa, la cual incluye el 10% de IVA. Obtener cuanto debe pagar un alumno.

6) Una empresa de bienes races ofrece casas de inters social, bajo las siguientes condiciones: Si los
ingresos del comprador son menores de $8000 el enganche ser del 15% del costo de la casa y el resto
se distribuir en pagos mensuales, a pagar en diez aos. Si los ingresos del comprador son $8000 o
ms el enganche ser del 30% del costo de la casa y el resto se distribuir en pagos mensuales a pagar
en 7 aos. La empresa quiere obtener cunto debe pagar un comprador por concepto de enganche y
cunto por cada pago mensual.

7) El gobierno desea reforestar un bosque que mide determinado nmero de hectreas. Si la superficie
del terreno excede a 1 milln de metros cuadrados, entonces decidir sembrar as:

% de la superficie del bosque Tipo de rbol


70% pino
20% oyamel
10% cedro

Si la superficie es menor o igual a un milln de metros cuadrados, entonces sembrar as:


50% pino
30% oyamel
20% cedro

El gobierno desea saber el nmero de pinos, oyameles y cedros que tendr que sembrar en el bosque, si
se sabe que en 10 metros cuadrados caben 8 pinos, en 15 metros cuadrados caben 15 oyameles y en 18
metros cuadrados caben 10 cedros. Se sabe que una hectrea equivale a 10 mil metros cuadrados.
CORPORACIN UNIVERSITARIA AMERICANA

Selectivas anidadas o compuestas:

8) En una fbrica de computadoras se planea ofrecer a los clientes un descuento que depender del
nmero de computadoras que compre. Si las computadoras son menos de cinco se les dar un 10% de
descuento sobre el total de la compra; si el nmero de computadoras es mayor o igual a cinco pero
menos de diez se le otorga un 20% de descuento y si son 10 o ms se les da un 40% de descuento. El
precio de cada computadora es de $11,000

9) En una llantera se ha establecido una promocin de las llantas que consiste en lo siguiente: Si se
compran menos de cinco llantas el precio es de $300 cada una; el precio es de $250 si se compran de
cinco a 10 y de $200 si se compran ms de 10. Obtener la cantidad de dinero que una persona tiene
que pagar por cada una de las llantas que compra y la que tiene que pagar por el total de la compra.

10) En un juego de preguntas a las que se responde Si o No gana quien responda correctamente las tres
preguntas. Si se responde mal a cualquiera de ellas ya no se pregunta la siguiente y termina el juego.
Las preguntas son:
1. Colon descubri Amrica?
2. La independencia de Mxico fue en el ao 1810?
3. The Doors fue un grupo de rock Americano?

11) Un proveedor de estreos ofrece descuento del 10% sobre el precio sin IVA de algn aparato si este
cuesta $2000 ms. Adems, independientemente de sto, ofrece un 5% de descuento si la marca es
Nosy. Determinar cunto pagar, con IVA incluido, un cliente cualquiera por la compra de su aparato.

12) Una frutera ofrece las manzanas con descuento segn la siguiente tabla:
NUM. DE KILOS COMPRADOS % DESCUENTO
0-2 0%
2.01 - 5 10%
5.01 - 10 15%
10.01 en adelante 20%
Determinar cunto pagar una persona que compre manzanas en esa frutera.

13) Lea tres nmeros diferentes y determine el nmero medio del conjunto de los tres nmeros (el nmero
medio es aquel nmero que no es ni mayor, ni menor).