Para solucionar los problemas de programación que se
enumera a continuación, debe aplicar los pasos sugeridos para solucionar un
problema de programación. Luego de escribir el 4º. Paso (programa en seudo
lenguaje), haga la prueba de escritorio. Los Problemas a solucionar en esta
última fase tienen un grado mayor de complejidad, en el sentido que para
resolverlos deben utilizar estructuras condicionales anidadas.
1.
Escriba un Programa que facilite calcular la Retención en la fuente a descontar
al empleado según el salario del empleado. Para ello se ingresa cédula del
empleado, salario básico. La retención se debe calcular de acuerdo a los
siguientes rangos y aplicando los porcentajes indicados:
-->
$ 2,250,000.oo a 2,500,000.oo 1.5 %
-->
$ 2,501,000.oo a 3,000,000.oo 2.0 %
--> $ 3,000,000.oo a 3,500,000.oo 2.5 %
--> $ 3,501,000.oo en adelante 3.0 %
1. ANALISIS: Realizar un programa para calcular el
descuento de retención en la fuente del salario de un empleado cualquiera
QUE ME DAN: Numero de identificación del empleado, valor del salario del
empleado y el porcentaje a descontar deacuerdo al salario del empleado.
QUE ME PIDEN: El descuento de retención en la fuente del salario del empleado y
el valor a pagar por el descuento de cada empleado.
COMO LO HAGO: Solicito que se ingrese por teclado el numero de cedula del
empleado y el valor del salario; después evaluó la cantidad del salario para
calcular el descuento deacuerdo a la tabla de porcentaje, posteriormente se
mostraran los datos que se solicitan.
Evaluando el nivel del salario y aplicando la rete fuente requerida
Si sal_bas >=2,250,000 y sal_bas <=2,500,000 entonces
Ret = rtf1;
Si no
Si sal_bas >=2,501,000 y
sal_bas <=3,000,000 entonces
Ret = rtf2;
Si no
Si sal_bas >=3,000,000 y
sal_bas <=3,500,000 entonces
Ret = rtf3;
Si no
Si sal_bas >=3,501,000
entonces
Ret = rtf4;
Fin si
Fin si
Fin si
Fin si
Ret_fuen = sal bas * Ret;
2. Algoritmo Cálculo de la retención en la fuente
Inicio
1 Conocer cedula
2. Conocer salario básico
3. Evaluar cual porcentaje se aplica según el salario
4. Calcular retefuente
4. mostrar valor de la retefuente
Fin_Algoritmo
3. Definición y declaración de variables:
CONS
Rtf1 = 0.015 , Rtf2 = 0.02, Rtf3= 0.025 Rtf4 =
0.03
VAR
Entrada : Ced : Cadena
sal_bas : Real
Proceso : Ret, Ret_fuen : Real
4. Programa Descuento de Matricula Con descuento
CONS
Rtf1 = 0.015
Rtf2 = 0.02
Rtf3= 0.025
Rtf4 = 0.03
VAR
Entrada : Ced : Cadena
sal_bas : Real
Proceso : Ret, Ret_fuen : Real
Inicio
Ret = 0 ; Ret_fuen = 0;
Escriba ‘Digite cedula: ‘ Lea Ced;
Escriba ‘Salario Basico: ‘ Lea sal_bas;
Si sal_bas >=2,250,000 y sal_bas <=2,500,000 entonces
Ret = rtf1;
Si no
Si sal_bas >=2,501,000 y
sal_bas <=3,000,000 entonces
Ret = rtf2;
Si no
Si sal_bas >=3,000,000 y
sal_bas <=3,500,000 entonces
Ret = rtf3;
Si no
Si sal_bas >=3,501,000
Ret = rtf4;
Fin si
Fin si
Fin si
Fin si
Ret_fuen = sal bas * ret;
Escriba ‘Cedula: ‘ Ced;
Escriba ‘Retencion en la fuente: ‘Ret_fuen;
Fin
Paso 5
Prueba de escritorio
Ced sal_bas Ret Ret_fuen
96895894
3000000 0.025 75000
2.
Elabore un programa para liquidar el valor a pagar a un floricultor por su
producción. Por cada compra se ingresa los siguientes datos: Cantidad de cajas,
variedad de flor (1= Rosas, 2= Pompones, 3= Claveles). Para ello se tiene
establecidas según la variedad las siguientes tarifas en US$ por caja :
-->
Rosas a US$ 3.5.oo
-->
Pompones a US$ 4.85.oo
-->
Claveles a US$ 3.8.oo
1. Análisis del problema: Programa para calcular el valor del pago de la
producción, según la variedad de la flor.
Que piden? Calcular le valor de la producción.
Que me dan? Cantidad de cajas, Variedad flor , valor según la variedad,
v1=3.5 , v2 = 4.85 , v3 = 3.8 , cant, var, val, tot
Como lo hago?
Validando si se ingresaron los datos correctos y evaluando el tipo de
variedad y el valor de la misma
Si var <1 y var > 3 entonces
Escriba “Datos erróneos”
Si no
Si var =1 entonces
val = v1
Si no
Si var = 2 entonces
val = v2
Si no
Si var = 3 entonces
val = v3
Fin si
Fin si
Fin si
Fin si
tot = cant * val
2. Algoritmo valor del pago de la producción
Inicio
1 Conocer cantidad de cajas
2. Conocer variedad
3. Validar que los datos son correctos
3. Evaluar la variedad para definir el valor del precio
4. Calcular valor del pago
4. mostrar valor del pago
Fin_Algoritmo
3. Definición y declaración de variables:
CONS
v1=3.5 , v2 = 4.85 , v3 = 3.8
VAR
Entrada : cant, var: Entero
Proceso : val, tot: Real
4. Programa valor del pago de la producción
CONS
v1=3.5
v2 = 4.85
v3 = 3.8
VAR
Entrada : cant, var: Entero
Proceso : val, tot: Real
Inicio
val = 0 ; tot = 0
Escriba ‘Ingrese la cantidad de cajas: ‘ Lea Ced;
Escriba ‘Ingrese la variedad 1= Rosas, 2= Pompones, 3= Claveles: ‘ Lea var;
Si var <1 y var > 3 entonces
Escriba “Datos erróneos”;
Si no
Si var =1 entonces
val = v1;
Si no
Si var = 2 entonces
val = v2;
Si no
Si var = 3 entonces
val = v3;
Fin si
Fin si
Fin si
Fin si
tot = cant * val;
Escriba ‘Total a pagar us$: ‘tot;
Fin
Paso 5
Prueba de escritorio
Cant var val tot
1000 3 3.8 3800
3.
En un Hipermercado se ha establecido un sistema de descuentos de acuerdo a la
forma de pago. 1 Efectivo y 2 Tarjeta de crédito. Para las compras en Efectivo
(1) superiores a $ 80.000 se descuenta un 7% del valor de la compra. Para las
compras con tarjeta de crédito superiores a $ 250.000 se descuenta un 4% y para
las superiores a $280.000 un 8% de descuento. Escriba un programa que permita
calcule y muestre el valor de la compra, descuento y valor a pagar por el
cliente.
1. Análisis del problema: Programa para calcular el sistema de descuento
según el medio de pago y el valor de la compra.
Que piden? Calcular el valor de la compra, descuento y valor a pagar por el
cliente.
Que me dan? Valor de la compra, Forma
de pago, los descuentos según el tipo de pago
comp, tip, des, des_tot, tot, val_e1
= 80000, des1= 0.07, val_c1=250000, des2=0.04, val_c2 = 280000, des3 = 0.08
Como lo hago?
Validando si se ingresaron los datos correctos y evaluando el tipo de pago,
el valor y el tipo de descuento
Si tip <1 o tip > 2 entonces
Escriba “Datos erróneos”
Si no
Si tip =1 y comp >= val_e1 entonces
des = des1
Si no
Si tip = 2 y comp >=
val_c1 y comp < val_c2 entonces
des = des2
Si no
Si = 2 y comp >=
val_c2 entonces
des = des3
Fin si
Fin si
Fin si
Fin si
des_tot = comp*des
tot = comp – des_tot
2. Algoritmo valor a pagar
Inicio
1 Conocer valor de compra
2. Conocer tipo de pago
3. Validar que los datos son correctos
4. Evaluar el tipo de pago para definir el valor del descuento
5. Calcular valor del descuento
6. Calcular valor a pagar
7. mostrar valor de la compra
8. mostrar valor del descuento
9. mostrar valor a pagar
Fin_Algoritmo
3. Definición y declaración de variables:
CONS
val_e1 = 80000, des1= 0.07, val_c1=250000, des2=0.04, val_c2 = 280000,
des3 = 0.08
VAR
Entrada :
comp: Real
tip: Entero
Proceso : des, des_tot, tot: Real
4. Programa valor a pagar CONS
val_e1 = 80000
des1= 0.07
val_c1=250000
des2=0.04
val_c2 = 280000
des3 = 0.08
VAR
Entrada :
comp: Real
tip: Entero
Proceso : des, des_tot, tot: Real
Inicio
des = 0 ; des_tot = 0; tot = 0;
Escriba ‘Ingrese el valor total de las compras: ‘ Lea comp;
Escriba ‘Ingrese el tipo de pago 1 Efectivo y 2 Tarjeta de crédito: ‘ Lea tip;
Si tip <1 o tip > 2 entonces
Escriba “Datos erróneos”;
Si no
Si tip =1 y comp >= val_e1
entonces
des = des1;
Si no
Si tip = 2 y comp >=
val_c1 y comp < val_c2 entonces
des = des2;
Si no
Si tip = 2 y comp >=
val_c2 entonces
des = des3;
Fin si
Fin si
Fin si
Fin si
des_tot = comp*des;
tot = comp – des_tot;
Escriba ‘valor de la compra: ‘comp;
Escriba ‘Valor del descuento: ‘des_tot;
Escriba ‘Total a pagar: ‘tot;
Fin
Paso 5
Prueba de escritorio
Comp tip des des_tot tot
260000 2 4 10400 249600
4.
En un banco se ha creado un sistema de incentivos para los clientes que compran
con tarjeta de crédito. Para ello de acuerdo al valor total de las compras del
mes establece la siguiente asignación de puntos: Compras entre $80.000 y
$200.000, 100 puntos; hasta $400.000, 200 puntos; menos de $700.000, 350
puntos; de 700.000 en adelante 450 puntos. Escriba un programa que muestre un
bono con el valor de las compras y los puntos asignados al cliente.
1. Análisis del problema: Definir el sistema de incentivos según el valor
de compras del mes.
Que piden? Calcular el sistema de incentivos.
Que me dan? Valor total de compras y rangos de aplicación para los
siguientes puntos: p_c1 = 100 , p_c2 = 200, p_c3 = 350 p_c4 = 700, c_1_1=
80000, c_1_2 = 200000, c_2 = 400000, c_3 =700000, punt_comp, comp,
Como lo hago?
Evaluando el nivel de compras y aplicando los puntos requeridos
Si comp >= c_1_1 y comp <= c_1_2 entonces
Punt_comp = p_c1
Si no
Si comp > c_1_2 y comp <=
c_2 entonces
punt_comp = p_c2
Si no
Si comp > c_2 y comp <=
c_3 entonces
punt_comp = p_c3
Si no
Si sal_bas > c_3
entonces
punt_comp = p_c4
Fin si
Fin si
Fin si
Fin si
2. Algoritmo Cálculo de los puntos por compras
Inicio
1 Conocer compras
2. Evaluar que puntos se aplica según las compras
4. mostrar valor de las compras
4. mostrar valor de los puntos
Fin_Algoritmo
3. Definición y declaración de variables:
CONS:
p_c1 = 100 , p_c2 = 200, p_c3 = 350 p_c4 = 700, c_1_1= 80000, c_1_2 =
200000, c_2 = 400000, c_3 =700000
VAR
Entrada : comp: Real
Proceso : punt_comp: entero
4. Programa Cálculo de los puntos por compras
CONS
p_c1 = 100
p_c2 = 200
p_c3 = 350
p_c4 = 700
c_1_1= 80000
c_1_2 = 200000
c_2 = 400000
c_3 =700000
VAR
Entrada : comp: Real
Proceso : punt_comp: entero
Inicio
punt_comp = 0 ;
Escriba ‘digite el valor de compras: ‘ Lea comp;
Si comp >= c_1_1 y comp <= c_1_2 entonces
Punt_comp = p_c1;
Si no
Si comp > c_1_2 y comp <=
c_2 entonces
punt_comp = p_c2;
Si no
Si comp > c_2 y comp <=
c_3 entonces
punt_comp = p_c3;
Si no
Si sal_bas > c_3
entonces
punt_comp = p_c4;
Fin si
Fin si
Fin si
Fin si
Escriba ‘valor total de compras: ‘ comp;
Escriba ‘Puntos ganados: ‘punt_comp;
Fin
Paso 5
Prueba de escritorio
Comp punt_comp
100000 100
5.
Escriba un programa que permita asignar la calificación conceptual para la Nota de un estudiante en un colegio de
secundaria. La calificación numérica de notas esta entre 0 y 10. Los conceptos
son: Para notas entre 0 y 3.99 Deficiente,
entre 4.0 y 6.99 Insuficiente, notas
hasta 7.99 Aceptable, hasta 8.99
Sobresaliente y hasta 10 Excelente. Se debe mostrar un boletín
con el código del estudiante, nombre, nota del estudiante y calificación
conceptual.
1. Análisis del problema: Expresión de una nota numérica a una conceptual
según una tabla de equivalencias
Que piden? Asignar la calificación conceptual con los datos numéricos.
Codigo estudiante
Nombre
Nota del estudiante
Calificación conceptual
Que me dan? Nota, valores conceptuales para los siguientes rangos rn1 = 4,
rn2 =7, rn3=8, rn4 = 9, nota, conc, cod, nom,
Como lo hago?
Evaluando el nivel de compras y aplicando los puntos requeridos
Si nota <0 y nota > 10 entonces
Escriba “Datos erróneos”
Si no
Si nota < rn1 entonces
conc = “deficiente”
Si no
Si nota >= rn1 y nota <
rn2 entonces
conc = “insuficiente”
Si no
Si nota >= rn2 y nota
< rn3 entonces
conc = “aceptable”
Si nota >= rn3 y
nota < rn4 entonces
conc = “sobresaliente”
Si nota >= rn4
conc = “sobresaliente”
Fin si
Fin si
Fin si
Fin si
Fin si
Fin si
2. Algoritmo concepto nota
Inicio
1 Conocer notas
2. Evaluar concepto se aplica según la nota
3. mostrar valor del concepto
Fin_Algoritmo
3. Definición y declaración de variables:
CONS: rn1
= 4, rn2 =7, rn3=8, rn4 = 9
VAR
Entrada : nota: Entero
cod, nom: Cadena
Proceso : conc: Cadena
4. Programa Cálculo de los puntos por compras
CONS
rn1 = 4
rn2 = 7
rn3 = 8
rn4 = 9
VAR
Entrada : nota: Entero
cod, nom: Cadena
Proceso : conc: Cadena
Inicio
conc = “0”;
Escriba ‘digite el código del estudiante:‘ Lea cod;
Escriba ‘digite el nombre del estudiante:‘ Lea nom;
Escriba ‘digite el valor de la nota:‘ Lea nota;
Si nota <0 y nota > 10 entonces
Escriba “Datos erróneos”;
Si no
Si nota < rn1 entonces
conc = “deficiente”;
Si no
Si nota >= rn1 y nota <
rn2 entonces
conc = “insuficiente”;
Si no
Si nota >= rn2 y nota
< rn3 entonces
conc = “aceptable”;
Si nota >= rn3 y
nota < rn4 entonces
conc =
“sobresaliente”;
Si nota >=
rn4
conc =
“sobresaliente”;
Fin si
Fin si
Fin si
Fin si
Fin si
Fin si
Escriba ‘código del estudiante:‘ , cod;
Escriba ‘nombre:‘ , nom;
Escriba ‘nota del estudiante:‘ , nota;
Escriba ‘Calificación conceptual:‘, conc;
Paso 5
Prueba de escritorio
nota cod nom conc
6.5 123456 jhon
insuficiente
6.
El ICETEX otorgara créditos para
educación semestralmente. Para ello se debe tener en cuenta el estrato y el
tipo de educación a realizar. Los estratos socioeconómicos van del 1 al 6, el
tipo de educación es 1:Superior, 2: Especialización, 3:Maestría. Los créditos
equivalen a un porcentaje del valor del semestre de acuerdo al estrato así:
Estrato 1 el 90%, 2 el 75%, 3 el 55%, 4 y 5 el 40%; por el tipo de educación se
asignara adicionalmente para el 2 el 5%, 3 el 10%. El programa debe mostrar un
reporte que contenga el valor del semestre, valor del crédito y el valor a
pagar por el estudiante.
1. Análisis del problema: Programa para asignar los porcentajes de los
créditos según el estrato socioeconómico y el tipo de estudio.
Que piden? Calcular el valor del crédito con el ICETX producción.
Que me dan? Estrato, valor de la matricula, valor del crédito según estrato
y tipo de estudio; mat, est, tip, cred, ctip, cred_tot, val_pag, ce1= 90 ce2 =
75, ce3 = 55 ce4_5=40, ct2 = 5, ct3=10
Como lo hago?
Se asume que el ICETEX condona el valor del porcentaje enunciado en el
ejercicio, de tal forma que el estudiante paga es el valor restante.
Validando si se ingresaron los datos correctos y evaluando el tipo de estrato
y el tipo de estudio, se da el nivel de crédito
Si est <1 y est > 10 entonces
Escriba “Estrato erróneo, volver a ingresar”
inicio
Si no
Si est =1 entonces
cred = ce1
Si no
Si est = 2 entonces
cred = ce2
Si no
Si est = 3 entonces
cred = ce3
Si est = 4 o est =
5 entonces
cred = ce4_5
Fin si
Fin si
Fin si
Fin si
Fin si
Si tip ≠ 1 y tip ≠ 2 y tip ≠ 3 entonces
Escriba “Tipo de estudio erróneo, volver a ingresar”
inicio
Si no
Si tip=2 entonces
ctip = ct2
Si no
Si tip = 3 entonces
cred = ct3
Fin si
Fin si
Fin si
cred_tot = cred + ctip
val_pag = mat – (mat * (cred_tot/100))
2. Algoritmo valor de pago de la matricula
Inicio
1 Conocer valor del semestre
2. Conocer estrato
2. Conocer tipo de estudio
3. Validar que los datos son correctos
3. Evaluar el estrato y el tipo de estudio para definir el valor del crédito
4. Calcular valor del pago
4. mostrar valor del pago
Fin_Algoritmo
3. Definición y declaración de variables:
CONS
ce1= 90 ce2 = 75, ce3 = 55 ce4_5=40, ct2 = 5,
ct3=10
VAR
Entrada : mat: Real
est, tip: Entero
Proceso : cred, ctip, cred_tot, val_pag: Real
4. Programa valor del pago de la producción
CONS
ce1= 90, ce2 = 75, ce3 = 55, ce4_5=40, ct2 = 5,
ct3=10;
VAR
Entrada : mat: Real
est, tip: Entero
Proceso : cred, ctip, cred_tot, val_pag: Real
Inicio
Cred = 0, ctip = 0, cred_tot = 0, val_pag = 0;
Escriba ‘Ingrese el valor de la matricula: ‘ Lea mat;
Escriba ‘Ingrese el estrato (1 – 10): ‘ Lea est;
Escriba ‘Ingrese el tipo de estudio 1:Superior, 2: Especialización,
3:Maestría: ‘ Lea tip
Si est <1 y est > 10 entonces
Escriba “Estrato erróneo, volver a ingresar”;
Si no
Si est =1 entonces
cred = ce1;
Si no
Si est = 2 entonces
cred = ce2;
Si no
Si est = 3 entonces
cred = ce3;
Si est = 4 o est =
5 entonces
cred = ce4_5;
Fin si
Fin si
Fin si
Fin si
Fin si
Si tip != 1 y tip != 2 y tip != 3 entonces
Escriba “Tipo de estudio erróneo, volver a ingresar”
Si no
Si tip=2 entonces
ctip = ct2;
Si no
Si tip = 3 entonces
cred = ct3;
Fin si
Fin si
Fin si
cred_tot = cred + ctip;
val_pag = mat – (mat * (cred_tot/100)) ;
Escriba ‘valor de la matricula: ‘ , mat;
Escriba ‘valor del crédito: ‘ , cred_tot;
Escriba ‘valor a pagar: ‘ , val_pag;
Fin
Punto 5
Prueba de escritorio
Mat est tip
cred ctip cred_tot
val_pag
100000 1 3 90
10 100 0
7.
La empresa de renta de vehículos Flying
Rent cobra de acuerdo a la cantidad de kilómetros recorridos por el
arrendatario, descontándolo de un monto dejado al recibir el vehículo, que
puede ser 1:Moto o 2:Auto, 3 Lanchas y Yates. Para ello tiene la siguiente
tabla para liquidar el cobro: Para vehículos tipo 1 menos de 50 Kms $ 30,000,
hasta 100 kms $ 60,000, mas de 100 Kms 60,000 mas un incremento de $ 500 pesos
por km adicional; para vehículos tipo 2 menos de 70 Kms $ 50,000, entre 71 y
110 Kms $ 90,000, hasta 200 Kms $ 150,000, mas de 200 Kms 150,000 mas $ 3000
por Km adicional. Vehículos tipo 3 $105,000 cada 10 Millas(1 Milla náutica
equivale a 1.85 Kms) Escriba un programa que liquide el valor que debe pagar
una persona por el alquiler teniendo en cuenta la base dejada indicando si le
sobra dinero o cuanto le falta.
11. Análisis del problema: Escribir un programa que determine el valor a
pagar por el alquiler aplicando un descuento según el kilometraje recorrido, e
indicar cuanto falta por pagar o si le sobra plata.
Que piden? Generar un descuento si es moto, es auto o equipo náutico, según
el kilometraje, calcular el valor del alquiler y definir si sobra o falta
plata.
Que me dan? Tipo de vehículo, Kilometraje inicial, descuento o valor por
kilometraje, valor pagado.
tip, km_ini, km_final, km_rec, dep, costo, m_km1 = 50, m_km2=100, m_val1=30000, m_val2=60000, m_val3=500,
c_km1=70, c_km2=110, c_km3=200, c_val1=50000, c_val2 = 90000, c_val3=150000,
c_val4=3000, n_mill = 10 , n_val=150000 Km_mill = 1.85
Como lo hago?
Evaluando o validando el tipo de vehículo, y el kilometraje, entonces se
aplica el descuento, calcular el valor del alquiler y definir si falta o sobra
plata.
Km_ini
Km_final
dep
tip
Km_rec = km_final – km_ini
en caso de tip = “1” y tip = “2” y tip = “3” //o se puede escribir “seleccionar”//
Caso tip = “1”
Si Km_rec ≤ m_km1 entonces
Costo = m_val1 – dep
Si no
Si km_rec ≤ m_km2
entonces
Costo = m_val2 – dep
Si no
Si km_rec > m_km2
entonces
Costo = (m_val2 +
(km_rec-m_km2)*m_val3)) - dep
Fin si
Fin si
Fin si
Caso tip = “2”
Si Km_rec ≤ c_km1 entonces
Costo = c_val1 – dep
Si no
Si km_rec ≤ c_km2
entonces
Costo = c_val2 – dep
Si no
Si km_rec ≤ c_km3
entonces
Costo = c_val3 – dep
Si no
Si km_rec >
c_km3
Costo = (c_val3
+ (km_rec-c_km3)*c_val4)) – dep
Fin si
Fin si
Fin si
Fin si
Caso tip = “3”
Costo = ((km_rec * km_mill)/n_mill)
* n_val
En otro caso // o “si no”//
escriba “digite para el tipo de vehiculo 1, 2 o 3”
fin en caso de // o “fin seleccionar” //
Si costo > 0 entonces
Escriba “falta por pagar” costo
Si no
Costo = costo *-1
Escriba “tiene devueltas por” costo
Fin
2. Algoritmo alquiler
Inicio
1 Conocer dato Tipo de vehículo, Kilometraje inicial, valor consignado.
2 Evaluar si el dato tipo de vehículo es 1, 2 0 3
3 Entonces calcular el valor del alquiler según el tipo del vehículo y el
kilometraje
4 Calcular y mostrar el valor a pagar o que sobra.
Fin_Algoritmo
3. Definición y declaración de variables:
CONS: m_km1 = 50, m_km2=100, m_val1=30000, m_val2=60000, m_val3=500,
c_km1=70, c_km2=110, c_km3=200, c_val1=50000, c_val2 = 90000, c_val3=150000,
c_val4=3000, n_mill = 10 , n_val=150000 Km_mill = 1.85
VAR
Entrada : tip : Cadena
km_ini, km_final, dep : Real
Proceso : km_rec, costo: Real
4. Programa Cálculo de los puntos por compras
CONS: m_km1 = 50, m_km2=100, m_val1=30000, m_val2=60000, m_val3=500,
c_km1=70, c_km2=110, c_km3=200, c_val1=50000, c_val2 = 90000, c_val3=150000,
c_val4=3000, n_mill = 10 , n_val=150000,
Km_mill = 1.85
VAR
Entrada : tip : Cadena
km_ini, km_final, dep : Real
Proceso : km_rec, costo: Real
Inicio
Costo= 0, km_rec = 0 ;
Escriba “ digite kilometraje inicial”, lea Km_ini;
Escriba “ digite kilometraje final”, lea Km_final;
Escriba “ digite el valor de deposito”, lea dep;
Escriba “ tipo de vehiculo (1: moto; 2: Auto; 3: lanchas y yates)”, lea tip;
Km_rec = km_final – km_ini;
//en
caso de tip = “1” y tip = “2” y tip = “3” //o se puede escribir “seleccionar”//
Caso tip = “1”
Si Km_rec ≤ m_km1 entonces
Costo = m_val1 – dep ;
Si no
Si km_rec ≤ m_km2
entonces
Costo = m_val2 – dep;
Si no
Si km_rec > m_km2
entonces
Costo = (m_val2 +
(km_rec-m_km2)*m_val3)) – dep;
Fin si
Fin si
Fin si
Caso tip = “2”
Si Km_rec ≤ c_km1 entonces
Costo = c_val1 – dep ;
Si no
Si km_rec ≤ c_km2
entonces
Costo = c_val2 – dep;
Si no
Si km_rec ≤ c_km3
entonces
Costo = c_val3 – dep;
Si no
Si km_rec >
c_km3
Costo = (c_val3
+ (km_rec-c_km3)*c_val4)) – dep ;
Fin si
Fin si
Fin si
Fin si
Caso tip = “3”
Costo = ((km_rec * km_mill)/n_mill) * n_val :
De lo contrario
escriba “digite para el tipo de vehiculo 1, 2 o 3” ;
fin en caso de // o “fin seleccionar” //
Si costo > 0 entonces
Escriba “falta por pagar” costo ;
Si no
Costo = costo *-1;
Escriba “tiene devueltas por” costo ;
Fin
Paso 5
Prueba de escritorio
Tip km_ini km_final
dep km_rec
costo
2 60000 60200 50000
90000 40000
8.
En una librería se esta promocionando la compra de libros según el tipo de
literatura. Los tipos de literatura 1 Ciencia ficción, 2 Científica. Se tiene
la siguiente tabla de descuentos según la cantidad de libros comprados, de 3 a
5 un 5% literatura tipo 1, 7% literatura tipo 2 del valor total de la compra,
de 6 a 10 un 10% literatura tipo 1, 12% literatura tipo 2 del valor total de la
compra, más de 10 libros un 15% literatura tipo 1, 18% literatura tipo 2 del
valor total de la compra Escriba un programa que muestre como resultado una
factura que contenga: Cantidad de libros comprados, valor total de la compra,
valor a descontar y valor a pagar.
1. Análisis: escribir un programa que indique el descuento según el tipo de
literatura y el numero de libros.
Que me piden: cantidad de libros comprados, valor total, el descuento y el
valor a pagar
Que me dan: Cantidad de libros, Tipo de libros, descuento según la
cantidad, Tip, cant, val, des, tot_des, c1 = 3, c2 = 5, c3 = 10, dt1_1= 5,
dt2_1 = 7, dt1_2 = 10,
dt2_2 = 12, dt1_3 = 15, dt2_3 = 18
Como lo hago: verifico si los datos son correctos y aplico el descuento
según el tipo de literatura y la cantidad.
Si tip ≠ 1 y tip ≠ 2 entonces
Escriba “ingrese el tipo de película con 1 o 2 según el caso”
Si no
Si tip = 1 entonces
Si cant >= c1 y cant <=
c2 entonces
des = dt1_1
Si no
Si cant > c2 y cant
<= c3 entonces
des = dt1_2
Si no
Si cant > c3
entonces
des = dt1_3
Fin si
Fin si
Fin si
Si no
Si cant >= c1 y cant <=
c2 entonces
des = dt2_1
Si no
Si cant > c2 y cant
<= c3 entonces
des = dt2_2
Si no
Si cant > c3
entonces
des = dt2_3
Fin si
Fin si
Fin si
Fin si
Fin si
des_tot = val * (des/100)
tot = val – des_tot
Paso 2
Algoritmo descuento librería
Inicio
1 Conocer datos de tipo de literatura, cantidad de libros y valor total de
los libros
2 validar los datos del tipo de libro
3 determinar cual es el descuento según el tipo de literatura y la cantidad
de libros
4 Calcular el descuento y el valor a pagar
5 Mostrar los resultados
Fin_algoritmo
Paso 3
Definición y declaración de las variables
CONST: c1 = 3, c2 = 5, c3 = 10, dt1_1= 5, dt2_1
= 7, dt1_2 = 10,
dt2_2 = 12, dt1_3 = 15, dt2_3 = 18
VAR
Entrada: Tip, cant : Entero
val: real
Proceso: des, tot_des: real
Paso 4 Programa seudo lenguaje
Programa descuento librería
CONST: c1 = 3, c2 = 5, c3 = 10, dt1_1= 5, dt2_1 = 7, dt1_2 = 10,
dt2_2 = 12, dt1_3 = 15, dt2_3 = 18
VAR
Entrada: Tip, cant : Entero
val: real
Proceso: des, tot_des, tot : real
Inicio
Des = 0, tot_des = 0, tot = 0;
Escriba `digite el tipo de literatura 1: Ciencia ficción, 2: Científica: `
lea tip;
Escriba `digite la cantidad de libros: ` lea cant;
Escriba `digite el valor total de la compra: ` lea val;
Si tip != 1 y tip != 2 entonces
Escriba “ingrese el tipo de película con 1 o 2 según el caso”;
Si no
Si tip = 1 entonces
Si cant >= c1 y cant <=
c2 entonces
des = dt1_1;
Si no
Si cant > c2 y cant
<= c3 entonces
des = dt1_2;
Si no
Si cant > c3
entonces
des = dt1_3;
Fin si
Fin si
Fin si
Si no
Si cant >= c1 y cant <= c2 entonces
des = dt2_1;
Si no
Si cant > c2 y cant
<= c3 entonces
des = dt2_2;
Si no
Si cant > c3
entonces
des = dt2_3;
Fin si
Fin si
Fin si
Fin si
Fin si
des_tot = val * (des/100)
tot = val – des_tot;
Escriba `cantidad de libros comprados: ` cant;
Escriba `valor total de la compra: ` val;
Escriba `valor a descontar: ` des_tot ;
Escriba `valor a pagar: ` tot ;
Fin
Paso 5
Prueba de escritorio
Tip, cant, val,
des, tot_des, tot
1 8 1000
10 100 900
9.
En el Banco Anglo se requiere un
programa para la asignación de cupos de crédito de acuerdo al valor ahorrado
por sus Clientes. Para ello se establece la siguiente tabla: Ahorros superiores
a $ 2.000.000 y hasta $ 4.000.000, tienen cupo de tres veces la cantidad
ahorrada; ahorros superiores a $ 4.000.000 y hasta 10.000.000, tienen un cupo
de cinco veces la cantidad ahorrada; ahorros superiores a 10.000.000 y hasta
30.000.000, tienen un cupo de 8 veces la cantidad ahorrada; ahorros superiores
a 30.000.000, se les asigna 10 veces la cantidad ahorrada. Debe producir un
extracto que muestre por cada ahorrador: número de cuenta, valor
ahorrado y cupo de crédito
asignado.
1. Análisis: escribir un programa que indique el cupo de crédito asignado,
según la cantidad ahorrada.
Que me piden: número de cuenta, valor ahorrado y cupo de crédito asignado
Que me dan: número de cuenta, valor ahorrado, cupo asignado según la
cantidad ahorrada, num, cant, cup, cup_tot, c1 = 2000000, c2 = 4000000, c3 =
10000000,
c4 = 30000000, cup1= 3, cup2 = 5, cup3 = 8, cup4
= 10
Como lo hago: se calcula el descuento según la cantidad ahorrada.
Si val >= c1 y cant <= c2 entonces
cup = cup1
Si no
Si cant> c2 y cant <= c3
entonces
cup = cup2
Si no
Si cant >= c3 y cant <=
c4 entonces
cup = cup3
Si no
Si cant > c4 entonces
cup = cup4
Fin si
Fin si
Fin si
Fin si
cup_tot = cant * cup
Paso 2
Algoritmo cupo de crédito en el banco
Inicio
1 Conocer datos de tipo de número de cuenta y valor ahorrado
2 determinar cual es el cupo de crédito según la cantidad ahorrada
4 Calcular el cupo de crédito
5 Mostrar los resultados
Fin_algoritmo
Paso 3
Definición y declaración de las variables
CONST: c1 = 2000000, c2 = 4000000, c3 =
10000000, c4 = 30000000, cup1= 3, cup2 = 5, cup3 = 8, cup4 = 10
VAR
Entrada: num: cadena
cant: real
Proceso: cup, cup_tot: real
Paso 4 Programa seudo lenguaje
Programa cupo de crédito en el banco
CONST: c1 = 2000000, c2 = 4000000, c3 =
10000000, c4 = 30000000, cup1= 3, cup2 = 5, cup3 = 8, cup4 = 10
VAR
Entrada: num: cadena
cant: real
Proceso: cup, cup_tot: real
Inicio
cup = 0, cup_tot = 0;
Escriba `digite el numero de la cuenta: ` lea num;
Escriba `digite el valor ahorrado: ` lea cant;
Si val >= c1 y cant <= c2 entonces
cup = cup1;
Si no
Si cant> c2 y cant <= c3
entonces
cup = cup2;
Si no
Si cant >= c3 y cant <=
c4 entonces
cup = cup3;
Si no
Si cant > c4 entonces
cup = cup4;
Fin si
Fin si
Fin si
Fin si
cup_tot = cant * cup;
Escriba `numero de la cuenta: ` num;
Escriba `valor ahorrado: ` cant;
Escriba `cupo de crédito asignado: ` cup_tot;
Fin
Paso 5
Prueba de escritorio
Num cant cup cup_tot
12345 4000000 3
12000000
10.
La distribuidora de revistas LASER X requiere
de un programa que le facilite liquidar las bonificaciones por ventas de
revistas a sus vendedores. Las revistas están clasificadas así: 1: Deportes, 2:
Negocios y Finanzas, 3: Hogar, 4: Mujer. Para la liquidación de la bonificación
se debe aplicar la tabla así: Para tipo de revista 1 con cantidades superiores
a 1000 unidades tiene un 50% de un SMLV, por debajo pero no menor a 200 10% de
un SMLV; para revistas tipo 2 mas de 1500 obtendrán un 60% de un SMLV, no menos
de 1000 25% de un SMLV; revistas tipo 3 y 4 mas de 600 unidades 40% de un SMLV,
no menos de 200 un 20% del SMLV. Un SMLV (Salario Mínimo legal vigente)
equivale al valor fijado para el año actual. Se debe producir un desprendible
de pago con los siguientes datos: Cédula, Nombre, cantidad de revistas
vendidas, valor bonificación.
1. Análisis: escribir un programa para liquidar las bonificaciones, según
el tipo de revista y la cantidad vendida.
Que me piden: cedula, nombre, cantidad de revistas vendidas y valor de
bonificación
Que me dan: cantidad de revistas, Tipo de revista, bonificación según la
cantidad, salario minimo, Tip, cant, bon, tot_bon, slmlv= 500000, c1_1 = 200,
c1_2 = 1000, c2_1 = 1000, c2_2 = 1500, c3_4_1= 200, c3_4_2 = 600, b1_1= 10,
b1_2 = 50, b2_1 = 25, b2_2 = 60, b3_4_1= 20, b3_4_2 = 40
Como lo hago: verifico si los datos son correctos y aplico la bonificación
según el tipo de revista y la cantidad vendida.
Si tip != “1” y tip != “2” y tip != “3” y tip != “4” entonces
Escriba “ingrese el tipo de revista con 1, 2, 3 o 4 según el caso”
Si no
Si tip = 1 entonces
Si cant >= c1_1 y cant
<= c1_2 entonces
bon = b1_1
Si no
Si cant > c1_2
entonces
bon = b1_2
Fin si
Fin si
Fin si
Si tip = 2 entonces
Si cant >= c2_1 y cant
<= c2_2 entonces
bon = b2_1
Si no
Si cant > c2_2
entonces
bon = b2_2
Fin si
Fin si
Fin si
Si tip = 3 o tip = 4 entonces
Si cant >= c3_4_1 y cant
<= c3_4_2 entonces
bon = b3_4_1
Si no
Si cant > c3_4_2
entonces
bon = b3_4_2
Fin si
Fin si
Fin si
Fin si
Tot_bon = slmlv * (bon/100)
Paso 2
Algoritmo bonificación venta de revistas
Inicio
1 Conocer datos de cedula, nombre, tipo de revista y cantidad de revistas
vendidas
2 validar los datos del tipo de revista
3 determinar cual es la bonificación según el tipo de revista y la cantidad
vendida
4 Calcular el valor de la bonificación
5 Mostrar los resultados: cedula, nombre, cantidad de revistas vendidas y
valor de bonificación
Fin_algoritmo
Paso 3
Definición y declaración de las variables
CONST: slmlv= 500000, c1_1 = 200, c1_2 = 1000,
c2_1 = 1000, c2_2 = 1500, c3_4_1= 200, c3_4_2 = 600, b1_1= 10, b1_2 = 50, b2_1
= 25, b2_2 = 60, b3_4_1= 20, b3_4_2 = 40
VAR
Entrada:
ced, nom, Tip: cadena
cant : Entero
Proceso: bon, tot_bon: real
Paso 4 Programa seudo lenguaje
Programa bonificación venta de revistas
CONST: slmlv= 500000, c1_1 = 200, c1_2 = 1000, c2_1 = 1000, c2_2 = 1500,
c3_4_1= 200, c3_4_2 = 600, b1_1= 10, b1_2 = 50, b2_1 = 25, b2_2 = 60, b3_4_1=
20, b3_4_2 = 40
VAR
Entrada:
ced, nom, Tip: cadena
cant : Entero
Proceso: bon, tot_bon: real
Inicio
bon = 0, tot_bon = 0;
Escriba `digite el numero de la cedula: ` lea ced;
Escriba `digite el nombre del vendedor: ` lea nom;
Escriba `digite el tipo de revista 1: Deportes, 2: Negocios y Finanzas, 3:
Hogar, 4: Mujer: ` lea tip;
Escriba `digite la cantidad de revistas vendidas: ` lea cant;
Si tip != “1” y tip != “2” y tip != “3” y tip != “4” entonces
Escriba “ingrese el tipo de revista con 1, 2, 3 o 4 según el caso” lea tip;
Si no
Si tip = 1 entonces
Si cant >= c1_1 y cant
<= c1_2 entonces
bon = b1_1;
Si no
Si cant > c1_2
entonces
bon = b1_2;
Fin si
Fin si
Fin si
Si tip = 2 entonces
Si cant >= c2_1 y cant
<= c2_2 entonces
bon = b2_1;
Si no
Si cant > c2_2
entonces
bon = b2_2;
Fin si
Fin si
Fin si
Si tip = 3 o tip = 4 entonces
Si cant >= c3_4_1 y cant
<= c3_4_2 entonces
bon = b3_4_1;
Si no
Si cant > c3_4_2
entonces
bon = b3_4_2;
Fin si
Fin si
Fin si
Fin si
Tot_bon = slmlv * (bon/100) ;
Escriba `numero de la cedula: ` ced;
Escriba `nombre del vendedor: ` nom;
Escriba `cantidad de revistas vendidas: ` cant;
Escriba `valor bonificación : ` tot_bon ;
Fin
Paso 5
Prueba de escritorio
Ced,
nom Tip, cant,
bon, tot_bon
93413866 jhon 3
300 20 100000