estructuras de desición

62
UNIVERSIDAD TÉCNICA DE AMBATO FACULTAD DE INGENIERÍA CIVIL Y MECÁNICA Módulo “EMPLEO DE NTIC’s II”

Upload: daniel-guerrero

Post on 13-Aug-2015

205 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Estructuras de desición

UNIVERSIDAD TÉCNICA DE

AMBATO

FACULTAD DE INGENIERÍA CIVIL Y MECÁNICA

Módulo

“EMPLEO DE NTIC’s II”

Ambato, Septiembre 2012

Page 2: Estructuras de desición

[ ] Elemento 4

LÓGICA DE PROGRAMACIÓN Y ALGORITMOS

ESTRUCTURAS DE DECISIÓN

“ESTRUCTURAS DE DECISIÓN”

OBJETIVOS

Conocer las partes que tiene una estructura de decisión y su importancia dentro

del desarrollo de algoritmos.

Diferenciar los tipos de estructuras de decisión y aplicarlos de manera correcta

en la solución de un problema determinado.

Reconocer los componentes de las Estructuras Caso y las múltiples ventajas que

tiene en algunos casos frente a las estructuras de decisión.

| 2

Page 3: Estructuras de desición

[ ] Elemento 4

LÓGICA DE PROGRAMACIÓN Y ALGORITMOS

ESTRUCTURAS DE DECISIÓN

--------------------------------------------------------------------------------

“ESTRUCTURAS DE DECISIÓN”

1. Definición de una estructura de decisión

2. Tipos de estructuras de decisión

2.1. Estructuras de Decisión Simples

2.2. Estructuras de Decisión Dobles

2.3. Estructuras de Decisión Múltiples

3. Ejercicios Resueltos de estructuras de decisión

4. Estructuras de decisión anidadas

4.1. Taller 4 (Estructuras de decisión)

4.2. Solución al Taller 4

4.3. Taller 5 (Recuperación de estructuras de decisión)

4.4. Solución al Taller 5

5. Estructuras Casos

5.1. Taller 6 (Estructuras Caso)

5.2. Solución al Taller 6

| 3

Page 4: Estructuras de desición

[ ] Elemento 4

LÓGICA DE PROGRAMACIÓN Y ALGORITMOS

ESTRUCTURAS DE DECISIÓN

“ESTRUCTURAS DE DECISIÓN”

1. Definición de una estructura de decisión: Las estructuras de decisión, como su

nombre lo indican, son estructuras que se usan en caso tal de que un algoritmo tenga

alguna pregunta o tenga que decidir sobre una operación cualquiera.

Para realizar las condiciones, se debe repasar los operadores relacionales: IGUAL (=),

MAYOR QUE (>), MENOR QUE (<), MAYOR IGUAL QUE (> =), MENOR IGUAL

QUE (<) y DIFERENTE (<>) o (!=).

Las condiciones se pueden realizar de la siguiente manera:

VARIABLE contra VARIABLE: SI (SALARIO = SALARIONETO) ENT

VARIABLE contra CONSTANTE: SI (SALARIO > 5´000.000) ENT

CONSTANTE contra VARIABLE: SI (500.000 < SALARIONETO) ENT

VARIABLE contra CÁLCULO: SI (SALARIO >= SALARIO+AUMENTO)

CÁLCULO contra VARIABLE: SI (SALARIO–AUMENTO <= SALNETO)

CONSTANTE contra CÁLCULO: SI (450.000 != SALARIO - DISMIN)

CÁLCULO contra CONSTANTE: SI (NETO + AUMENTO = 550.000)

CÁLCULO contra CÁLCULO: SI (SALBAS – RETEF > SALBAS + AUM)

 

2. Tipos de estructuras de decisión

2.1. Estructuras de Decisión Simples: Es cuando sólo se requiere de una sólo

estructura o una sola pregunta. Su sintaxis es la palabra SI, seguida de una pregunta o

condición (la cual va encerrada en medio de paréntesis), y por último termina con la

palabra ENTONCES (algunos colocan sólo sus 3 primeras letras: ENT), que significa

| 4

Page 5: Estructuras de desición

[ ] Elemento 4

ENTONCES. Así como todo algoritmo tiene su FIN, toda estructura de decisión

OBLIGATORIAMENTE, tiene su fin, el cual se escribe FIN-SI. Ejemplo:

SI (CONDICIÓN) ENTONCES

...Instrucciones, cálculos y/operaciones

FIN-SI

En medio de la estructura, SOLO se colocan las instrucciones, cálculos u operaciones

que se deban desarrollar cuando la pregunta sea verdadera. Las demás operaciones van

fuera de la estructura de decisión. Las instrucciones o cálculos se debe colocar un poco

corridos hacia la derecha para identificar perfectamente donde empieza la estructura y

donde termina.

Ejemplo: Desarrolle un algoritmo que lea dos número y calcule división del primero

por el segundo. Tenga en cuenta que sólo se puede dividir si el segundo número no es

igual a cero.

INICIO

LEER num1, num2

SI (num2 <> O) ENT

div = num1/num2

IMPRIMIR div

FIN-SI

FIN

 

2.2. Estructuras de Decisión Dobles: Es cuando sólo se requiere de dos estructuras,

dos preguntas o sólo se tienen dos posibilidades. Su sintaxis es idéntica a la estructura

simple, sólo que como ya se manejan dos posibilidades se agrega la palabra SINO, en

medio de la estructura. Ej:

SI (CONDICIÓN) ENTONCES

...Instrucciones, cálculos y/ operaciones (pregunta verdadera)

SINO

| 5

Page 6: Estructuras de desición

[ ] Elemento 4

...Instrucciones, cálculos y/ operaciones (pregunta falsa)

FIN-SI.

En este caso la primera instrucción se desarrollará cuando la pregunta sea verdadera, y

la otra, cuando sea falsa.

Ejemplo: Desarrolle un algoritmo que lea dos número y calcule división del primero

por el segundo sólo si el segundo número no es igual a cero, de lo contrario calcule su

multiplicación.

INICIO

LEER num1, num2

SI (num2 != O) ENT

div = num1 / num2

IMPRIMIR div

SINO

mult = num1 * num2

IMPRIMIR mult

FIN-SI

FIN

 

2.3. Estructuras de Decisión Múltiples: Es cuando se requiere el uso de mas de dos

estructuras, dos preguntas o tiene muchas posibilidades. Su sintaxis es una combinación

de las dos estructuras anteriores. Se debe utilizar un SI-SINO para cada una de las

probabilidades, EXCEPTO PARA LA ÚLTIMA. Y se debe tener en cuanta que el

número de SI que tenga un algoritmo, TIENE que ser igual al de FIN-SI. Cada

estructura se debe desplazar un poco hacia la derecha al momento de abrirla, pero se

cierran hacia el lado izquierdo. Ejemplo:

SI (CONDICIÓN1) ENTONCES

...Instrucciones, cálculos y/ operaciones (pregunta1 verdadera)

SINO

| 6

Page 7: Estructuras de desición

[ ] Elemento 4

SI (CONDICIÓN2) ENTONCES

...Instrucciones, cálculos y/ operaciones (pregunta2 verdadera)

SINO

SI (CONDICIÓN-n) ENTONCES

...Instrucciones, cálculos y/ operaciones (pregunta-n verdadera)

FIN-SI

FIN-SI

FIN-SI

En este caso las primeras instrucciones se desarrollarán cuando la pregunta sea

verdadera, y las otras, cuando sea falsa.

Ejemplo: Desarrolle un algoritmo que lea dos número y calcule división del primero

por el segundo sólo si el segundo es menor que el primero. Si el segundo es mayor que

el primero calcule su suma y si son iguales calcule su resta.

INICIO

LEER num1, num2

SI (num1 < num2) ENT

div = num1 / num2

IMPRIMIR div

SINO

SI (num2 > num1) ENT

sum = num1 + num2

IMPRIMIR sum

SINO

SI (num2 = num1)

resta = num1 –num2

IMPRIMIR resta

FIN-SI

FIN-SI

FIN-SI

FIN

| 7

Page 8: Estructuras de desición

[ ] Elemento 4

Para evitar el uso de muchas variables y el algoritmo se realice de una manera optima se

