1. Lógica y Algoritmia
1 de jun.
LOGICA Y ALGORIMIA
TALLER Nº 4
POR:
ANGIE PAOLA GONZALEZ TIQUE
ROBINSON ANDRES CASTRO PACHECO
JOHANER ANDRES CASTRO CLAVIJO
DOCENTE:
LUIS HELADIO GARZON RODRIGUEZ
UNIVERSIDAD DEL TOLIMA
INGENIERIA DE SISTEMAS
IDEAD
2012
1
2. Lógica y Algoritmia
1 de jun.
TALLER4
Ejercicio 5.1 Suponga que en la Universidad del Tolima se concede descuento del 50%
del valor de la matricula, a los estudiantes de estrato 1. La matricula equivale a un (1)
salario mínimo mensual legal vigente (461,500.00). Escriba un programa.
Aplique todos los pasos indicados en el capitulo 3 del Libro de Lógica y Técnicas de
programación para escribir la solución a un problema.
Solución:
Análisis del problema:
Liquidar el valor de la matricula, dependiendo el estrato del estudiante.
Que me piden?
Valor de la matricula de los estudiantes de estrato 1, con descuento.
Que me dan?
El valor de la matricula y el valor del descuento para estudiantes de estrato 1.
Como lo hago?
El valor de la matricula lo multiplico por el 50% y lo divido por 100 que corresponde a el
descuento para los estudiantes de estrato 1.
Algoritmo:
Inicio
1. Conocer el estrato del estudiante.
2. Conocer el valor de la matricula.
3. Conocer el descuento para los estudiantes de estrato 1.
4. Calcular el valor de dicho descuento multiplicando el valor de la matricula por el 50 y
vivirlo por 100.
5. Mostrar el resultado.
Fin
Definición y declaración de variables:
Constantes:
MATRICULA: 461,500.00
Variables:
ESTRATO ENTERO
TOTAL MAT REAL
Algoritmo _ matricula
Inicio
ESTRATO = 0; TOTAL MAT = 0;
2
3. Lógica y Algoritmia
1 de jun.
Escriba “Digite el estrato al que pertenezca”; Lea ESTRATO;
Si
ESTRATO = 1
Entonces
TOTAL MAT = (MATRICULA*50)/100;
Escriba “Valor total matricula”; TOTAL MAT;
Sino
Escriba “Valor total matricula”; MATRICULA;
Fin Si
Fin Si
Fin
Ejercicio 5.2 Suponga que en la Universidad del Tolima se concede descuento del 50%
del valor de la matricula, a los estudiantes de estrato 1 y que su promedio académico en
el semestre anterior haya sido superior o igual a 4-5. La matricula equivale a un (1) salario
mínimo mensual legal vigente (461,500.00) . Escriba un programa.
Solución:
Análisis del problema:
Liquidar le valor de la matricula a los estudiantes antiguos que tengan un promedio
anterior igual o mas de 4-5.
Que me piden?
Liquidar el valor de la matricula.
Que me dan?
Valor de la matricula, descuento para estudiantes con promedio mayor o más de 4-5 y el
valor del salario mínimo.
Como lo hago?
Sabiendo el estrato y el promedio académico que debe ser mayor o más de 4-5, multiplico
el valor de la matricula por el 50 y lo divido por 100. Sino, va arrojar un error.
Algoritmo_ matricula promedio
Inicio
1. Conocer el estrato del estudiante.
2. Conocer el promedio.
3. Conocer el valor de la matricula.
3. Conocer el descuento para los estudiantes de estrato 1con promedio igual o mayor de
4-5.
4. Calcular el valor de dicho descuento multiplicando el valor de la matricula por el 50 y
3
4. Lógica y Algoritmia
1 de jun.
dividirlo por 100.
5. Mostrar el resultado.
Fin
Declaración de constantes y variables:
Constantes:
MATRICULA = 461,500.00
Variables:
ESTRATO ENTERO
PROMEDIO REAL
TOTAL MAT REAL
Algoritmo _ matricula promedio
Inicio
ESTRATO = 0; PROMEDIO = 0; TOTAL MAT = 0;
Escriba “Digite el estrato al que pertenezca”; Lea ESTRATO;
Escriba “Digite promedio académico”; Lea PROMEDIO
Si
ESTRATO = 1 ^ PROMEDIO >= 4.5
Entonces
TOTAL MAT = (MATRICULA*50)/100;
Escriba “Valor total matricula”; TOTAL MAT;
Sino
Escriba “Valor total matricula”; MATRICULA
Fin Si
Fin Si
Fin
Ejercicio 5.3 En la Universidad del Tolima se concede descuentos para el pago de
matricula considerando lo siguiente: a estudiantes de estrato 1 o 2 y con promedio de
notas no inferior a 3.8 el 50%, estudiantes de estrato 3 el 30% si su promedio de notas es
superior a 4.2. La matricula equivale a un (1) salario mínimo mensual legal vigente
(461,500.00) . Escriba un programa.
Solución:
Que me piden?
Liquidar el valor de la matricula, dependiendo del estrato y de las notas obtenidas por el
estudiante.
Que me dan?
4
5. Lógica y Algoritmia
1 de jun.
Los estratos, el descuento de cada uno, el valor de la matricula normalmente y los
promedios necesarios para el descuento.
Como lo hago?
Ingresando el estrato si es1 o 2 y su promedio es mayor que 3.8 teniendo esos dos datos
cojo le valor de la matricula y la multiplico por el 50% de descuento y su resultado lo
divido por 100 y el resultado final será el total a pagar.
Ingresar estrato si es 3 y su promedio 4.2 cojo el valor de la matricula y la multiplico por el
30% de descuento y su resultado lo divido en 100.
Algoritmo _ Descuento
Inicio
1. Conocer el estrato.
2. Conocer el promedio.
3. Conocer el valor del descuento.
4. Conocer el valor de la matricula.
5. Calcular el valor total de la matricula a partir del estrato y del promedio.
6. Calcular valor de la matricula si es de estrato 1 o 2 y tiene un promedio no menor a 3.8
multiplico el valor de la matricula por el 50 y lo divido por 100.
7. Calcular el valor de la matricula si es de estrato 3 y su promedio es mayor que 4.2,
multiplico le valor de la matricula por el 30 y lo divido en 100.
8. Mostrar los resultados.
Fin
Definición y declaración de variables:
Constantes:
MATRICULA=461,500.00
Variables:
ESTRATO ENTERO
PROMEDIO REAL
TOTAL MAT REAL
Algoritmo _ Descuento
Inicio
ESTRATO = 0; PROMEDIO = 0; TOTAL MAT = 0;
Escriba “Digite el estrato al que pertenezca”; Lea ESTRATO;
Escriba “Digite promedio académico”; Lea PROMEDIO
Si
ESTRATO = 1 ^2 ^ PROMEDIO > 3.8
Entonces
TOTAL MAT = (MATRICULA*50)/100;
5
6. Lógica y Algoritmia
1 de jun.
Escriba “Valor total matricula”; TOTAL MAT;
Sino
ESTRATO = 3 ^ PROMEDIO > 4.2
Entonces
TOTAL MAT = (MATRICULA*30)/100;
Escriba “Valor total matricula”; TOTAL MAT
Sino
Escriba “Valor total matricula”; MATRICULA;
Fin Si
Fin Si
Fin Si
Fin
Ejercicio 5.4 El almacén 3 X 1 solicita se le elabore un programa que facilite calcular el
valor de una venta a partir del valor unitario, cantidad, tipo de producto (1. No grabado, 2.
Grabado). Se debe tener en cuenta que el IVA se aplica según el tipo de articulo si es
grabado se aplica el 16% de lo contrario no tiene IVA. (IVA porcentaje para calcular el
impuesto de valor agregado a un producto, que se adiciona al valor unitario).
Solución:
Análisis del problema:
Determinar el valor del IVA de un producto dependiendo del tipo y valor unitario.
Que me piden?
Calcular el valor de una venta.
Que me dan?
Valor del IVA y el tipo de producto.
Como lo hago?
Saber el tipo de producto y el valor del IVA correspondiente, si es de tipo 2, multiplico el
valor unitario por 16 y lo divido por 100, el resultado lo multiplico por la cantidad. Si es de
tipo 1 multiplico el valor de la unidad por la cantidad.
TPRODUCT =<1^>2
((VUNIT*16)/100)*CANT
VUNIT*CANT
Algoritmo _ Venta
Inicio
1. Ingresar valor del producto.
2. Ingresar cantidad de producto.
3. Ingresar tipo de producto.
6
7. Lógica y Algoritmia
1 de jun.
4. Conocer producto tipo de producto.
TPRODUCT =<1^>2
5. Calcular producto si es tipo 2
((VUNIT*16)/100)*CANT
6. Calcular producto si es tipo 1
VUNIT*CANT
7. Mostrar valor de la venta
Fin
Declaración de constantes y variables
Constante 16
Variables:
VUNIT =Real; CANT = Entero; TPRODUC = Real; TOTAL = Real;
Algoritmo_ Venta
Inicio
VUNIT=0; CANT=0; TPRODUC=0l; TOTAL=0;
Escriba “Digite valor unitario del producto”; Lea VUNIT;
Escriba “Digite cantidad de producto”; Lea CANT;
Escriba “Digite tipo d producto”; Lea TPRODUC;
Si
TPRODUC = 2
Entonces
TOTAL = ((VUNIT*16)/100)*CANT
Escriba “Total a pagar”; TOTAL;
Sino
TPRODUC = 1
Entonces
TOTAL = VUNIT*CANT
ESCRIBA “Total a pagar”; TOTAL
Sino
TPRODUCT <1^>2
Entonces
Escriba “El tipo de producto es desconocido”;
Fin Si
Fin Si
Fin Si
Fin
7
8. Lógica y Algoritmia
1 de jun.
PROBLEMAS DE PROGRAMACION PLOG_2
1. Escriba un algoritmo que calcule el interés obtenido por una suma de dinero, para ello
se debe ingresar por teclado la cantidad de dinero (mayor a cero), la tasa de interés (se
debe validar que siempre sea mayor que 0), el tiempo en días (debe ser mayor a 0).
ANALISIS: Elaborar un programa que calcule el interés obtenido por una suma de dinero
mayor a cero, con una tasa de interés mayor que cero y con unos días de intereses
mayores que cero.
¿Qué me piden? Calcular el valor del interés obtenido por una suma de dinero mayor que
cero.
¿Qué me dan? El valor de la suma de dinero, la tasa de interés diario y los días de
intereses.
¿Cómo lo hago? Multiplicando la suma de dinero por la tasa de interés y el resultado lo
multiplico a la cantidad de días de intereses.
Eje:
SDDI= 500‟000
TDID: 10%
CDDI: 300
VIDI: ¿? (Valor Interés Diario)
VIOB: ¿? (Valor Interés Obtenido)
VIDI = SDDI*TDID
VIOB = VIDI*CDDI
VIDI = 500‟000*10%
VIOB = 50‟000*300= 15‟000,000
Algoritmo CalcII
Inicio
Conocer el valor de la suma de dinero.
Conocer el valor de la tasa de interés.
Conocer el número de días de intereses.
Calcular el valor del interés obtenido de la suma de dinero.
Mostrar resultados
Fin
Definición y Declaración de Variables y Constantes
Variables: Entrada: SDDI, Real
TDID, Real
CDDI, Real
Proceso: VIDI, Real
VIOB, Real
Programa CalcII
VAR: Real: SDDI, TDID, CDDI, VIDI, VIOB
Inicio
VIDI= 0 VIOB=0
Escriba: “VALOR DE LA SUMA DE DINERO”, Lea SDDI
8
9. Lógica y Algoritmia
1 de jun.
Escriba: “VALOR DE LA TASA DE INTERÉS DIARIO”, Lea TDID
Escriba: “CANTIDAD DE DÍAS DE INTERESES”, Lea CDDI
VIDI = SDDI*TDID
VIOB = VIDI*CDDI
Escriba: “CALCULO DEL VALOR DEL INTERÉS DIARIO”, VIDI
Escriba: “CALCULO DEL VALOR DEL INTERÉS OBTENIDO”, VIOB
Fin
2. Se ingresa por teclado los datos A, B y C, determine cuál es el mayor.
ANALISIS: Elaborar un programa que calcule cual de los datos ingresados (A, B, C) es el
mayor.
¿Qué me piden? Determinar cuál de los datos ingresados es el mayo.
¿Qué me dan? Los datos ingresados A, B, C.
¿Cómo lo hago? Dando cualquier valor numérico a los datos ingresados.
Otra forma seria:
Si (A>B) y (A>C) entonces
Escriba “El Numero mayor es A”
Sino
Si (B>A) y (B>C) entonces
Escriba “El Numero mayor es B”
Sino
Escriba “El Numero mayor es C”
Finsi
Algoritmo Mayor
Inicio
Conocer el valor de A.
Conocer el valor de B.
Conocer el valor de C.
Mostrar el resultado.
Fin_Algoritmo
Definición y declaración de variables:
Entrada: VA, Real
VB, Real
VC, Real
Proceso: VM, Real
4. Programa Mayor
VAR
VA: Real, VB: Real, VC: Real, VM: Real
Inicio
Escriba “Dame un valor para A”; Lea A
Escriba “Dame un valor para B”; Lea B
Escriba “Dame un valor para C”; Lea C
Si (A>B) y (A>C) entonces
Escriba “El Numero mayor es A”
9
10. Lógica y Algoritmia
1 de jun.
Sino
Si (B>A) y (B>C) entonces
Escriba “El Numero mayor es B”
Sino
Escriba “El Numero mayor es C”
Finsi
Fin
3.
Se ingresa por teclado los datos A, B y C, determine cuál es el mayor y cual el menor.
ANALISIS: Elaborar un programa que calcule cual de los datos ingresados (A, B, C) es el
mayor y cuál es el menor.
¿Qué me piden? Determinar cuál de los datos ingresados es el mayor y cuál es el menor.
¿Qué me dan? Los datos ingresados A, B, C.
¿Cómo lo hago? Dando cualquier valor numérico a los datos ingresados.
Otra forma seria:
Si (A>B) y (A>C) entonces
Escriba “El Numero mayor es A”
Sino
Si (B>A) y (B>C) entonces
Escriba “El Numero mayor es B”
Sino
Escriba “El Numero mayor es C”
Sino
Si (A
Escriba “El Numero menor es A”
Sino
Si (B
Escriba “El Numero menor es B”
Sino
Escriba “El Numero menor es C”
Finsi
Algoritmo Mayor_Menor
Inicio
Conocer el valor de A.
Conocer el valor de B.
Conocer el valor de C.
Mostrar el resultado.
Fin_Algoritmo
Definición y declaración de variables:
Entrada: VDA, Real
VDB, Real
10
11. Lógica y Algoritmia
1 de jun.
VDC, Real
Proceso: VMA, Real
VME, Real
Programa Mayor_Menor
VAR
VA: Real, VB: Real, VC: Real, VMA: Real, VME: Real
Inicio
Escriba “Dame un valor para A”; Lea A
Escriba “Dame un valor para B”; Lea B
Escriba “Dame un valor para C”; Lea C
Si (A>B) y (A>C) entonces
Escriba “El Numero mayor es A”
Sino
Si (B>A) y (B>C) entonces
Escriba “El Numero mayor es B”
Sino
Escriba “El Numero mayor es C”
Sino
Si (A
Escriba “El Numero menor es A”
Sino
Si (B
Escriba “El Numero menor es B”
Sino
Escriba “El Numero menor es C”
Finsi
Fin
4.
Se ingresa por teclado los datos A, B y C, determine cuál es el mayor, el menor y el del
medio.
ANALISIS: Elaborar un programa que calcule cual de los datos ingresados (A, B, C) es el
mayor, cuál es el menor y cuál es el del medio.
¿Qué me piden? Determinar cuál de los datos ingresados es el mayor, cual es el del
medio y cuál es el menor.
¿Qué me dan? Los datos ingresados A, B, C.
¿Cómo lo hago? Dando cualquier valor numérico a los datos ingresados.
Otra forma seria:
Si (A>B) y (A>C) entonces
Escriba “El Numero mayor es A”
Sino
Si (B>A) y (B>C) entonces
Escriba “El Numero mayor es B”
Sino
11
12. Lógica y Algoritmia
1 de jun.
Escriba “El Numero mayor es C”
Sino
Si (A
Escriba “El Numero menor es A”
Sino
Si (B
Escriba “El Numero menor es B”
Sino
Escriba “El Numero menor es C”
Si (A>B) y (B>C) entonces
Escriba “El Numero del medio es B”
Sino
Si (B>A) y (A>C) entonces
Escriba “El Numero del medio es A”
Sino
Escriba “El Numero del medio es C”
Finsi
Algoritmo Mayor_Medio_Menor
Inicio
Conocer el valor de A.
Conocer el valor de B.
Conocer el valor de C.
Mostrar el resultado.
Fin_Algoritmo
Definición y declaración de variables:
Entrada: VDA, Real
VDB, Real
VDC, Real
Proceso: VMAY, Real
VMED, Real
VMEN, Real
Programa Mayor_Medio_Menor
VAR
VA: Real, VB: Real, VC: Real, VMAY: Real, VMED: Real, VMEN: Real
Inicio
Escriba “Dame un valor para A”; Lea A
Escriba “Dame un valor para B”; Lea B
Escriba “Dame un valor para C”; Lea C
Si (A>B) y (A>C) entonces
Escriba “El Numero mayor es A”
Sino
Si (B>A) y (B>C) entonces
Escriba “El Numero mayor es B”
12
13. Lógica y Algoritmia
1 de jun.
Sino
Escriba “El Numero mayor es C”
Sino
Si (A
Escriba “El Numero menor es A”
Sino
Si (B
Escriba “El Numero menor es B”
Sino
Escriba “El Numero menor es C”
Finsi
Si (A>B) y (B>C) entonces
Escriba “El Numero del medio es B”
Sino
Si (B>A) y (A>C) entonces
Escriba “El Numero del medio es A”
Sino
Escriba “El Numero del medio es C”
Finsi
Fin
5.
Escriba un programa que acepte la entrada de un número entero y se determine si es par
o impar.
ANALISIS: Elaborar un programa que acepte números enteros y determine si son par o
impar.
¿Qué me piden? Determinar si el dato entero es par o impar.
¿Qué me dan? Un número entero.
¿Cómo lo hago? Dividiendo el numero entero en dos y si el residuo que obtenemos es
cero entonces podemos decir que es par de lo contrario es impar.
RSD=0 de ENT/2
Otra forma seria:
Si Numero Entero y Residuo= “0 (cero)” Entonces
Escriba “Numero Par”
Sino
Escriba “Número Impar”
Finsi
Algoritmo Par_Impar
Inicio
Conocer el número entero.
Calcular el residuo de la división entre el entero y el dos.
Mostrar el resultado
Fin_Algoritmo
Definición y declaración de variables:
13
14. Lógica y Algoritmia
1 de jun.
Entrada: Entero, ENT, Entero
Proceso: Residuo, RSD, Real
Tipo de entero, TDE [2], Cadena
Programa Par_Impar
VAR
ENT: Entero, RSD: Real, TDE, Cadena [2]
Inicio
Escriba “Un numero entero”, Lea ENT
Si ENT y RSD= “0” entonces
Escriba “Numero Par”
Sino
Escriba “Número Impar”
Finsi
Fin
6.
Calcular la edad de una persona a partir de los datos de la fecha de nacimiento.
1. análisis: programa que calcule la edad de una persona a partir de la fecha de
nacimiento
Que me piden? calcule la edad de una persona a partir de la fecha de nacimiento
Que me dan? fecha de nacimiento
Como lo hago?
1. con la siguiente fórmula:
EDAD=año actual ¬¬- año de nacimiento de la persona
2.ALGORITMO
Conocer los datos de entrada fecha de nacimiento
Calcular edad
Mostrar resultado
Fin
3. Definición de variables y constantes
de entrada
fecha de nacimiento real
4.Seudo lenguaje
Var
Fecha de nacimiento
Inicio
Escriba” año actual:” lea fecha actual
Escriba” año de nacimiento:” lea año de nacimiento
EDAD=año actual- año de nacimiento
Mostrar “resultado edad:” edad
Fin
14
15. Lógica y Algoritmia
1 de jun.
7.
Calcular la raíz cuadrada para un numero positivo dado por teclado. Mostrar el resultado
obtenido.
1. análisis: programa que calcule la raíz cuadrada de un numero positivo
Que me piden? calcular la raíz cuadrada de un numero positivo
Que me dan? raíz cuadrada
Como lo hago?
1. asignando un numero positivo y lo elevó al cudrado sacar raíz cuadrada.
Raíz=n.p^2=raíz numero positivo
2.ALGORITMO
Conocer los datos de entrada numero positivo
Calcular raíz cuadrada
Mostrar resultado
Fin
3.Definición de variables y constantes
de entrada
numero positivo real
de proceso
raíz cuadrada real
4.Seudo lenguaje
Var
Numero positivo
Inicio
Escriba” numero positivo ^2:” lea n. positivo ^2
Raíz=n.p^2=raíz n.p
Mostrar “resultado raíz del numero positivo:” raíz de n.p
Fin
8.
Elabore un programa que permita realizar una suma o resta de dos números ingresados
por teclado, según se obtenga respuesta a la petición de tipo de operación, en un
mensaje al que debe responder S o N.
1. Análisis: programa que permita realizar una suma o resta y que envié un mensaje de
que operación y un mensaje que debe responder si o no
Que piden?. Programa que permita realizar una operación (suma o resta) y que envié un
mensaje de que operación si suma o resta si o no
Que me dan? operaciones (suma o resta)y dos números
Como lo hago?
Evaluando que tipo de operación si suma o resta va a ejecutar con los dos números
entonces se muestra un mensaje con la petición del tipo de operación que debe
responder si o no
15
16. Lógica y Algoritmia
1 de jun.
Otra forma seria:
Si suma o resta entonces
Si suma entonces
Escriba “ suma “
Sino
Escriba “ resta”
Finsi
Si
Escriba “si suma o no suma”
Sino
Escriba” resta”
Finsi
2. Algoritmo
inicio
1. Conocer el datos de entrada suma o resta y los dos números
2. calcular que tipo de operación se va a utilizar con los dos números si suma o resta y
mostrar un mensaje si o no
3. Mostrar resultado
Fin
3. Definición y declaración de variables:
Entrada: dos números real
Proceso: suma y resta real
4. Programa
var
dos números, suma o resta
inicio
Escriba „ dos numeros : „ Lea dos n
Si suma o resta entonces
Si suma entonces
Escriba “ suma “
Sino
Escriba “ resta”
Finsi
Si
Escriba “si suma o no suma”
Sino
Escriba” resta”
Finsi
10.
Elabore un programa para validar la entrada del dato sexo. Los valores permitidos son M
o F, minúsculas o mayúsculas. Según sea el valor se debe mostrar el Letrero Masculino o
Femenino, si no es ninguna de estas dos letras debe mostrar un mensaje de
16
17. Lógica y Algoritmia
1 de jun.
Equivocación.
1. Análisis del problema: Escribir un programa para determinar si los valores indicados
para el dato genero o sexo son correctos o no.
Que piden? Validar la entrada del dato sexo mostrando si es Masculino o Femenino en
caso contrario error.
Que me dan? Género o sexo.
Como lo hago?
Evaluando o validando el valor del dato sexo para saber si es un valor aceptable entonces
se muestra el letrero Masculino o Femenino según sea el caso; de no ser así se muestra
un mensaje de error.
2. Algoritmo Genero
Inicio
1 Conocer el dato sexo
2 Evaluar el valor del dato sexo para saber si es un valor aceptable entonces mostrar el
letrero Masculino o Femenino según sea el caso; de no ser así se muestra un mensaje de
error
Fin_Algoritmo
3. Definición y declaración de variables:
Entrada : sexo : Cadena
Proceso :
4. Programa Genero
VAR
Sexo : Cadena
Inicio
Escriba „ Genero o Sexo [M: Masculino, F: Femenino] : „ Lea sexo
Si sexo = “F” o sexo = “f” o sexo = “M” o sexo = “m” entonces
Si sexo = “F” o sexo = “f” entonces
Escriba “ Genero Femenino “
Sino
Escriba “ Genero Masculino”
Finsi
Sino
Escriba “No es un valor aceptado para Genero o Sexo”
Finsi
11.
Un Almacén por departamentos requiere un programa para validar la entrada de los
códigos de departamento, son ocho, numerados de 1 a 8. Al validar cada código se debe
mostrar el nombre del departamento: 1 Cristalería, 2 Ferretería, 3 Ropa, 4 Rancho y
Licores, 5 Granos, 6 Carnes y Lácteos, 7 Verduras, 8 Deportes. Si se ingresa un valor
errado se debe mostrar un mensaje de advertencia.
Análisis del problema:
entrada de 8 códigos y que cada uno de ellos represente un departamento de un
17
18. Lógica y Algoritmia
1 de jun.
almacén.
Que me piden
Validar los códigos de los diferentes departamentos en un almacén.
Que me dan
Cada uno de los códigos
Como lo hago
Se designa el valor que toma cada uno de los números, que representa los diferentes
departamentos que componen el almacén,
Algoritmo _ Almacén codigo
Inicio
1. Digite un numero.
2. Si el número digitado anteriormente es menor y mayor que 8.
3. Muestre “el numero ingresado no es un departamento del almacén”.
4. Si digita 1 entonces escriba “departamento de cristalería”.
5. Si digita 2 entonces escriba “departamento de ferretería”
6. Si digita 3 entonces escriba “departamento de ropa”
7. Si digita 4 entonces escriba “departamento de rancho y licores”
8. Si digita 5 entonces muestre “departamento de granos”
9. Si digita 6 entonces muestre “departamento de carnes y verduras”
10. Si digita 7 entonces muestre “departamento de verduras”
11. Si digita 8 entonces muestre “departamento de deportes”
12. Mostrar resultados.
Fin
Declaración de constantes y variables:
Variables:
OPC ENTERO
Algoritmo _ Almacén
Inicio
OPC = 0;
Escriba “Digite el código del departamento”; Lea OPC;
Si
OPC <0^>8
Entonces
Escriba “No es un departamento del almacén”;
sino
opc = 1
18
19. Lógica y Algoritmia
1 de jun.
entonces
escriba “departamento de cristalería”;
sino
opc = 2
entonces
escriba “departamento de ferretería”;
sino
opc = 3
entonces
escriba “departamento de ropa”;
sino
opc = 4
entonces
escriba “departamento de rancho y licores”;
sino
opc = 5
entonces
escriba “departamento de granos”;
sino
opc = 6
entonces
escriba “departamento de carnes y verduras”;
sino
opc = 7
entonces
escriba “departamento de verduras”;
sino
escriba “departamento de deportes”;
fin si
fin si
fin si
fin si
fin si
fin si
fin si
fin si
12.
El departamento de matemáticas de la UT requiere un programa para realizar
operaciones de calculo, las opciones son: suma, multiplicación, resta, división utilizando el
operador /, división utilizando DIV, división utilizando MOD, Raíz cuadrada, exponente. El
usuario debe elegir que operación desea realizar. Tenga en cuenta validar para las
operaciones diferentes a suma y multiplicación, que el primer valor sea mayor que el
segundo valor, de lo contrario no se debe permitir realizar la operación y se tiene que
19
20. Lógica y Algoritmia
1 de jun.
mostrar un mensaje en pantalla.
Algoritmo: hacer un programa que realice operaciones de calculo
que me dan?: suma, resta, división, multiplicación, raíz cuadrada, exponencicion
como lo hago?: verificando la operación a realizar
si es resta entonces res=n_mayor-n_menor
si es sume entonces sum=num_m+num_menor
si es multiplicación entonces mult=n_mayor*n_menor
si división entonces div=n_mayor/n_mayor
definición y declaración de variable y contanstes
var=res, sum, mult, div,¨cadena¨ n_mayor,n_menor¨real¨
entrada
n_mayor¨numero mayor¨ real
n_menor¨numero menor¨real
proceso
res¨resta¨cadena
sum¨suma¨cadena
mult¨multiplicacion¨cadena
div¨division¨cadena
programa oprracion de calculo
var n_mayor, n_menor, res, sum, mult, div
inicio
1.escriba¨numero mayor de la operación¨lea n_mayor
2.Escriba¨numero menor de la operación¨lean_menor
3.Si res=¨operación de calculo¨entonces
Res=n_mayor-n_menor
Fin_si
4.si sum=¨operación de calculo¨entonces
Sum=n_mayor+n_menor
5.si milt=¨ operación de calculo¨entonces
Mult=n_mayor*n_menor
Fin_si
6.si div=operación de calculo¨entonces
Div=n_mayor/n_menor
Fin_si
7.escriba¨resta¨,res
8.escriba¨suma¨,sum
9.escriba:multiplicacion¨,mult
10.escriba¨division¨,div
11.fin programa
Se modifica la instrucciones 3,4,5,6 de selectiva simple a selectiva alterna
3.si res=¨operación de calculo¨ entonces
Res=n_mayor-n_menor sino
Sum=n_mayor+n_menor¨ de lo contrario
20
21. Lógica y Algoritmia
1 de jun.
Mult=n_mayor*n_menor¨de otra forma
Viv=n_mayor/n_menor
Fin_si
13.
En una tienda de videos se realiza una promoción para ciertos géneros de película, así:
Suspenso 10% descuento, Drama paga una lleva dos, Romántica 30% descuento, Humor
pague dos lleve cuatro. Los géneros se codifican: 1 Suspenso, 2 Drama, 3 Romántica, 4
Humor. El valor del alquiler de una película es $ 1200.oo. El programa debe calcular el
valor a pagar por el cliente.
análisis del problema:
crear un programa que calcule el valor a pagar del cliente según la película que escogió y
así mismo dicha promoción por tipo de esta.
que me piden?
calcular el valor a pagar del cliente.
que me dan?
los valores de descuento de cada película y sus promociones.
como lo hago?
debemos de conocer la clase de película así que hay que designar operaciones a cada
una de estas clases y la cantidad porque así mismo se le dará el descuento al usuario.
algoritmo _ películas
inicio
1. escriba 1 película de suspenso
2. escriba 2 película de drama
3. escriba 3 película romántica
4. escriba 4 película de humor
5. digite la clase de película que quiere ver
6. digite el número de películas que quiere ver
7. si escoge la clase de película 1 entonces (numero de peliculas*valor de pelicula)-
((numero de peliculas*valor de peliculas)*10/100).
8. si la clase de película es de numero 2 y lleva una entonces total = numero de peliculas
*valor de pelicula.
9. si la clase de película es de numero 2 y lleva dos o mas películas entonces total =
(valor de pelicula*numero de peliculas)/2.
10. si el tipo de película es de numero 3 entonces (numero de peliculas*valor pelicula)-
((numero peliculas*valor pelicula)*30/100).
11. si el tipo de película es de numero 4 total= (valpel*numpel)/2
12. si el tipo de película es de numero 4 total = ((valpel*numpel)/2)-valpel.
21
22. Lógica y Algoritmia
1 de jun.
13. mostrar resultados.
fin
declaración de constantes y variables:
constantes:
valpel = 1200
variables:
claspel entero
numpel entero
total real
algoritmo _ películas
inicio
cp = 0; total = 0; numpel = 0;
escriba “película de suspenso digite 1”;
escriba “película de drama digite 2”;
escriba “película romántica digite 3”;
escriba “película de humor digite 4”;
escriba “digite la clase de película que desea”; lea claspel;
escriba “digite el número de películas”; lea numpel;
si
claspel = 1
entonces
total = (numpel*valpel)-((numpel*valpel)*10/100);
escriba “total a pagar”; total;
sino
si
claspel = 2 ^ numpel = 1
entonces total = numpel*valpel;
escriba “total a pagar”; total;
finsi
sino
claspel = 2 ^ numpel >= 2
entonces
total = (valpel*numpel)/2;
escriba “total a pagar”; total;
finsi
fin si
sino
claspel = 3
entonces
22
23. Lógica y Algoritmia
1 de jun.
total = (numpel*valpel)-((numpel*valpel)*30/100);
escriba “total a pagar”; total;
fin si
sino
si
claspel = 4 ^ numpel mod 2 = 0
entonces
total = (valpel*numpel)/2;
entonces “total apagar”; total;
fin si
sino
claspel = 4 ^ numpel mod 2 = 1;
entonces
total = ((valpel*numpel)/2)-valpel;
escriba “total a pagar”; total;
fin si
fin si
14.
Una empresa de viajes prepara un plan para excursiones con descuentos novedosos,
para ello diseño la siguiente escala para grupos: Grupos de 15 a 20 personas tendrán un
descuento del 10% del valor del tiquete, grupos hasta de 40 personas un descuento del
15% del valor del tiquete, grupos hasta 60 personas un descuento del 15% del valor del
tiquete y una bonificación del 60% de un salario mínimo diario. Escriba un programa para
calcular el valor que debe pagar una persona de acuerdo al grupo de personas con que
viajara y la bonificación a que tiene derecho. Un salario mínimo legal mensual es de $
461,500.oo.
Que me pidencalcular el valor a pagar por una persona de acuerdo al grupo
Que me dan:los grupos y los descuentos de cada grupo
Como lo hago?
Si es grupo 15 a 20 entonces vp=val_tik*des_10
Si es 40 entonces. Vp=val_tik*des_15
Si es grpo 60 entonces. Vp=val_tik*des_15+276.900
Si es bonificación entonces bonif=mini*60
Definición y declaración de variable y constante
var=tik¨real¨ vp=¨real¨
cons=des_10, des_15¨cadena ¨mini¨real¨
grupo ¨cadena¨ bonf
entradatik=¨precio de tiquete de vuelto¨real
des_10¨descuento de 10% para grupos de 15 a 20¨cadena
des_15¨descuento del 15% para grupos de 40¨cadena
mini¨salario minimo¨real
grup¨grupos de viajes¨cadena
23
24. Lógica y Algoritmia
1 de jun.
proceso
vp¨valor a pagar de acuerdo agrupo¨real¨
bonif¨bonificacion 60% del salario minimo¨real
programa=agencia de viajes
var: tik,vp
cons:des_10, des_15, mini, bonif,
1.escriba¨precio del tikete¨lea tik
2.escriba¨descuento del 10% del grupo 15 al 20¨lea des_10
3.escriba¨descuento del 15% del grupo 40¨lea des_15
4.escriba¨salario minimo legal¨lea mini
5.escriba¨grupos de viajes¨lea grup
6.si grup=grupo de 15 a 20 entonces
Vp=tik*des_10
Fin_si
7.si grup=grupo 40 entonces
Vp=tik*des_15
Fin_si
8.si grup=grupo 60 entonces
Vp=tik*des_15+276.900
Fin_si
9.si bonif=bonificación del salario minimo entonces
Bonif=mini*60
Fin_si
10.escriba¨valor a pagar¨,vp
Escriba¨bonificacion salario minimo¨,bonif
Fin_programa
Se modifica 6,7,8 de selectiva simpley selectiva alterna
Si grup= grup de 15 a 20 entonces
Vp=tik*des_10
Sino
Vp=tik*des_15 de otra forma
Vp=tik*des_15+276.900
Fin_si
15.
La empresa de renta de vehiculos Rent a Naves 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. 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. Escriba un programa que liquide
el valor que debe pagar una persona por el alquiler teniendo en cuenta la base dejada
debe indicar si le sobra dinero o cuanto le falta.
24
25. Lógica y Algoritmia
1 de jun.
Que me piden?: el valor que tiene que pagar una persona por el alquiler teniendo en
cuenta la base
que me dan?:la tabla de liquidar el cobro
como lo hago?:verificando tipo de vehículo si es 1 o 2 y los kilómetros recorridos
si es vehículo tipo 1entonces vp=kms*pr_tb
si es vehículo tipo 2 entonces vp=kms*pr_tb
si es abono entonces =vpa=vp_abn
definición de variable y constante
entrada
kms¨kilometros recorridos¨real-vehiculo v1¨vehiculo de tipo 1´cadena
-vehiculo v2¨vehiculo de tipo 2¨ cadena
Pr_tb¨precios establecidos en la tabla¨ real-k500m¨costo adicional,en kilómetros
pasados¨real
Abnäbono por el arriendo del vehiculo¨real k3000m¨costo adicional en kilómetros
pasados¨real-abono¨abono por el arriendo¨real
Programa=renta de vehiculos
var=kms¨real¨,vp¨real¨abn¨real¨vpa¨real¨ abono¨real¨
cons=pr_tb¨real¨v1,v2¨cadena¨k500m,k3000m¨real¨
1.escriba¨kilometros recorridos¨lea kms
2.escriba ¨precios establecidos¨ lea pr_tb
3.escriba ¨abono por el arriendo del vehiculo¨ lea abn
4.escriba ¨vehiculo tipo1¨ lea v1
5.escriba ¨vehiculo tipo2¨ lea v2
6.escriba ¨adicional por kilómetros ¨lea k500m
7.escriba ¨adicional por kilómetros pàra tipo2¨ lea k3000m
8.escriba ¨abono arriendo por el abono¨ lea abono
9.si v1=menos de 50kmentonces
Vp=kms*pr_tb
sino
V1=hasta 100km entonces
Vp=kms*pr_tb
sino
V1mas 100km entonces
Vp=kms*pr_tb+k500m
Fin_si
10.si v2=menos 70km entonces
Vp=kms*pr_tb sino
Si v2 entre 71 y 110 km entonces
Vp=kms*pr_tb sino
Si v2=hasta 200km entonces
Vp=kms*pr_tb sono
Si v2 mas de 200km entonces
25
26. Lógica y Algoritmia
1 de jun.
Vp=kms*pr_tb +k3000m
Fin_si
16.
Elabore un programa en el que se lea una temperatura en Grados centígrados (entre -15
y 120, el sistema debe rechazar cualquier valor que no este en este rango) y se indique el
equivalente en grados kelvin y Fahrenheit.
análisis del problema
calculas en grados centígrados y en fahrenheit entre -15 y 120.
que me piden
grados centígrados y fahrenheit.
que me dan
grados centígrados y fahrenheit
como lo hago
ingresando un valor de grados centígrados que se encuentr-15 y 120, que lo convierta a
grados kelvin y fahrenheit.
algoritmo _ grados
inicio
1. ingresar una temperatura dada en grados centígrados comprendida entre -15 y 120,
sino esta entre este rango no la acepte.
2. calcular grados fahrenheit si los grados centígrados ingresados están entre -15 y 120.
3. calcular grados kelvin si los grados centígrados ingresados se encuentran entre -15 y
120.
4. mostrar resultados.
fin
declaración de constantes y variables:
constantes:
fc = 32
fk = 273
ff = 9/5
variables:
gk real
gf real
26
27. Lógica y Algoritmia
1 de jun.
gc real
algoritmo _ grados
inicio
gk = 0; gf = 0; gc = 0;
escriba “digite cantidad de grados centígrados”; lea gc;
si
gc < -15 ^ > 120
escriba “el numero ingresado no se encuentra en el rango”;
sino
entonces gk = fk + gc;
gf = (ff * gc) + fc;
escriba “la cantidad en grados kelvin es:”; gk;
escriba “la cantidad en grados fahrenheit:”; gf;
27