Práctica N°1
Universidad Tecnológica de
Panamá
Facultad de Ingeniería de
Sistemas Computacionales
Licenciatura en Redes
Informáticas
Desarrollo Lógico y
Algoritmo
1. Escribir
un algoritmo donde transforma de libras a kilogramos
Algoritmo
<transformar_libras_a_kilogramos>
Constantes
TRANV=0.454
Variable
Real libras, kg
Inicio
Imprimir
(“Introduzca las libras”)
Leer
(libras)
Kg=tranv*libras
Imprimir
(“El resultado es:”, kg)
Fin
2. Escribir
un algoritmo donde se obtiene el promedio de 5 calificaciones
Algoritmo
<Promedio_de_calificaciones>
Constante
DIV=5
Variable
Real n1, n2, n3, n4, n5, n6, n7
Inicio
Imprimir
(“Introduzca la nota1”)
Leer
(n1)
Imprimir
(“Introduzca la nota2”)
Leer
(n2)
Imprimir
(“Introduzca la nota3”)
Leer
(n3)
Imprimir
(“Introduzca la nota4”)
Leer
(n4)
Imprimir
(“Introduzca la nota5”)
Leer
(n5)
n6=
n1+n2+n3+n4+n5
n7=
n6/Div
Imprimir
(“El promedio es”, n7)
Fin
3. Escribir
un algoritmo donde pregunte el nombre apellido y edad y diga si es mayor de
edad
Algoritmo
<Promedio_de_calificaciones>
Variable
entero edad
cadena nombre, apellido
Inicio
Imprimir
(“Introduzca su nombre”)
Leer
(nombre)
Imprimir
(“Introduzca su apellido”)
Leer
(apellido)
Imprimir
(“Introduzca su edad”)
Leer
(edad)
Si
(edad < 18)
Imprimir (“Es menor de edad”)
De
otro modo
Imprimir (“Es mayor de edad”)
Fin
Universidad Tecnológica de Panamá
Práctica N°2
Universidad Tecnológica de Panamá
Facultad de Ingeniería de Sistemas Computacionales
Licenciatura en Redes Informáticas
1. Elabore un algoritmo para calcular el
salario neto de un empleado donde tiene un 11% de prestaciones laborales.
Algoritmo <Salario
neto>
Variable
real salario
Inicio
Imprimir
(“Introduzca su salario”)
Leer
(salario)
Salario
= salario – (salario * 0.11)
Imprimir
(“su salario neto es:”, salario)
Fin
2. Elabore un algoritmo para calcular el índice de masa corporal de una persona con el sistema internacional de unidades.
3. Elabore un algoritmo para calcular el valor del dólar con respecto al euro, Yen japonés, Libra Esterlina, Renminbí y Pesos Colombianos.
2. Elabore un algoritmo para calcular el índice de masa corporal de una persona con el sistema internacional de unidades.
Algoritmo <Indice _de _Masa
_Corporal>
Variable
real peso, altura, IMC
Inicio
Imprimir
(“Introduzca su peso en Kilogramos”)
Leer
(peso)
Imprimir
(“Introduzca su altura en metros”)
Leer
(altura)
IMC
= peso / (altura * altura)
Imprimir
(“su índice de masa corporal es:”, IMC)
Fin3. Elabore un algoritmo para calcular el valor del dólar con respecto al euro, Yen japonés, Libra Esterlina, Renminbí y Pesos Colombianos.
Algoritmo <Valor del
dólar>
Variable
real dolar, euro, yen, librae, renminbi,
pesosc
Inicio
Imprimir
(“Introduzca el valor en dolar que desea calcular”)
Leer
(dolar)
euro
= dolar * 0.89
yen
= dolar * 109.57
librae
= dolar * 0.77
renminbi
= dolar * 6.87
pesosc
= dolar * 3304.7
Imprimir
(“el valor introducido en dólares equivale a:”)
Imprimir
(“euro:”, euro)
Imprimir
(“Yen japonés:”, yen)
Imprimir
(“Libras esterlinas:”, librae)
Imprimir
(“Renminbi:”, renminbi)
Imprimir
(“Pesos Colombianos:”, pesosc)
Fin
4. Elabore un algoritmo para calcular el salario neto de un empleado donde tiene un 11% de prestaciones laborales y 12.25% para salarios mayores a mil.
5. Elabore un algoritmo para calcular el
promedio de 5 calificaciones y le envíe un mensaje al usuario si aprobó o no la
materia. (para aprobar necesita tener un promedio de 71).
6. Elabore un algoritmo donde se le pida al
usuario un número de 1-7 y le imprima el día de la semana.
7. Elabore
un algoritmo que lea tres números diferentes, A, B, C, e imprime los valores
máximo y mínimo.
8. Elabore
un algoritmo que le solicite al usuario 5 calificaciones para calcular el
promedio e imprimir la equivalencia de la nota en letras A, B, C, D y F.
9. Elabore
un algoritmo que lea la hora en formato de (1-24) y minutos para imprimir la
cantidad en segundos e indicar si es antes del mediodía o después del mediodía.
10. Elaborar
un algoritmo que solicite la edad de 2 hermanos y muestre un mensaje indicando
la edad del mayor y cuantos años de diferencia tiene con el menor.
11. Elabore
un algoritmo que identifique que tipo de triangulo es (escaleno, equilátero e
isósceles) tomando en cuenta que el algoritmo debe solicitar el tamaño de los
tres lados.
Práctica Nº3
4. Elabore un algoritmo para calcular el salario neto de un empleado donde tiene un 11% de prestaciones laborales y 12.25% para salarios mayores a mil.
Algoritmo <Salario_neto>
Variable
real salario
Inicio
Imprimir
(“Introduzca su salario”)
Leer (salario)
Si salario > 1000 entonces
impuesto
<- salario*0.1225
salario <- salario – impuesto
Imprimir (“su salario neto es”, salario)
si _no
Impuesto <- salario*0.11
salario <- salario – impuesto
Imprimir (“su salario neto es”, salario)
Fin_si
Fin
Algoritmo
<Promedio_estudiantil>
Constante
APROBAR=71
TOTAL= 5
Variable
real=
prom, calificaciones
Inicio
Imprimir
(“Introduzca la suma de sus
calificaciones”)
Leer (calificaciones)
Prom= calificaciones / TOTAL
SI (Prom
>=APROBAR) ENTONCES
Imprimir (“Usted Aprobó”)
SI_NO
Imprimir (“NO APROBASTES”)
FIN_SI
FIN
1-Lunes
2-Martes
3-Miércoles
4-Jueves
5-Viernes
6-Sábado
7-Domingo
Algoritmo <Dia_caso>
Variable
entero
d
Inicio
Imprimir
("Introduzca un número del 1 al 7")
Leer
(d)
Si (d >=1) y (d <= 7)
EN_CASO_DE d HACER
1: Imprimir ("lunes")
2: Imprimir ("martes")
3: Imprimir ("miércoles")
4: Imprimir ("jueves")
5: Imprimir ("viernes")
6: Imprimir ("sábado")
7: Imprimir (“Domingo")
Fin caso
si_no
Imprimir ("El valor no es válido")
Fin_si
Fin
Algoritmo
<Maxmin_3>
Variable
entero A, B, C, Max, Min
Inicio
Imprimir (“”Introduzca el primer número)
Leer (A)
Imprimir (“”Introduzca el segundo número)
Leer (B)
Imprimir (“”Introduzca el tercer número)
Leer (C)
Si A < B Entonces
Si A < C Entonces
Min=
A
Si B
> C Entonces
Max= B
si_no
Max= C
Fin
Si
si_no
Si A > C Entonces
Max= A
Si B > C Entonces
Min= C
Si no
Min= B
Fin_si
si_no
Min= B
Max= C
Fin_si
Fin_si
Escribir (“El mayor es”, Max)
Escribir (“El menor es”, Min)
Fin
Algoritmo
<calificaciones>
Variable
real c1, c2, c3, c4, c5, p
Inicio
Imprimir "Introduzca
Calificación"
Leer (c1)
Imprimir "Introduzca
Calificación"
Leer (c2)
Imprimir
"Introduzca Calificación"
Leer (c3)
Imprimir "Introduzca
Calificación"
Leer (c4)
Imprimir
"Introduzca Calificación"
Leer (c5)
P= (c1+c2+c3+c46+c5)/5
Si p ≤ 60 Entonces
Imprimir (“F”)
si_no
Si p ≤ 70 Entonces
Imprimir (“D”)
si_no
Si p ≤ 80
Entonces
Imprimir (“C”)
si_no
Si
p ≤ 90 Entonces
Imprimir
(“B”)
si_no
Si
p ≤ 100 Entonces
Imprimir (“A”)
Fin_si
Fin_si
Fin_si
Fin_si
Fin_si
Fin
Algoritmo
<Segundos>
Variable
entero h, m, s
Inicio
Imprimir
(“Introduzca las horas”)
Leer
(h)
Imprimir
(“Introduzca los minutos”)
Leer
(m)
s= (h*3600)
+ (m*60)
Imprimir
(“la cantidad de segundos es”, s)
Si s
> 43200 Entonces
Imprimir (“Es después del medio día”)
si_no
Imprimir (“Es antes del medio día”)
Fin_si
Fin
Algoritmo
<Hermanos>
Variable
entero n1, n2, años
Inicio
Imprimir
(“Introduzca la edad de los hermanos”)
Leer
(n1, n2)
Si
n1>n2 Entonces
Imprimir (“El hermano mayor tiene”,
n1,” años)
Imprimir (“El hermano menor tiene”,
n2,” años)
r=n1-n2
Imprimir (“Tienen una diferencia
de”, r,” años)
si_no
Imprimir (“El hermano mayor tiene”,
n2,” años)
Imprimir (“El hermano menor tiene”,
n1,” años)
r=n2-n1
Imprimir (“Tienen una diferencia
de”, r,” años)
Fin_si
Fin
Algoritmo
<hermanos>
Variable
entero l1, l2, l3
Inicio
Imprimir
(“ingrese el primer lado”)
Leer
(l1)
Imprimir
(“ingrese el primer lado”)
Leer
(l2)
Imprimir
(“ingrese el primer lado”)
Leer
(l3)
Si (l1==l2) y
(l1==l3) Entonces
Imprimir (“El Triángulo
es Equilatero”)
si_no
Si (l1==l2) o (l2==l3) o (l1==l3)
Entonces
Imprimir (“El Triángulo
es Isósceles”)
si_no
Imprimir (“El Triángulo
es Escaleno”)
Fin_si
Fin_si
Fin
Práctica Nº3
Práctica Nº4
3.
Elabore un algoritmo que imprima los múltiplos de 7 hasta el valor de 500. Debe
aparecer en pantalla 9 – 18 – 27…
Algoritmo <resultado menor a 500>
Variable
entero a, b,
Inicio
Imprimir
("Multiplicación por 7 con resultado menor o igual a 500")
b = 0
Para a
<- 0 hasta 500 hacer
a = b*7
Si
(a <= 500)
Imprimir
(b, "por 7 =", a)
Imprimir
(NL)
Fin_si
b += 1
Fin_para
Fin
Práctica Nº5
Práctica Nº5
Arreglo Unidimensionales
1. Escribir un algoritmo donde
se almacene 20 precios de productos y
luego imprima el porcentaje
de los productos que cuestan mayores
de B/.50.00 y el porcentaje
de productos que no.
Algoritmo <20 precios>
tipo
arreglo [0-19] de tipo real: lista
variables
lista: precio
entero: a, mayores
real: porMay, porMen
Inicio
mayores=0
Para a=0 hasta 19 hacer
Imprimir (“introduzca el precio N”, a+1)
Leer(precio[a])
Si (precio[a] > 50)
mayores = mayores + 1
Fin Si
Fin Para
porMay = (mayores/20)*100
porMen = 100 - porMay
Imprimir (“Porcentaje de productos con precio mayor a
B/.50.00”, porMay)
Imprimir (“Porcentaje de productos con precio menor a
B/.50.00”, porMen)
Fin
2. Escribir un algoritmo que
lea 20 calificaciones el cual debe ser
almacenado en un arreglo.
Luego ordene el arreglo menor a mayor
e imprímalo en ese orden.
Algoritmo <calificaciones
menor a mayor>
tipo
arreglo [0-19] de tipo real: lista
variables
lista: calificación
entero: a, b
real: nota
Inicio
Para a=0 hasta 19 hacer
Imprimir (“introduzca la calificación N”, a+1)
Leer(calificación[a])
Fin Para
Para a=0 hasta 19 hacer
Para b=0 hasta 19 hacer
Si(b >= a) hacer
Si
(calificación[a] != calificación[b]) hacer
Si(calificación[a] >
calificación[b]) hacer
nota = calificación[a]
calificación[a] = calificación[b]
calificación[b] = nota
Fin Si
Fin
Si
Fin Si
Fin Para
Fin Para
Para a=0 hasta 19 hacer
Imprimir (“calificación N”, a+1, “=”,
calificación[a])
Fin Para
Fin
3. Escribir un algoritmo que
lea 20 calificaciones el cual debe ser almacenado en un arreglo. Luego calcule
e imprima el promedio e identifique cuales calificaciones son menores al
promedio e imprímalo.
Algoritmo <calificaciones
debajo del promedio>
tipo
arreglo [0-19] de tipo real: lista
variables
lista: calificación
entero: a
real: suma, promedio
Inicio
suma=0
Para a=0 hasta 19 hacer
Imprimir (“introduzca la calificación N”, a+1)
Leer(calificación[a])
suma = suma + calificación[a]
Fin Para
promedio = suma/20
Imprimir (“Promedio = ”, promedio )
Imprimir (“Las calificaciones menores al promedio son: ”)
Para a=0 hasta 19 hacer
Si (calificación[a] < promedio) hacer
Imprimir (“calificación N”, a+1)
Fin Si
Fin Para
Fin
4. Escribir un algoritmo que
lea 10 calificaciones de 5 estudiantes el cual debe ser almacenado con su
nombre. Luego calcule e imprima el promedio de cada estudiante con su
respectiva letra (A,B,C,D o F) indicando cual obtuvo mejor puntaje
Algoritmo <calificaciones
5 estudiantes>
tipo
arreglo [0-9] de tipo real: lista
tipo
arreglo [0-4] de tipo cadena: nombre
variables
lista: notas1, notas2, notas3, notas4, notas5
nombre: estudiante
entero:
a, b, mPuntaje
real: suma, promedio, p1, p2, p3, p4, p5,
altoPuntaje
cadena: letra
Inicio
Para a=0 hasta 4 hacer
Imprimir (“introduzca el nombre del estudiante
N”, a+1)
Leer(estudiante[a])
Fin Para
Para a=0 hasta 4 hacer
Para b=0 hasta 9 hacer
Imprimir (“Introduzca la
calificación N”, b+1, “del estudiante ”, estudiante[a])
Si
(a = 0) hacer
Leer (notas1[b])
Fin Si
Si (a = 1) hacer
Leer (notas2[b])
Fin Si
Si (a = 2) hacer
Leer (notas3[b])
Fin Si
Si (a = 3) hacer
Leer (notas4[b])
Fin Si
Si (a = 4) hacer
Leer (notas5[b])
Fin Si
Fin Para
Fin Para
Para a=0 hasta 4 hacer
suma=0
Para b=0 hasta 9 hacer
Si (a = 0) hacer
suma
= suma + notas1[b]
Fin Si
Si (a = 1) hacer
suma = suma + notas2[b]
Fin Si
Si (a = 2) hacer
suma = suma +
notas3[b]
Fin Si
Si (a = 3) hacer
suma = suma +
notas4[b]
Fin Si
Si (a = 4) hacer
suma = suma +
notas5[b]
Fin Si
Fin Para
promedio = suma/10
Si
(a = 0) hacer
p1 = promedio
altoPuntaje = p1
mPuntaje = 0
Fin Si
Si (a = 1) hacer
p2 = promedio
Si (altoPuntaje <
p2) hacer
altoPuntaje = p2
mPuntaje = 1
Fin Si
Fin Si
Si (a = 2) hacer
p3 = promedio
Si (altoPuntaje <
p3) hacer
altoPuntaje = p3
mPuntaje = 2
Fin Si
Si (a = 3) hacer
p4 = promedio
Si (altoPuntaje <
p4) hacer
altoPuntaje = p4
mPuntaje = 3
Fin Si
Si (a = 4) hacer
p5 = promedio
Si (altoPuntaje <
p5) hacer
altoPuntaje = p5
mPuntaje = 4
Fin Si
letra = “F”
Si (promedio >=61) hacer
letra = “D”
Fin Si
Si (promedio >=71) hacer
letra = “C”
Fin Si
Si (promedio >=81) hacer
letra = “B”
Fin Si
Si (promedio >=91) hacer
letra = “A”
Fin Si
Imprimir (“Estudiante: ”, estudiante[a],
“Promedio: ”, promedio, “Calificación: ”, letra)
Fin Para
Imprimir(“El estudiante con el mejor puntaje es: ”,
estudiante[mPuntaje])
Fin
5. Escribir un algoritmo que
lea 20 ventas mensuales de 4 vendedores el cual debe ser almacenado en un
arreglo. Luego calcule e imprima el total de las ventas de cada vendedor e
identifique cual obtuvo mayor venta.
Algoritmo <4 vendedores>
tipo
arreglo [0-79] de tipo real: lista
variables
lista: ventasTotales
entero: a, b, c, mVenta
real: suma, altaVenta, promedio
Inicio
c=0
Para a=0 hasta 3 hacer
Para b=0 hasta 19 hacer
Imprimir
(“introduzca la venta N”, b+1, “del vendedor ”, a+1)
Leer(ventasTotales[c])
c
= c + 1
Fin Para
Fin Para
c=0
Para a=0 hasta 3 hacer
suma = 0
Para b=0 hasta 19 hacer
suma = suma + ventasTotales[c]
c = c + 1
Fin Para
Si (a = 0) hacer
ventas1 = suma
altaVenta = ventas1
mVenta = 0
Fin Si
Si (a = 1) hacer
Si (altaVenta <
suma) hacer
altaVenta
= suma
mVenta = 1
Fin Si
Fin Si
Si (a = 2) hacer
Si (altaVenta <
suma) hacer
altaVenta
= suma
mVenta = 2
Fin Si
Fin Si
Si (a = 3) hacer
Si (altaVenta <
suma) hacer
altaVenta
= suma
mVenta = 3
Fin Si
Fin Si
Imprimir (“El total de ventas del vendedor N”,
a+1, “es: ”, suma)
Fin Para
Imprimir (“El vendedor con más ventas es el vendedor N”,
mVenta+1)
Fin
6. Escribir un algoritmo para
la impresión ordenada de una factura. El mismo puede leer hasta un máximo de 20
productos cada uno con su nombre y precio. Se desea que en la impresión
aparezca en forma ordenada desde el precio más bajo hasta el más alto; además,
del subtotal, impuesto y total a pagar.
Algoritmo <precio y
nombre>
tipo
arreglo [0-19] de tipo real: lista
tipo
arreglo [0-19] de tipo cadena: nombre
variables
lista: costo
nombre: nom
entero: a, b, c
real: precioTemp, subtotal, impuesto, total
cadena: resp, productoTemp
Inicio
a=0
Hacer
Imprimir (“introduzca el
nombre del producto N”, a+1)
Leer(nom[a])
Imprimir (“introduzca el
precio del producto N”, a+1)
Leer(costo[a])
Imprimir(“Desea introducir
otro producto? s/n”)
Leer(resp)
a = a+1
Mientras (resp = “s”)
a = a - 1
Para b=0 hasta a hacer
Para c=0 hasta a hacer
Si(c >= b) hacer
Si (costo[b] != costo[c])
hacer
Si(costo[b]
> costo[c]) hacer
precioTemp
= costo[b]
productoTemp
= nom[b]
costo[b]
= costo[c]
nom[b]
= nom[c]
costo[c]
= precioTemp
nom[c]
= productoTemp
Fin Si
Fin Si
Fin Si
Fin Para
Fin Para
subtotal = 0
Para b=0 hasta a hacer
Imprimir(nom[b], “ precio: ”, costo[b])
subtotal = subtotal + costo[b]
Fin Para
Imprimir(“Subtotal: ”, subtotal)
impuesto = subtotal * 0.07
Imprimir(“Impuesto: ”, impuesto)
total = subtotal + impuesto
Imprimir(“Total a pagar: ”, total)
Fin
Arreglos Multidimensionales
1.
Escribir un algoritmo que
lea 20 calificaciones de 10 alumnos. El algoritmo debe imprimir cada alumno con
su nota final.
Nota:
primero debe cargar el arreglo y después hacer los cálculos
Algoritmo <20
calificaciones 10 alumnos>
tipo
arreglo [0-9][0-19] de tipo real: lista
tipo
arreglo [0-9] de tipo real: promedio
variables
lista: alumNotas
promedio: notaFinal
entero: a, b
real: calificación , suma
Inicio
Para a=0 hasta 9 hacer
Para b=0 hasta 19 hacer
Imprimir (“introduzca la calificación
N”, b+1, “del alumno”, a+1)
Leer(alumNotas[a][b])
Fin Para
Fin Para
Para a=0 hasta 9 hacer
suma = 0
Para b=0 hasta 19 hacer
suma = suma + alumNotas[a][b]
Fin Para
Si (a = 0) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
1) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
2) hacer
notaFinal[a] = suma/10
Fin Si
Si (a =
3) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
4) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
5) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
6) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
7) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
8) hacer
notaFinal[a]
= suma/10
Fin Si
Si (a =
9) hacer
notaFinal[a]
= suma/10
Fin Si
Fin Para
Para a=0 hasta 9 hacer
Imprimir(“Alumno
N”, a+1, “ nota final: ”, notaFinal[a])
Fin Para
Fin









No hay comentarios:
Publicar un comentario