recomienda utilizar una sola variable para mostrar el resultados de las operaciones.

Observe el siguiente ejemplo:

INICIO

LEER num1, num2

SI (num1 < num2) ENT

resultado = num1 / num2

SINO

SI (num2 > num1) ENT

resultado = num1 + num2

SINO

SI (num2 = num1)

resultado = num1 –num2

FIN-SI

FIN-SI

FIN-SI

IMPRIMIR resultado

FIN

Además observe, y tenga muy en cuenta que CUANDO SE REALIZA UNA

OPERACIÓN, O UN CÁLCULO EN TODAS LAS ESTRUCTURAS DE DECISIÓN,

ÉSTA INTRUCCIÓN SE PUEDE COLOCAR DESPUÉS DE CERRAR TODAS LAS

ESTRUCTURAS DE DECISIÓN. Ese es el caso de la instrucción IMPRIMIR

resultado, que se podría colocar después de cada cálculo, pero como se repite en todas

las condiciones, es recomendable colocarlo al final, después de cerrar las estructuras.

Algunas preguntas dentro de un ejercicio, requerirán de preguntas con varias

condiciones, para lo cual se usan los operadores booleanos para separarlas: And o ^ que

es Disyunción Y. Or o v que es Conjunción O. Not o ! que es Negación. En los

algoritmos manejaremos los operadores ^, v y !.

Por ejemplo: Se pide determinar si un triangulo es equilátero, escaleno o isósceles. Se

leen sus 3 lados.

| 8

Page 9: Estructuras de desición

[ ] Elemento 4

INICIO

LEER Lado1, Lado2, Lado3

SI (Lado1=Lado2) ^ (Lado1=Lado3) ENT

IMP “ES EQUILÁTERO”

SINO

SI (Lado1!=Lado2) ^ (Lado1!=Lado3) ^ (Lado2!=Lado3) ENT

IMP “ES ESCALENO”

SINO

IMP “ES ISOSCELES”

FIN-SI

FIN-SI

FIN

Para entender mejor las estructuras de decisión, vamos a realizar varios ejercicios del

tema; pero basado en el último taller de algoritmos secuenciales.

3. Ejercicios Resueltos de estructuras de decisión

1. Desarrolle un algoritmo que lea el valor del pasaje y el número de pasajeros que

abordarán un microbús. Calcular el valor total a pagar. Además, imprima un mensaje

que diga si tiene sobre cupo o no. Tenga en cuenta que a un microbús le caben 20

pasajeros.

INICIO

LEER numpas, valpas

valtot = numpas * valpas

IMPRIMIR valtot

SI (numpas > 20)

IMPRIMIR “TIENE SOBRECUPO”

SINO

IMPRIMIR “NO TIENE SOBRECUPO”

FINSI

FIN

| 9

Page 10: Estructuras de desición

[ ] Elemento 4

 

2. Una persona recibe una cantidad no conocida en dólares. Haga un algoritmo que

determine el valor equivalente en pesos, sabiendo que el dólar tiene un costo de $2.550

si se cambian menos de 100 dólares, $2.600 si se cambian entre 100 y 350 y finalmente,

cuestan $3.000 si se cambian más de 350.

INICIO

LEER cantdol

SI (cantdol < 100)

ceqpes = cantdol * 2550

SINO

SI (cantdol >= 100)

ceqpes = cantdol * 2600

SINO

SI (cantdol > 350)

ceqpes = cantdol * 3000

FINSI

FINSI

FINSI

IMPRIMIR ceqpes

FIN

 

3. Un atleta recorre tres distancias diferentes en tres competiciones distintas. Calcular e

imprimir la distancia promedio. Imprima “Excelente distancia” si el promedio es mayor

a 12 kilómetros.

INICIO

LEER dis1, dis2, dis3

disprom = (dis1 + dis2 + dis3) / 3

IMPRIMIR disprom

SI (disprom > 12)

IMPRIMIR “EXCELENTE DISTANCIA”

| 10

Page 11: Estructuras de desición

[ ] Elemento 4

FINSI

FIN

 

4. Una persona ingresa a un gimnasio pesando una cantidad desconocida. Luego de una

sesión de trabajo redujo su peso en un 10%, posteriormente, asistió a una última sesión

en la que rebajó 18.5%. En un período de 8 días de inactividad aumentó un 3% de su

peso. Calcular e imprimir cada una de las disminuciones, el aumento y el peso actual de

esa persona, además imprima si tiene sobrepeso o no. Nota: El límite es hasta 78 kg).

INICIO

LEER pesd

red1 = pesd * 0.1

red2 = pesd * 0.185

aum = pesd * 0.03

pesact = pesd – red1 – red2 + aum

IMPRIMIR red1, red2, aum, pesact

SI (pesact > 78)

IMPRIMIR “TIENE SOBRE PESO”

SINO

IMPRIMIR “NO TIENE SOBRE PESO”

FINSI

FIN

 

5. En un montallantas se ofrece un descuento del 20% sobre el valor de cada llanta si el

número de llantas no supera las 10, de lo contrario tiene un descuento del 50%. Se pide

desarrollar un algoritmo que lea el número de llantas y el valor de cada llanta. Calcular

el valor de la compra y el valor total después del descuento.

INICIO

LEER nll, vll, nc

SI (nll <=10)

vrll = vll *0.8

| 11

Page 12: Estructuras de desición

[ ] Elemento 4

SINO

vrll = vll *0.5

FINSI

compra = nll * vll

vreal = nll * vrll

IMPRIMIR compra, vreal

FIN

 

6. Desarrollar el mismo ejercicio anterior, pero sabiendo que el valor de cada llanta es

de $40.000 y que el descuento es del 35% y 60%.

INICIO

LEER nll, nc

SI (nll <=10)

vrll = 40.000 * 0.65

SINO

vrll = 40.000 * 0.4

FINSI

compra = nll * 40.000

vreal = nll * vrll

IMPRIMIR compra, vreal

FIN

 

7. Calcular el salario neto de un empleado sabiendo que se le hace una retención del 3%

para pensión y 5% para salud si su salario básico no llega a los $400.000, si este es

mayor a $800.000 los porcentajes serán del 4% para pensión y 7% para salud; en caso

contrario los porcentajes serán 9% y 7% respectivamente. Se debe leer el valor de cada

hora y el número de horas trabajadas por el empleado.

INICIO

LEER vh, nht

sb = vh * nht

| 12

Page 13: Estructuras de desición

[ ] Elemento 4

SI (sb < 400.000)

pension = sb * 0.03

salud = sb * 0.05

SINO

SI (sb > 800.000)

pension = sb * 0.04

salud = sb * 0.07

SINO

pension = sb * 0.09

salud = sb * 0.07

FINSI

FINSI

sneto = sb – salud - pension

IMPRIMIR sneto

FIN

 

8. Calcular e imprimir el salario básico, el salario neto y cada uno de los porcentajes que

tiene un empleado en su liquidación de nómina. Tenga en cuenta que recibe un auxilio

de alimentación del 1% del salario básico y un subsidio de transporte de $45.000 si su

salario no asciende a $300.000, sino no tendrá auxilio de alimentación y el subsidio de

transporte será de $25.000. Luego se le hacen unas deducciones correspondientes al

1.5%, 28.1% y 0.55% por concepto de salud, pensión y aportes parafiscales

respectivamente. Luego de calculado el salario neto, se pide sacar un 0.05% del salario

neto para una donación a una catástrofe.

INICIO

LEER vh, nht

sb = vh * nht

SI (sb < 300.000)

aux = sb * 0.01

subt = 45.000

SINO

aux = 0

| 13

Page 14: Estructuras de desición

[ ] Elemento 4

subt = 25.000

FINSI

salud = sb * 0.015

pension = sb * 0.281

paraf = sb * 0.55

sneto = sb + aux + subt – salud – pension – paraf

donac = sneto * 0.005

sneto2 = sneto - donac

IMPRIMIR sb, sneto2, aux, salud, pension, paraf, donac

FIN

 

9. Calcular el peso equivalente en Gramos de una fruta que tiene un peso no conocido

en Kilogramos, sólo si el peso sobrepasa los 5 kilogramos, de lo contrario calcular el

