Prácticas

Práctica N°1

Resultado de imagen para utp panamaUniversidad 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


Práctica N°2

Resultado de imagen para utp panamaUniversidad 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.


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

3. 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.


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


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


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


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



7. Elabore un algoritmo que lea tres números diferentes, A, B, C, e imprime los valores máximo y mínimo.


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


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


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.


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





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.


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


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.


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