equivalente en onzas. 16 onzas son una libra. 2 libras son 1 kilogramo. Un kilogramo

son 1000 gramos.

INICIO

LEER pesfrut

SI (pesfrut > 5)

peso = pesfrut * 1000

SINO

peso = (pesfrut / 2) * 16

FINSI

IMPRIMIR peso

FIN

 

10. El peso de un vehículo (en toneladas) se redujo en un 15% luego de hacerle unas

reparaciones. Se pide calcular el peso actual luego de la reducción. Por último se pide

calcular el equivalente en kilogramos y en gramos de ese peso actual. Si la reducción es

mayor a 3½ toneladas imprima un mensaje “El vehículo quedó liviano”.

| 14

Page 15: Estructuras de desición

[ ] Elemento 4

INICIO

LEER pesveh

red = pesveh * 0.15

pesact = pesveh – red

peskil = pesact * 1000

pesgr = peskil * 1000

IMPRIMIR pesact, peskil, pesgr

SI (red > 3,5)

IMPRIMIR “VEHÍCULO QUEDÓ LIVIANO”

FINSI

FIN

 

11. Resolver la ecuación del área del perímetro = 2- R, sólo si R es diferente de 2.

INICIO

LEER r

SI (R <> 0)

aperim = 2 - r

IMPRIMIR aperim

FINSI

FIN

 

12. Resolver la ecuación = (-b Öa) / 2bc, sólo si a es positivo y las variables c y b no son

iguales a 0.

INICIO

LEER d, b, a, c

SI (a > 0) ^ (b < > 0) ^ (c < > 0)

x1 = (-b * a ^ (1/2)) / (2 * b * c)

IMPRIMIR x1

FINSI

FIN

| 15

Page 16: Estructuras de desición

[ ] Elemento 4

 

13. Leer la temperatura de un día (en grados centígrados). Imprimir un mensaje “HACE

FRIO” si la temperatura es menor a 23°C, imprima “ES UN BUEN DÍA” si la

temperatura es mayor e igual que 23°C e inferior a 30°C. En caso que la temperatura sea

igual o superior a 30°C imprima “HACE CALOR”.

INICIO

LEER tempgc

SI (tempgc < 23)

IMPRIMIR “HACE FRIO”

SINO

SI (tempgc < 30)

IMPRIMIR “BUEN DÍA”

SINO

IMPRIMIR “HACE CALOR”

FINSI

FINSI

FIN

 

14. Leer un número. Calcular e imprimir su valor absoluto (el valor absoluto de un

número negativo es su positivo, y el de un número positivo es el mismo número.

Ejemplo: Valor Absoluto de –5 = 5, Valor absoluto de 3 = 3).

INICIO

LEER num

SI (num > 0)

vabs = num

SINO

vabs = num * (-1)

FINSI

IMPRIMIR vabs

FIN

| 16

Page 17: Estructuras de desición

[ ] Elemento 4

 

15. Leer la nota de un estudiante (en números enteros) e imprimir su equivalente en

letras sabiendo que si la nota es 5 su equivalente es EXCELENTE, 4 es BUENO, 3 es

ACEPTABLE, 2 INSUFICIENTE y 1 DEFICIENTE.

INICIO

LEER nota

SI (nota = 5)

IMPRIMIR “EXCELENTE”

SINO

SI (nota = 4)

IMPRIMIR “BUENO”

SINO

SI (nota = 3)

IMPRIMIR “ACEPTABLE”

SINO

SI (nota = 2)

IMPRIMIR “INSUFICIENTE”

SINO

SI (nota = 1)

IMPRIMIR “DEFICIENTE”

FINSI

FINSI

FINSI

FINSI

FINSI

FINSI

FIN

 

16. Desarrollar el mismo ejercicio anterior pero leyendo una nota con sus decimales y

teniendo en cuenta que si la nota es mayor o igual que 4.6 es EXCELENTE, si la nota

está entre 3.6 y 4.5 es BUENO, si la nota está entre 3.0 y 3.5 es ACEPTABLE, si la

| 17

Page 18: Estructuras de desición

[ ] Elemento 4

nota mayor o igual que 2.0 y menor que 3.0 es INSUFICIENTE y si la nota es menor a

2.0 la nota en letras es DEFICIENTE.

INICIO

LEER nota

SI (nota >= 4.6)

IMPRIMIR “EXCELENTE”

SINO

SI (nota >= 3.6)

IMPRIMIR “BUENO”

SINO

SI (nota >= 3.0)

IMPRIMIR “ACEPTABLE”

SINO

SI (nota >= 2.0)

IMPRIMIR “INSUFICIENTE”

SINO

SI (nota < 2.0)

IMPRIMIR “DEFICIENTE”

FINSI

FINSI

FINSI

FINSI

FINSI

FINSI

FIN

 

17. Un ratón se comió el 40% de un pedazo de queso y su peso aumentó en un 1,1%.

Leer el peso del queso y el peso del ratón. Calcular e imprimir el peso actual de los dos

sólo si el 20% del peso del ratón es inferior al peso final del queso.

INICIO

LEER pesr, pesq

| 18

Page 19: Estructuras de desición

[ ] Elemento 4

SI (pesr * 0.2 < pesq * 0.6)

red = pesq * 0.4

aum = pesr * 0.01

pesactq = pesq - red

pesactr = pesr + aum

IMPRIMIR pesactr, pesactq

FINSI

FIN

 

18. Calcule el promedio de goles anotados por un jugador en 4 encuentros, sólo si la

suma de éstos es superior a 20.

INICIO

LEER cg1, cg2, cg3, cg4

SI (cg1 + cg2 + cg3 + cg4 > 20)

prom = (cg1 + cg2 + cg3 + cg4) / 4

IMPRIMIR prom

FINSI

FIN

 

19. Calcular la tangente de las funciones Seno y Coseno, sabiendo que Tan = Sen / Cos.

Tenga en cuenta que no se puede dividir por 0; en caso contrario imprima “NO ES

POSIBLE DIVIDIR”

INICIO

LEER sen, cos

SI (cos < > 0)

tan = sen /cos

IMPRIMIR tan

SINO

IMPRIMIR “NO ES POSIBLE DIVIDIR”

| 19

Page 20: Estructuras de desición

[ ] Elemento 4

FINSI

FIN

 

20. Desarrolle un algoritmo que dé solución a la ecuación contable ACTIVO = PASIVO

+ PATRIMONIO. Además, imprima si la empresa tiene saldo en cero, tiene perdida o

tiene alguna ganancia.

INICIO

LEER pas, pat

act = pas + pat

SI (act = 0)

IMPRIMIR “EMPRESA TIENE SALDO EN CERO”

SINO

SI (act < 0)

IMPRIMIR “EMPRESA TIENE PERDIDA”

SINO

IMPRIMIR “EMPRESA TIENE GANANCIAS”

FINSI

FINSI

FIN

 

21. Calcular el número de días y horas vividos por una persona de la cual se desconoce

su año de nacimiento. Sólo si el año de nacimiento es anterior al año 2000.

INICIO

LEER anac, aactual

SI (anac < 2000)

numdias = (aactual – anac) * 365

numhoras = (aactual – anac) * 24

IMPRIMIR numdias, numhoras

FINSI

FIN

| 20

Page 21: Estructuras de desición

[ ] Elemento 4

 

22. La banda ancha incrementó la velocidad de transferencia de datos en Internet en un

230%. Imprima la velocidad anterior y la velocidad actual, teniendo en cuenta que un

equipo tiene banda ancha y otro no. Leer si tiene banda ancha o no un computador y

tenga en cuenta que si no la tiene el incremento es 0.

INICIO

LEER velant, tba

SI (tba = “SI”)

velact = velant * 3.3

SINO

LEER porc

velact = velant * porc / 100

FINSI

IMPRIMIR velant, velact

FIN

 

23. En una biblioteca se prestaron 457 libros en los últimos días. Calcular el número

total de libros que hay en la actualidad sabiendo que al iniciar la biblioteca había

Ylibros, imprima si hay libros o no.

INICIO

LEER Ylibros

totlib = Ylibros – 457

SI (totlib > 0)

IMPRIMIR “HAY LIBROS”

SINO

IMPRIMIR “NO HAY LIBROS”

FINSI

FIN

 

| 21

Page 22: Estructuras de desición

[ ] Elemento 4

24. Un tendero empezó el día con un Valor X en dinero. Luego tuvo 4 ventas por un

valor de $800.000 y finalmente pagó a sus acreedores el 10% de todo lo que tenía en

caja. Imprima el dinero con el que empezó, el dinero con el que terminó y el pago a sus

acreedores. Imprima si se le pagó a proveedores más de $50.000 o no.

INICIO

LEER xvalor

acreed = (xvalor + 800.000) * 0.1

vfinal = xvalor + 800.000- acreed

IMPRIMIR Xvalor, vfinal, acreed

SI (acreed > 50.000)

IMPRIMIR “PAGÓ MÁS DE 50.000 A ACREEDORES”

SINO

IMPRIMIR “NO PAGÓ MÁS DE 50.000 A ACREEDORES”

FINSI

FIN

 

25. Calcular el salario neto de empleado sabiendo que se le hace una retención del 25%.

Imprima un mensaje que diga si gana más del mínimo, gana menos o gana el salario

mínimo.

INICIO

LEER salbas, salmin

salneto= salbas * 0.75

IMPRIMIR salneto

SI (salneto > salmin)

IMPRIMIR “GANA MAS DEL SALARIO MINIMO”

SINO

SI (salneto > salmin)

IMPRIMIR “GANA MENOS DEL SALARIO MINIMO”

SINO

IMPRIMIR “GANA EL SALARIO MINIMO”

FINSI

| 22

Page 23: Estructuras de desición

[ ] Elemento 4

FINSI

FIN

 

26. Resolver la siguiente ecuación Aux = i (n-3) / n2+x

INICIO

LEER salbas, salmin

salneto= salbas * 0.75

IMPRIMIR salneto

SI (salneto > salmin)

IMPRIMIR “GANA MAS DEL SALARIO MINIMO”

SINO

SI (salneto > salmin)

IMPRIMIR “GANA MENOS DEL SALARIO MINIMO”

SINO

IMPRIMIR “GANA EL SALARIO MINIMO”

FINSI

FINSI

FIN

 

27. Calcular la raíz cuadrada del triple del valor de PI - X.

INICIO

LEER x

rta = 3 * 3,1416 - x

SI (x > 0)

raiz = rta ^ (1 / 2)

IMPRIMIR raiz

SINO

IMPRIMIR “NO SE PUEDE SACAR RAÍZ DE UN NÚMERO NEGATIVO”

FINSI

FIN

| 23

Page 24: Estructuras de desición

[ ] Elemento 4

 

28. Goku es un personaje de las tiras cómicas que tiene la particularidad que puede

transformarse y aumentar su nivel de pelea luego de determinados entrenamientos.

Desarrolle un algoritmo que lea el nivel de pelea antes de una transformación que

aumentó su nivel de pela en un 300%. Imprimir su nivel de pelea actual y su aumento,

sólo si el nivel final es mayor a 5000.

INICIO

LEER nivelantes

aum = nivelantes * 300 / 100

nivelfinal = nivelantes + aum

SI (nivelfinal > 5000) ENT

IMPRIMIR nivelantes, nivelfinal

SINO

IMPRIMIR “NIVEL FINAL NO SUPERÓ LOS 5000”

FINSI

FIN

4. Estructuras de decisión anidadas

Las estructuras de decisión anidadas se usan cuando una pregunta va dentro de otra (s)

preguntas sin la palabra SINO. Este tipo de estructuras se usan cuando se necesitan que

se cumplan una condición para seguir con la otra y reemplaza a las estructuras que usan

el operador (Y) (AND) o (^). Por ejemplo: Calcular la suma de 2 números sólo si los

dos son pares y los dos son positivos.

INICIO

LEER num1, num2

SI (num1 mod 2 = 0) ^ (num2 mod 2 = 0) ^ (num1 > 0) ^ (num2 > 0)

suma = num1 + num2

IMPRIMIR suma

FINSI

FIN

| 24

Page 25: Estructuras de desición

[ ] Elemento 4

Para que este ejercicio pueda calcular la suma, tendrán que cumplirse las 4 condiciones

antes mencionadas. Este ejercicio también se puede hacer con Estructuras de decisión

Anidadas.

INICIO

LEER num1, num2

SI (num1 mod 2 = 0)

SI (num2 mod 2 = 0)

SI (num1 > 0)

SI (num2 > 0)

suma = num1 + num2

IMPRIMIR suma

FINSI

FINSI

FINSI

FINSI

FIN

Como ya se explicó el manejo de las estructuras de decisión, cuando se cumple una

condición (o sea que es verdadera) se pasa a realizar las instrucciones que hay allí; pero

acá se encuentra con otra preguntas que repite el mismo proceso hasta el final, y para

ejecutar la suma, se tendrían que cumplir las 4 condiciones, en caso contrario no haría

nada.

4.1. Taller 4 (Estructuras de decisión)

1- Leer dos números e imprimirlos si por lo menos hay uno positivo.

2- Leer dos números calcular la suma de los números. Imprima los números leídos y la

suma sólo si su suma es negativa.

3- Leer el nombre, la edad y el sexo de cualquier persona e imprimir el nombre sólo si

la persona es de sexo masculino y es mayor de edad. Tenga en cuenta que la variable

sexo puede tomar dos valores: M si es Masculino o F es Femenino.

| 25

Page 26: Estructuras de desición

[ ] Elemento 4

4- Leer la cédula, el nombre, la edad, el sexo y el estado civil de cualquier persona e

imprimir el nombre sólo si la persona es una mujer, soltera, mayor de edad. Tenga en

cuenta que la variable sexo puede tomar dos valores: M si es Masculino o F es

Femenino y la variable estado civil se manejará: 1 si es casado, 2 si es soltero y 3 si es

otro.

5- Elaborar un algoritmo que lea la cédula de un empleado, el nombre, el salario básico

por hora y las horas trabajadas en la semana. Si el salario bruto es mayor a $250.000 la

retención en la fuente es del 27% del salario bruto. Imprimir la cédula del empleado, el

nombre, el salario bruto, el valor de retención y el salario neto.

6- Leer un número, imprimirlo y decir si es par o impar.

7- Leer un número, imprimirlo y decir si es positivo o negativo.

8- Leer dos número e imprimir sólo los positivos.

9- Leer un numero y escribir el valor absoluto del mismo.

10- Leer dos números, calcular e imprimir su división sólo si el segundo número es

diferente de cero. Si el segundo número es igual cero no ejecute el cálculo e imprima un

mensaje que diga DIVISIÓN NO ES POSIBLE”.

11- Leer el nombre y la edad de cualquier persona. Imprimir el nombre sólo si la

personas es mayor de edad, de lo contrario imprima un mensaje que diga “NO PUEDE

VOTAR”.

12- Leer el nombre, la edad, el sexo y el estado civil de cualquier persona e imprimir, si

es hombre o mujer menor de edad, o es un hombre casado de cualquier edad, el nombre

de la persona y un mensaje que diga “USTED NO SE MANDA”. En los demás casos

imprima sólo el nombre.

13- Elaborar un algoritmo que lea la cédula de un empleado, el nombre, el salario básico

| 26

Page 27: Estructuras de desición

[ ] Elemento 4

por hora y las horas trabajadas en la semana. Si el salario bruto es menor a $130.000 la

retención en la fuente es del 9% y la retención para el ISS será del 5%; de lo contrario la

retención en la fuente será del 12% y la retención para el ISS será del 8% del salario

bruto. Se debe imprimir todos los datos del empleado.

14- Elaborar un algoritmo que lea la cédula de un empleado, el nombre, el salario básico

por hora y las horas trabajadas en la semana. Calcular el salario neto sabiendo que si las

horas trabajadas en la semana es mayor a 48, esas horas demás se consideran como

horas extras y tienen un 35% de recargo. Se debe imprimir la cédula del empleado, el

nombre y el salario neto.

15- Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la

cantidad que tiene en inversión en el banco. El decidirá reinvertir los intereses siempre y

cuando estos excedan a $7000, y en ese caso desea saber cuanto dinero tendrá

finalmente en su cuenta.

16- Un vendedor desea calcular la comisión sobre la venta de cualquier cantidad de un

articulo. El vendedor le corresponde el 5% de comisión si el valor unitario del articulo

vendido es menor a $350 y el 7% si el valor unitario es de $350 o más. Se debe

imprimir los datos del vendedor.

17- Elaborar un algoritmo que calcule la nota definitiva de un estudiante de lógica,

teniendo en cuenta que la nota definitiva consta de 4 notas que valen un 25% cada una.

Imprimir los datos del estudiante y un mensaje que diga “PERDIÓ” si en realidad lo

perdió; de lo contrario imprima “GANÓ”. Se deben leer los datos del estudiante y sus

respectivas notas. Gana con una nota mayor o igual a 3.0 de lo contrario pierde.

18- Determinar si un alumno aprueba a reprueba un curso, sabiendo que aprobará si su

promedio de tres calificaciones es mayor o igual a 70; reprueba en caso contrario.

19- En un almacén se hace un 20% de descuento a los clientes cuya compra supere los

$1000 ¿Cual será la cantidad que pagara una persona por su compra?

20- Un obrero necesita calcular su salario semanal, el cual se obtiene de la siguiente

manera: Si trabaja 40 horas o menos se le paga $16 por hora, si trabaja mas de 40 horas

se le paga $16 por cada una de las primeras 40 horas y $20 por cada hora extra.

| 27

Page 28: Estructuras de desición

[ ] Elemento 4

21- Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la

cantidad que tiene en inversión en el banco. El decidirá reinvertir los intereses siempre y

cuando estos excedan a $7000, y en ese caso desea saber cuanto dinero tendrá

finalmente en su cuenta.

22- Desarrolle un algoritmo que lea dos números y los imprima en forma ascendente.

23- Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuantas

calorías consume su cuerpo durante todo el tiempo que realice una misma actividad. Las

actividades que tiene permitido realizar son únicamente dormir o estar sentado en

reposo. Los datos que tiene son que estando dormido consume 1.08 calorías por minuto

y estando sentado en reposo consume 1.66 calorías por minuto.

24- Hacer un algoritmo que imprima el nombre de un articulo, clave, precio original y

su precio con descuento. El descuento lo hace en base a la clave, si la clave es 01 el

descuento es del 10% y si la clave es 02 el descuento en del 20% (solo existen dos

claves).

25- Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si se

compran tres camisas o mas se aplica un descuento del 20% sobre el total de la compra

y si son menos de tres camisas un descuento del 10%

26- Se debe elaborar un algoritmo que calcule el salario neto de un trabajador, sabiendo

que si el salario bruto es menor a $135.000 la retención en la fuente es del 7% y la

retención del ISS es del 8.5%. de lo contrario la retención en la fuente es del 9.5% y la

retención del ISS es del 10%. Se debe leer cédula y salario básico. Imprimir todos los

datos y los cálculos efectuados.

27- Una empresa quiere hacer una compra de varias piezas de la misma clase a una

fabrica de refacciones. La empresa, dependiendo del monto total de la compra, decidirá

que hacer para pagar al fabricante. Si el monto total de la compra excede de $500 000 la

empresa tendrá la capacidad de invertir de su propio dinero un 55% del monto de la

compra, pedir prestado al banco un 30% y el resto lo pagara solicitando un crédito al

fabricante. Si el monto total de la compra no excede de $500 000 la empresa tendrá

capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagara

| 28

Page 29: Estructuras de desición

[ ] Elemento 4

solicitando crédito al fabricante. El fabricante cobra por concepto de intereses un 20%

sobre la cantidad que se le pague a crédito.

28- Leer 2 números; si son iguales que los multiplique, si el primero es mayor que el

segundo que los reste y si no que los sume.

29- Leer tres números diferentes e imprimir el numero mayor de los tres.

30- Determinar la cantidad de dinero que recibirá un trabajador por concepto de las

horas extras trabajadas en una empresa, sabiendo que cuando las horas de trabajo

exceden de 40, el resto se consideran horas extras y que estas se pagan al doble de una

hora normal cuando no exceden de 8; si las horas extras exceden de 8 se pagan las

primeras 8 al doble de lo que se pagan las horas normales y el resto al triple. Leer el

número de horas trabajadas y precio por cada hora.

31- Calcular la utilidad que un trabajador recibe en el reparto anual de utilidades si este

se le asigna como un porcentaje de su salario mensual que depende de su antigüedad en

la empresa de acuerdo con la siguientes condiciones: Si el tiempo es de menos de 1 año

la utilidad es 5 % del salario. Si el tiempo es de 1 año o mas y menos de 2 años la

utilidad es del 7% del salario. Si son 2 años o mas y menos de 5 años, la utilidad es de

10%. Si son 5 años o mas y menos de 10 años, la utilidad es del 15% y si son 10 años o

mas la utilidad es del 20%.

32- En una tienda de descuento se efectúa una promoción en la cual se hace un

descuento sobre el valor de la compra total según el color de la bolita que el cliente

saque al pagar en caja. Si la bolita es de color blanco no se le hará descuento alguno, si

es verde se le hará un 10% de descuento, si es amarilla un 25%, si es azul un 50% y si

es roja un 100%. Determinar la cantidad final que el cliente deberá pagar por su compra.

se sabe que solo hay bolitas de los colores mencionados.

33- El IMSS requiere clasificar a las personas que se jubilaran en el año de 1997.

Existen tres tipos de jubilaciones: por edad, por antigüedad joven y por antigüedad

adulta. Las personas adscritas a la jubilación por edad deben tener 60 años o mas y una

antigüedad en su empleo de menos de 25 años. Las personas adscritas a la jubilación por

antigüedad joven deben tener menos de 60 años y una antigüedad en su empleo de 25

años o mas. Las personas adscritas a la jubilación por antigüedad adulta deben tener 60

| 29

Page 30: Estructuras de desición

[ ] Elemento 4

años o mas y una antigüedad en su empleo de 25 años o mas. Determinar en que tipo de

jubilación, quedara adscrita una persona.

34- Se debe elaborar un algoritmo que lea cédula, nombre, básico hora y las horas

trabajadas en la semana de un empleado. Calcular el salario neto teniendo en cuenta que

si el salario bruto es menor o igual a $120.000 la retención en la fuente será del 14% y

la retención del ISS será del 8%. Si el salario bruto está entre $120.000 y $160.000 la

retención en la fuente será del 16% y la retención del ISS será del 13%. Pero si el

salario bruto es superior a $160.000 la retención en la fuente será del 17% y la retención

del ISS será del 10%. Se debe imprimir la cédula del empleado, el nombre, el salario

bruto, el valor de deducciones y el salario neto.

35- Para calcular el salario neto de un empleado se debe leer cédula, nombre y salario

básico. Y se debe tener en cuenta las siguientes condiciones: para salarios básicos hasta

$400.000, no hay retenciones de ninguna clase. Para salarios de más $400.000 hasta

$800.000 la retención en la fuente será del 12% y la retención del ISS será del 10%. Y

para salarios superiores a $800.00 la retención en la fuente que le corresponde será del

15% y la retención del ISS será del 12%. Imprimir todos los datos y cálculos del

empleado.

36- Elabore un algoritmo que calcule salario neto mensual de un empleado. Se debe leer

cédula, nombre, salario básico hora y las horas trabajadas. Para calcularlo se debe tener

en cuenta lo siguiente: Si el salario básico es menor o igual a $480.000 se le hará una

retención en la fuente del 4% y para el ISS un 6%. Si el salario básico es mayor a

$480.000 y menor o igual a $560.000 se le hará una retención en la fuente del 7% y para

el ISS un 8%. Si el salario básico es mayor a $560.000 y menor o igual a $745.000 se le

hará una retención en la fuente del 10% y para el ISS un 11%. Si el salario básico es

mayor a $560.000 y menor o igual a $900.000 se le hará una retención en la fuente del

20% y para el ISS un 30%. Si el salario básico es mayor a $900.000 se le hará una

retención en la fuente del 25% y para el ISS un 35%. Imprimir todos los datos.

37- Realice un algoritmo que lea nombre, edad, sexo (F = Femenino, M = Masculino),

estado civil (1 = Casado, 2 = Soltero, 3 = Otro) de cualquier persona e imprimir: Si es

menor de edad un mensaje que diga “NO PUEDE VOTAR”. Si es mujer, mayor de

edad y casada imprima un mensaje que diga “PUEDE VOTAR EN LA MESA 1”. Si es

| 30

Page 31: Estructuras de desición

[ ] Elemento 4

mujer, mayor de edad y soltera imprima un mensaje que diga “PUEDE VOTAR EN LA

MESA 2”. Si es hombre mayor de edad imprima un mensaje que diga “PUEDE

VOTAR EN LA MESA 3”. Y Si es hombre o mujer que no sea ni soltero ni casado

imprima un mensaje que diga “PUEDE VOTAR EN LA MESA 4”.

38- Un hombre desea calcular la comisión sobre la venta de una cantidad no conocida

de un articulo. Al vendedor le corresponde el 5% de comisión si el valor de la venta

total es menor o igual a $545.000. Si el valor de la venta total es mayor a $545.000 y

menor o igual a $750.000 la comisión será del 7% y si la venta total es mayor a

$750.000 la comisión será del 9%. Se debe leer el nombre del vendedor, la descripción

del articulo, la cantidad vendida, el valor unitario. Imprimir todos los datos del

vendedor.

39- Elaborar un algoritmo que calcule la nota definitiva de un estudiante, teniendo en

cuenta que la nota definitiva consta de 4 notas que valen las dos primeras un 10% y las

otras dos 40% respectivamente. Imprimir los datos del estudiante y un mensaje que diga

“DEBE HABILITAR” si perdió la materia con una nota definitiva menor a 3.0 y mayor

igual a 2.5. Si la nota definitiva es menor a 2.5 imprima un mensaje “PERDIÓ. DEBE

REPETIR”. Y si la nota definitiva es mayor o igual a 3.0 imprima un mensaje que diga

“GANÓ. FELICITACIONES”. Se deben leer los datos del estudiante y sus respectivas

notas.

40- Lea 3 números y calcule su promedio. Luego imprimir un mensaje que diga “ES

MAYOR AL PROMEDIO”, “ES MENOR QUE EL PROMEDIO” o “ES IGUAL AL

PROMEDIO” a los números que cumplan cada condición.

41- Lea 3 números e imprima el número mayor y un mensaje, el número menor y un

mensaje y el número medio con su respectivo mensaje. Asuma que no existen números

iguales.

42- Lea 3 números e imprima el número mayor, el número menor y el número medio.

Además, imprimir los números que sean iguales.

43- Calcular el pago de un local por parte de inquilino. Lea el nombre del inquilino, la

cédula, la dirección del local, fecha en que fue ocupado el local y la fecha de pago. Para

calcular el valor a pagar se debe tener en cuenta: El valor del arrendamiento mensual

| 31

Page 32: Estructuras de desición

[ ] Elemento 4

equivale a $1.500.000, pero si el inquilino paga antes de 30 días se concede un

descuento del 0.5% por cada día que le falta para cumplir el mes y si el pago es después

de 30 días se le cobrará un interés equivalente al 2.5% por cada día que esté en mora. Se

debe imprimir el total pagado y los datos del inquilino.

44-Tomando como base los resultados obtenidos en un laboratorio de análisis clínicos,

un medico determina si una persona tiene anemia o no, lo cual depende de su nivel de

hemoglobina en la sangre, de su edad y de su sexo. Si el nivel de hemoglobina que tiene

una persona es menor que el rango que le corresponde, se determina su resultado como

positivo y en caso contrario como negativo. La tabla en la que el medico se basa para

obtener el resultado es la siguiente:

EDAD ------------NIVEL HEMOGLOBINA

0 - 1 mes ----------------13 - 26 g%

> 1 y < = 6 meses -------10 - 18 g%

> 6 y < = 12 meses ------11 - 15 g%

> 1 y < = 5 años ---------11.5 - 15 g%

> 5 y < = 10 años -------12.6 - 15.5 g%

> 10 y < = 15 años ------13 - 15.5 g%

mujeres > 15 años -------12 - 16 g%

hombres > 15 años ------14 - 18 g%

 

| 32

Page 33: Estructuras de desición

[ ] Elemento 4

4.3. Taller 5 (Recuperación de estructuras de decisión)

1) Calcular el total que una persona debe pagar en una llantera, si el precio de cada

llanta es de $800 si se compran menos de 5 llantas y de $700 si se compran 5 o mas.

2) En un supermercado se hace una promoción, mediante la cual el cliente obtiene un

descuento dependiendo de un número que se escoge al azar. Si el numero 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 cuanto dinero se le descuenta.

3) Calcular el numero de pulsaciones que debe tener una persona por cada 10 segundos

de ejercicio aeróbico; la formula que se aplica cuando el sexo es femenino es:

num.pulsaciones = (220 - edad)/10, y si el sexo es masculino: num. pulsaciones = (210 -

edad)/10

4) Una compañía de seguros esta abriendo un depto. de finanzas y estableció un

programa para captar clientes, que consiste en lo siguiente: Si el monto por el que se

efectúa 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 cual será la cuota que debe pagar un cliente.

5) En una escuela la colegiatura de los alumnos se determina según el numero de

materias que cursan. El costo de todas las materias es el mismo.

Se ha establecido un programa para estimular a los alumnos, el cual consiste en lo

siguiente: si el promedio obtenido por un alumno en el ultimo 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 obtenido 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 raíces ofrece casas de interés social, bajo las siguientes

condiciones: Si los ingresos del comprador son menores de $8000 o mas el enganche

será del 15% del costo de la casa y el resto se distribuirá en pagos mensuales, a pagar en

diez años. Si los ingresos del comprador son menos de $8000 o mas el enganche será

del 30% del costo de la casa y el resto se distribuirá en pagos mensuales a pagar en 7

| 33

Page 34: Estructuras de desición

[ ] Elemento 4

años. La empresa quiere obtener cuanto debe pagar un comprador por concepto de

enganche y cuanto por cada pago parcial.

7) El gobierno ha establecido el programa SAR (Sistema de Ahorro para el Retiro) que

consiste en que los dueños de la empresa deben obligatoriamente depositar en una

cuenta bancaria un porcentaje del salario de los trabajadores; adicionalmente los

trabajadores pueden solicitar a la empresa que deposite directamente una cuota fija o un

porcentaje de su salario en la cuenta del SAR, la cual le será descontada de su pago. Un

trabajador que ha decidido aportar a su cuenta del SAR desea saber la cantidad total de

dinero que estará depositado a esa cuenta cada mes, y el pago mensual que recibirá.

8) Una persona desea iniciar un negocio, para lo cual piensa verificar cuanto dinero le

prestara el banco por hipotecar su casa. Tiene una cuenta bancaria, pero no quiere

disponer de ella a menos que el monto por hipotecar su casa sea muy pequeño. Si el

monto de la hipoteca es menor que $1 000 000 entonces invertirá el 50% de la inversión

total y un socio invertirá el otro 50%. Si el monto de la hipoteca es de $ 1 000 000 o

mas, entonces invertirá el monto total de la hipoteca y el resto del dinero que se necesite

para cubrir la inversión total se repartirá a partes iguales entre el socio y el.

9) El gobierno del estado de México desea reforestar un bosque que mide determinado

numero de hectáreas. Si la superficie del terreno excede a 1 millón de metros cuadrados,

entonces decidirá sembrar de la sig. manera:

Porcentaje de la superficie del bosque Tipo de árbol

70% pino

20% oyamel

10% cedro

Si la superficie del terreno es menor o igual a un millón de metros cuadrados, entonces

decidirá sembrar de la sig. manera:

Porcentaje de la superficie del bosque Tipo de árbol

50% pino

30% oyamel

20% cedro

| 34

Page 35: Estructuras de desición

[ ] Elemento 4

El gobierno desea saber el numero 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. También se

sabe que una hectárea equivale a 10 mil metros cuadrados.

10) Una fabrica ha sido sometida a un programa de control de contaminación para lo

cual se efectúa una revisión de los puntos IMECA generados por la fabrica. El programa

de control de contaminación consiste en medir los puntos IMECA que emite la fabrica

en cinco días de una semana y si el promedio es superior a los 170 puntos entonces

tendrá la sanción de parar su producción por una semana y una multa del 50% de las

ganancias diarias cuando no se detiene la producción. Si el promedio obtenido de puntos

IMECA es de 170 o menor entonces no tendrá ni sanción ni multa. El dueño de la

fábrica desea saber cuanto dinero perderá después de ser sometido a la revisión.

11) Una persona se encuentra con un problema de comprar un automóvil o un terreno,

los cuales cuestan exactamente lo mismo. Sabe que mientras el automóvil se devalúa,

con el terreno sucede lo contrario. Esta persona comprara el automóvil si al cabo de tres

años la devaluación de este no es mayor que la mitad del incremento del valor del

terreno. Ayúdale a esta persona a determinar si debe o no comprar el automóvil.

12) En una fábrica de computadoras se planea ofrecer a los clientes un descuento que

dependerá del numero 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 numero de

computadoras es mayor o igual a cinco pero menos de diez se le otorga un 20% de

descuento; y si son 10 o mas se les da un 40% de descuento. El precio de cada

computadora es de $11,000

13) En una llantera se ha establecido una promoción de las llantas marca “Ponchadas”,

dicha promoción consiste en lo siguiente: Si se compran menos de cinco llantas el

precio es de $300 cada una, de $250 si se compran de cinco a 10 y de $200 si se

compran mas 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.

14) 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

| 35

Page 36: Estructuras de desición

[ ] Elemento 4

pregunta la siguiente y termina el juego. Las preguntas son:

1. Colon descubrió América?

2. La independencia de Colombia fue en el año 1810?

3. The Doors fue un grupo de Rock Americano?

15) Un proveedor de estéreos ofrece un descuento del 10% sobre el precio sin IVA, de

algún aparato si este cuesta $2000 o mas. Además, independientemente de esto, ofrece

un 5% de descuento si la marca es “NOSY”. Determinar cuanto pagara, con IVA

incluido, un cliente cualquiera por la compra de su aparato.

16) Determinar cuanto pagara una persona que compre manzanas en una frutería que

tiene los siguientes descuentos:

NUM. DE KILOS COMPRADOS % DESCUENTO

0 - 2 0%

2.01 - 5 10%

5.01 - 10 15%

10.01 en adelante 20%

17) El dueño de una empresa desea planificar las decisiones financieras que tomara en

el siguiente año. La manera de planificarlas depende de lo siguiente: Si actualmente su

capital se encuentra con saldo negativo, pedirá un préstamo bancario para que su nuevo

saldo sea de $10 000. Si su capital tiene actualmente un saldo positivo pedirá un

préstamo bancario para tener un nuevo saldo de $20 000, pero si su capital tiene

actualmente un saldo superior a los $20 000 no pedirá ningún préstamo.

Posteriormente repartirá su presupuesto de la siguiente manera. $5000 para equipo de

computo, $2000 para mobiliario y el resto la mitad será para la compra de insumos y la

otra para otorgar incentivos al personal. Desplegar que cantidades se destinaran para la

compra de insumos e incentivos al personal y, en caso de que fuera necesario, a cuanto

ascendería la cantidad que se pediría al banco.

18. Una institución educativa estableció un programa para estimular a los alumnos con

buen rendimiento académico y que consiste en lo siguiente:

Si el promedio es de 9.5 o mas y el alumno es de preparatoria, entonces este podrá

| 36

Page 37: Estructuras de desición

[ ] Elemento 4

cursar 55 unidades y se le hará un 25% de descuento.

Si el promedio es mayor o igual a 9 pero menor que 9.5 y el alumno es de preparatoria,

entonces este podrá cursar 50 unidades y se le hará un 10% de descuento.

Si el promedio es mayor que 7 y menor que 9 y el alumno es de preparatoria, este podrá

cursar 50 unidades y no tendrá ningún descuento.

Si el promedio es de 7 o menor, el numero de materias reprobadas es de 0 a 3 y el

alumno es de preparatoria, entonces podrá cursar 45 unidades y no tendrá descuento.

Si el promedio es de 7 o menor, el numero de materias reprobadas es de 4 o mas y el

alumno es de preparatoria, entonces podrá cursar 40 unidades y no tendrá ningún

descuento.

Si el promedio es mayor o igual a 9.5 y el alumno es de profesional, entonces podrá

cursar 55 unidades y se le hará un 20% de descuento.

Si el promedio es menor de 9.5 y el alumno es de profesional, entonces podrá cursar 55

unidades y no tendrá descuento.

Obtener el total que tendrá que pagar un alumno si la colegiatura para alumnos de

profesional es de $300 por cada cinco unidades y para alumnos de preparatoria es de

$180 por cada cinco unidades.

19) Que lea tres números diferentes y determine el numero medio del conjunto de los

tres números (el numero medio es aquel numero que no es ni mayor, ni menor).

20) Leer el nombre, la edad y el teléfono de dos personas. Imprimir todos los datos, sólo

si tienen la misma edad.

21) En las pruebas ICFES se presentan dos tipos pruebas, una de aptitud matemática y

otra de lenguaje. Leer los puntajes obtenidos por un estudiante en cada prueba e

imprimir en cuál obtuvo el mayor puntaje o si fueron iguales.

22) Leer un símbolo químico e imprimir el elemento sólo si es Hidrógeno, Oxigeno o

Nitrógeno.

23) Leer la fecha de nacimiento de una persona e imprimir su signo del zodiaco.

| 37

Page 38: Estructuras de desición

[ ] Elemento 4

24) Leer los tres lados de un triángulo (A,B y C). Imprima que tipo de triángulo es

teniendo en cuenta que es equilátero sólo si tres lados son iguales, si dos de sus lados

son iguales es un triángulo isósceles y si todos son desiguales es escaleno.

25) Leer el nombre, la edad y el teléfono de dos personas. Imprimir todos los datos, sólo

si tienen la misma edad y tienen distinto nombre.

26) Leer tres números e imprimir cual de ellos es el mayor.

27) Leer dos números e imprimir sólo los positivos.

28) Se pide leer la edad, el peso y la estatura de una persona e imprimir si puede o no

participar en una competencia. Los requisitos para participar son: ser mayor de edad,

pesar mas de 50 Kilogramos y medir mas de 1.50 Metros.

29) Lea un día de la semana e imprima ES UN EXCELENTE DÍA si es sábado o

domingo, de lo contrario imprima ES UN PÉSIMO DÍA, TENEMOS QUE

ESTUDIAR.

30) Calcule el cuadrado de un número sólo si es igual a 10, 20 o 30.

31) Una persona desea realizar un viaje a alguna de estas tres ciudades: ESTADOS

UNIDOS, FRANCIA O ITALIA. Desarrolle un algoritmo que lea el estado del clima, y

el valor de descuento ofrecido por la agencia de viaje. Diga a cual ciudad debe ir

teniendo en cuenta que si el estado del clima es bueno y el descuento es de 500 dólares

viajará a ESTADOS UNIDOS, si el clima está regular y el descuento es de 1000 dólares

viajará a FRANCIA, sino lo hará a ITALIA.

32) Desarrolle un algoritmo que lea el salario básico de un empleado, el estado

(1:ACTIVO, 2:SUSPENDIDO) y el número de hijos. Calcular el salario neto de un

empleado teniendo en cuenta que si está activo y el número de hijos es mayor de 4 le

hace un descuento del 10% del salario básico y se le da un auxilio de alimentación de

50.000. Si está activo y el número de hijos es menor o igual que 4 se le hace un

descuento del 15% y un auxilio de 25.000. Si está suspendido y el número de hijos es

mayor de 5 se le hace un descuento del 5% y se le da un auxilio de 40.000 y en los

| 38

Page 39: Estructuras de desición

[ ] Elemento 4

demás casos a cada empleado se le hace un descuento del 5% y se da un auxilio de

30.000.

33) A nivel nacional se van a desarrollar unas competencias para estudiantes. Se pide

hacer un algoritmo que lea edad, sexo (M: MASCULINO, F: FEMENINO), estatura y

peso de un participante e imprima a que competencia se puede inscribir, tenga en cuenta

que si es hombre, mayor de edad y mide más de 1.80 puede participar en baloncesto. Si

es hombre, mayor de edad y mide 1.80 o menos puede participar en fútbol. Si es

hombre, mayor de edad y pesa más de 150Kg puede participar en sumo. Si es mujer,

pesa más de 50Kg y mide más de 1.60 puede participar en voleibol. Y si es mujer, con

edad entre 15 y 40 años puede participar en atletismo.

34) Lea la edad de una persona y el estado civil (1:SOLTERO, 2:CASADO

3:SEPARADO) e imprima NO DEPENDO DE MÍ MISMO sólo si es una persona

menor de edad o si es casado. De lo contrario imprima YO YA ME MANDO.

35) Leer 4 números y calcular la suma de los 4 números sólo si el primer número es

positivo y el segundo mayor de 10, calcular la resta de los tres primeros números sólo si

el tercer número es negativo y el cuarto es menor de 100 y calcular la multiplicación del

primero y el último sólo si el tercero es positivo o el cuarto es mayor de 100.

36) El costo de la entrada al parque norte depende de la edad que tenga la persona que

va a entrar: Si la persona tiene entre 0 y 2 años entran gratis. Si tiene entre 3 y 7 años

paga $2.000. Si tiene entre 8 y 16 años paga $3.000. Si tiene entre 17 y 35 años paga

$3.500. Y si tiene más de 35 paga $4.000.

37) Leer el mes en el cual nació una persona, y decir si nació en navidad o no.

38) Leer la base y la altura de un triángulo. Calcule su área sólo si la base es diferente

que la altura, sino calcule el doble de su base y el cuadrado de la altura.

| 39

Page 40: Estructuras de desición

[ ] Elemento 4

5. Estructuras Caso

Estas estructuras son similares a las estructuras de decisión, pero con la diferencia de

que ahorra espacio y es mucha más sencillo de manejar. Aunque tiene algunas

limitaciones y condiciones.

SINTAXIS:

CASO (VARIABLE)

CASO VALOR1: INSTRUCCIONES

CASO VALOR2: INSTRUCCIONES

CASO VALOR3: INSTRUCCIONES

CASO VALORN: INSTRUCCIONES

OTRO CASO: MENSAJES DE ERROR

FIN CASO

Esta estructura se usa cuando el valor que tome una variable sea finito y se conozcan

esos valores. Y al final tiene una opción en caso de digitarse un valor erróneo. Por

ejemplo: Leer el número de un día e imprimir el nombre de ese día, teniendo en cuenta

que 1 es lunes, 2 es el martes, y así sucesivamente. Con estructuras de decisión sería así:

INICIO

LEER numdia

SI (numdia = 1) ENT

IMPRIMIR “LUNES”

SINO

SI (numdia = 2) ENT

IMPRIMIR “MARTES”

SINO

SI (numdia = 3) ENT

IMPRIMIR “MIÉRCOLES”

SINO

SI (numdia = 4) ENT

IMPRIMIR “JUEVES”

SINO

SI (numdia = 5) ENT

| 40

Page 41: Estructuras de desición

[ ] Elemento 4

IMPRIMIR “VIERNES”

SINO

SI (numdia = 6) ENT

IMPRIMIR “SÁBADO”

SINO

SI (numdia = 7) ENT

IMPRIMIR “DOMINGO”

FINSI

FINSI

FINSI

FINSI

FINSI

FINSI

FINSI

FIN

Observe que la variable numdia toma valores finitos (de 1 hasta 7) y todos son

conocidos; por tal motivo se puede usar en una estructura caso.

INICIO

LEER numdia

CASO (numdia)

CASO 1: IMPRIMIR “LUNES”

CASO 2: IMPRIMIR “MARTES”

CASO 3: IMPRIMIR “MIÉRCOLES”

CASO 4: IMPRIMIR “JUEVES”

CASO 5: IMPRIMIR “VIERNES”

CASO 6: IMPRIMIR “SÁBADO”

CASO 7: IMPRIMIR “DOMINGO”

OTRO CASO: IMPRIMIR “ERROR. NÚMERO DE DÍA NO EXISTE.”

FINCASO

FIN

EJEMPLO 2: Leer la nota de un estudiante (en números enteros) e imprimir su

equivalente en letras sabiendo que si la nota es 5 su equivalente es EXCELENTE, 4 es

| 41

Page 42: Estructuras de desición

[ ] Elemento 4

BUENO, 3 es ACEPTABLE, 2 INSUFICIENTE y 1 DEFICIENTE.

INICIO

LEER nota

CASO (NOTA)

CASO 5: IMPRIMIR “EXCELENTE”

CASO 4: IMPRIMIR “BUENO”

CASO 3: IMPRIMIR “ACEPTABLE”

CASO 2: IMPRIMIR “INSUFICIENTE”

CASO 1: IMPRIMIR “DEFICIENTE”

OTRO CASO: IMPRIMIR “ERROR. NOTA NO EXISTE.”

FINCASO

FIN

EJEMPLO3: En una tienda de descuento se efectúa una promoción en la cual se hace un

descuento sobre el valor de la compra total según el color de la bolita que el cliente

saque al pagar en caja. Si la bolita es de color blanco no se le hará descuento alguno, si

es verde se le hará un 10% de descuento, si es amarilla un 25%, si es azul un 50% y si

es roja un 100%. Determinar la cantidad final que el cliente deberá pagar por su compra.

se sabe que solo hay bolitas de los colores mencionados.

INICIO

LEER tot_comp, bol

CASO (bol)

CASO “Blanca”: desc = 0

CASO “Verde”: desc = tot_comp * 0.10

CASO “Amarilla”: desc = tot_comp * 0.25

CASO “Azul”: desc = tot_comp * 0.50

CASO “Roja”: desc= tot_comp

OTRO CASO: IMPRIMIR “ERROR. COLOR NO EXISTE”

FIN

IMPRIMIR desc

FIN

 

| 42

Page 43: Estructuras de desición

[ ] Elemento 4

5.1. Taller 6 (Estructuras Caso)

1) Leer el número de un mes y decir a que mes corresponde teniendo en cuenta que 1 es

enero, 2 es febrero y así sucesivamente.

2) Una persona desea viajar a una ciudad de Colombia. Las opciones que tiene son las

siguientes: 01-Medellín, 02-Bogotá, 03-Cali, 04-Bucaramanga, 05-Cartagena, 06-San

Andres y Providencias y 07-Santamarta. Leer el código de una de esas ciudades e

impirmir el nombre de la ciudad.

3) Determinar el salario neto de un empleado sabiendo que si es de tipo A1 gana

$450.000, A2 gana $500.000, A3 gana $600.000, A4 $800.000, y A5 gana $1.000.000.

A cada empleado se le hace una retención del 1.5% para ahorros.

4) En una central telefónica se tienen los siguientes códigos postales, provincias y

tarifas. Desarrolle un algoritmos que lea el código postal e imprima la provincia a la que

se llama y la tarifa para esa provincia.

CODIGO PROVINCIA TARIFA

984 GALICIA PTS 50

578 ALAVES PTS 60

284 ZAMORA PTS 70

259 ARMUNIA PTS 80

219 VIGO PTS 85

025 MADRID PTS 90

018 OSASUNA PTS 95

005 CANTABRIA PTS 100

001 SEVILLA PTS 110

000 MURCIA PTS 150

5) Desarrolle una algoritmo que lea la marca (T: TOYOTA, M: MAZDA, C:

CHEVROLET Y O: OTRO. Además, lea el tipo de vehículo (1: NACIONAL 2:

EXTRANJERO) e imprima el valor sabiendo que este depende de la siguiente tabla:

| 43

Page 44: Estructuras de desición

[ ] Elemento 4

MARCA TIPO DE VEHÍCULO VALOR

TOYOTA NACIONAL $40.000.000

MAZDA NACIONAL $45.000.000

CHEVROLET NACIONAL $30.000.000

TOYOTA EXTRANJERO $50.000.000

MAZDA EXTRANJERO $55.000.000

CHEVROLET EXTRANJERO $38.000.000

OTRO NACIONAL O EXTRANJERO $30.000.000

| 44