Posted by : Unknown jueves, 13 de junio de 2013

Pseudocódigo - Ejercicios resueltos de Funciones

Ejercicios de repaso 

1)  Escribir un algoritmo que lea “N” números y muestre el promedio de dichos números.

Solución

A) Hacer Mientras Que Condición………………..Fin Mientras
Inicio
      Contador = 0; Suma = 0
            Leer (N)
                  Hacer Mientras Que Contador <= N
                         Leer (Numero)
                                Suma = Suma + Numero
                                       Contador = Contador + 1
                 Fin Mientras
                             Promedio = Suma/N
                                       Mostrar (Promedio)
Fin

B) Repetir…………………….Hasta Que Condición

Inicio
       Repetir
              Contador = 0; Suma = 0
                  Leer (N, Numero)
                        Suma = Suma + Numero
                             Contador = Contador + 1
              Hasta Que Contador <= N
Promedio = Suma/N
    Mostrar (Promedio)
Fin

C) Para Variable = Valor Inicial Hasta Valor Final ........................... Fin Para

Inicio
      Contador=0; Suma=0
            Leer(N)
                Para Contador=0 Hasta N
                       Leer (Numero)
                            Suma = Suma + Numero
                 Fin Para
                       Promedio = Suma/N
                                Mostrar (Promedio)
Fin

2) Escribir un algoritmo que lea una serie de número (El último de la serie es 99) y muestre el valor del mayor y del menor número leído.

A) Repetir………………Hasta Que Condición
Inicio
        Repetir
                Leer (SerieDeNúmeros)
                     Si Switch ≠ 0 Entonces
                            Menor = SerieDeNumeros
                            Mayor = SerieDeNumeros
                            Switch = 1
                    Sí No
                        Si SerieDeNumros > Mayor Entonces
                              Mayor = SerieDeNumeros
                   Sí No
                       Si SerieDeNumeros < Menor Entonces
                            Menor = SerieDeNumeros
                   Fin Sí
               Fin Sí
           Fin Sí
        Hasta Que SerieDeNumeros = 99
             Mostrar (Mayor, Menor)
Fin                       
      
3) Una solicitante de trabajo presenta cinco prueba distintas (La puntuación máxima es 10). Se clasifican de la siguiente forma: “CONTRATADO”, si por lo menos tienes dos pruebas con 9. “ARCHIVAR” si no se contrata pero tiene todas las pruebas con al menos 7. “RECHAZAR” cuando ni se contrata ni se archiva. Escribir un algoritmo que tenga como entrada el nombre y las clasificaciones del solicitante y muestre el nombre y la clasificación, así como el total de puntos obtenidos en todas las pruebas.

A) Para Variable = Valor Inicial Hasta Valor Final ................................ Fin Para
  
Inicio
     SumaContratado = 0
               SumaArchivar = 0
                        Suma = 0
     Leer (Nombre)
             Para Indice = 1 Hasta 5
                     Leer (Nota)
                           Si Nota  ≥ 9 Entonces
                                        SumaContratado = SumaContratado + 1
                                        SumaArchivado = SumaArchivado + 1
                           Si No Si  Nota7 Entonces
                                    SumaArchivado = SumaArchivado + 1
                              Fin Si
                                   Suma = Suma  + Nota
                 Fin Para
                        Mostrar (Nombre)
                              Si SumaContratado  ≥ 2 Entonces
                                       Mostrar (“CONTRATADO”)
                               Si No Si SumaArchivado = 5 Entonces
                                       Mostrar (“ARCHIVAR”)
                                Si No
                                     Mostrar (“RECHAZAR”)
                                Fin Si
                                      Mostrar (Suma)
Fin
4) En una universidad los cargos por inscripción son de 7000 por unidad/crédito, con un máximo de 105.000 bolívares, independientemente de la cantidad de unidades/créditos tomadas. Así un estudiante que tome 12 unidad/crédito pagaría Bs. 84.000, mientras que el que tome 21 pagaría Bs. 105.000. escribir un algoritmo que tenga como entrada el número de unidades/crédito a cursar de 10 estudiantes y como salida el monto a pagar por concepto de inscripción de cada uno de ellos.

Solución

A) Para Variable = Valor Inicial Hasta Valor Final ............................ Fin Para
Inicio
      Para Indice=1 Hasta 10
              Leer (UnidadCredito)
                    Monto = UnidadCredito * 7000
                           Si Monto > 105000 Entonces
                                  Monto = 105000
                           Fin Si
                               Mostrar (“Estudiante ”+Indice+” Monto ”+Monto)
       Fin Para
Fin
Ejercicios de  Funciones

5) Escribir un programa (algoritmo) que A) Lea tres números enteros. B) Invoque una función denominada MEDIA que calcule y regrese al programa principal el promedio de los números leídos y C) Muestre el valor del promedio obtenido.

Solución
Función MEDIA(A, B, C)
          MEDIA = (A + B + C) / 3
Fin Función
      Inicio
              Leer (X, Y, Z)
                     Promedio = MEDIA(X, Y, Z)
                           Mostrar (Promedio)
Fin
6) Hacer un programa (algoritmo) que: A) Lea tres números enteros. B) Invoque una función denominada MENOR que determine y regrese al programa principal el menor de los tres números y  C) Muestre los números leídos y el menor de ellos.

Solución
Función MENOR (A, B, C)
       Si A < B AND A < C Entonces
             MENOR = “El número menor es ”+A
       Si No Si B < A AND B < C Entonces
              MENOR = “El números menor es ”+B
        Si No
            MENOR = “El menor es ”+C
        Fin Si
Fin Función
         Inicio
                  Leer (X, Y, Z)
                        NumeroMenor = MENOR (X, Y, Z)
                                Mostrar (NumeroMenor)
          Fin
7) Escribir un programa (algoritmo) que lea dos números cualesquiera e invoque una función denominada MULTIPLO que determine si alguno de los números leídos el múltiplo del otro. El algoritmo deberá mostrar un mensaje que salga el resultado de la comprobación.

Solución
Función MULTIPLO (A, B)
         Si A MOD B = 0 OR B MOD A = 0 Entonces
               MULTIPLO = “Si es múltiplo”
          Si No
               MULTIPLO = “No es múltiplo”
           Fin Si
Fin Función
         Inicio
                Leer (X, Y)
                       Respuesta = MULTIPLO (X, Y)
                              Mostrar (Respuesta)
          Fin
8) Escribir un programa (algoritmo) que: A) Lea un número entero positivo de cuatro (4) dígitos. B) Invoque una función denominada ORDEN que invierta el orden de dichos dígitos (Ejemplo: 1357 => 7531) y C) Muestre el número leído y el número invertido.

Solución
Función ORDEN(Número)
      C1 = Número \ 1000
      Número = Número MOD 1000
     C2 = Número \ 100
     C3 = Número \ 10
      Número = Número MOD 10
      ORDEN = Número * 1000 + C3*100 + C2*10 + C1
Fin Función
           Inicio
                   Leer (Numeritos)
                        Respuesta = ORDEN (Numeritos)
                                   Mostrar (Respuesta)
             Fin
9) Escribir un programa (algoritmo) que calcule y muestre las raíces de una ecuación cuadrática. El programa deberá apoyarse en: un procedimiento para leer los coeficientes de la ecuación, una función, para determinar si las raíces son números reales o números complejos y otro procedimiento para calcular las raíces, en caso de que las mismas sean reales.

Solución
Procedimiento OBTENER (A, B, C)
       Leer (A, B, C)
Fin Procedimiento

Función REAL (A, B, C)
     REAL = Verdad
          Si B**2-4*A*C < 0 Entonces
                   REAL = Falso
          Fin Si
Fin Función

Procedimiento RAICES (A, B, C, X1, X2)
         X1 = (-B+SQRT(B**2-4*A*C)) / (2*A)
         X2 = (-B-SQRT(B**2-4*A*C)) / (2*A)
Fin Procedimiento

Inicio
      OBTENER (A, B, C)
              Si REAL (A, B, C) Entonces
                    RAICES (A, B, C, X1, X2)
                             Mostrar (X1, X2)
                Si No
                       Mostrar (“Raíces complejas”)
               Fin Si
Fin
10) Diseñar una función FACTORIAL que calcule el factorial de una número entero.

Solución
Función FACTORIAL (Número)
        Factori = 1
              Para K = 1 Hasta Número
                      Factori=Factori*K
               Fin Para
Fin Función

Inicio
     Leer (Numerito)
            Respuesta = FACTORIAL (Numerito)
                 Mostrar (Respuesta)
Fin
11) Escribir un programa (algoritmo) que: A) Lea un número entero positivo. B) Invoque una función denominada PRIMO que determine si el número leído es un número primo y C) Muestre el número leído y un mensaje que diga si el número es primo o no.

Solución
Función PRIMO (N)
       PRIMO = Verdad
       M=1
            Para K=2 Hasta N-1
                   Si N MOD K = 0 Entonces
                          M = 0
                    Fin Si
             Fin Para 
                    Si M <> 1 Entonces
                             PRIMO = Falso
                     Fin Si
Fin Función
Inicio
     Leer (N)
              Si PRIMO (N) Entonces
                     Mostrar (N, “ Es primo”)
              Si No
                  Mostrar (N, “ No es primo”)
              Fin Si
Fin

Ejercicio, que no tiene que ver con funciones

12) Dados tres números enteros positivos, diseñar un algoritmo que determine y muestre el mínimo común múltiplo (M.C.M) y el máximo común divisor (M.C.D) de los números dados.

Solución
Inicio
       Leer (A, B, C)
             Si A > B AND A < C Entonces
                     Mayor = A
              Si No Si B > A AND B > C Entonces
                     Mayor = B
              Si No
                  Mayor = C
              Fin Si
                   MCM = 0

       Repetir
Si Mayor MOD A = 0 AND Mayor MOD B = 0 AND Mayor MOD C = 0 Entonces
        MCM = Mayor
Sí No
    Mayor = Mayor + 1
Fin Si
       Hasta Que MCM <> 0
              Mostrar (MCM)
                  Si A < B AND A < C Entonces
                          Menor = A
                   Si No Si B < A AND B < C Entonces
                        Menor = B
                   Si No
                         Menor = B
                    Fin Si
                          MCD = 0
          Repetir
                 Si Menor MOD A = 0 AND Menor MOD B = 0 AND Menor  MOD C = 0 Entonces
                          MCD = Menor
                                  Menor = Menor – 1
                 Fin Si
          Hasta Que MCD <> 0
                     Mostrar (MCD)
Fin

Ejercicios con funciones

13) Hacer un programa (algoritmo) que A) Lea cuatro (4) números, B) Invoque dos funciones, una para determinar el máximo común divisor (MCD) y la otra para determinar el mínimo común múltiplo (MCM) de los números leídos y C) Muestre los números leídos y el valor de MCD  y del MCM de los mismos.

Solución
Función MCM (A, B, C, D)
        Si A > B AND A > C AND A > D Entonces
               Mayor = A
        Si No Si B > A AND B > C AND B > D Entonces
               Mayor = B
        Si No Si C > A AND C > B AND C > D Entonces
               Mayor = C
        Si No
               Mayor = D
        Fin Si
               MCM = 0
         Repetir
Si Mayor MOD A=0 AND Mayor MOD B=0 AND Mayor MOD C=0 AND Mayor MOD D=0 Entonces

       MCM = Mayor

Si No
       Mayor = Mayor + 1
Fin Si
        Hasta Que MCM <> 0
Fin Función

Función MCD (A, B, C, D)
           Si A < B AND A < C AND A < D Entonces
               Menor = A
        Si No Si B < A AND B < C AND B < D Entonces
               Menor = B
        Si No Si C < A AND C < B AND C < D Entonces
               Menor = C
        Si No
               Menor = D
        Fin Si
               MCD = 0
         Repetir
Si Mayor MOD A=0 AND Mayor MOD B=0 AND Mayor MOD C=0 AND Mayor MOD D=0 Entonces

       MCD= Menor

Si No
       Menor = Menor - 1
Fin Si
        Hasta Que MCD <> 0
Fin Función

Inicio
      Leer (W, X, Y, Z)
               Respuesta = (MCM (W, X, Y, Z), MCD (W, X, Y, Z))
                    Mostrar (Respuesta)
Fin
14) Un entero n se llama “perfecto” si n es igual  a la suma de todos los divisores de él. Por ejemplo, 6 es perfecto, porque 6=1+2+3. Escribe un algoritmo que muestre los tres primeros números perfectos. Diseñe su algoritmo de forma que el cuerpo principal contenga una estructura repetitiva “REPETIR – HASTA QUE” en la cual se invoca una función booleana “ES_PERFECTO”

Solución
Función ES_PERFECTO(N)
     Suma = 0
           ES_PERFECTO = Falso
                Para i=1 Hasta N1
                     Si N MOD i = 0 Entonces
                           Suma = Suma + i
                      Fin Si
                Fin Para
                      Si Suma = N Entonces
                              ES_PERFECTO = Verdad
                      Fin Si
Fin Función

Inicio
        Contador = 0; Perfecto = 1
              Repetir
                    Si ES_PERFECTO (Perfecto) Entonces
                            Contador = Contador + 1
                                    Mostrar (Perfecto)
                     Fin Si
                           Perfecto = Perfecto + 1
              Hasta Que Contador = 3
Fin
15) Diseñar una función que calcule el n-ésimo término de la serie Finonacci. La serie es la siguiente: 1, 1, 2, 3, 5, 8, 13, 21, 34…..

Solución
Función FIBONACCI (N)
     A = 1; B = 1; C=1
            Para X = 3 Hasta N
                    C = A + B
                    A = B
                    B = C
            Fin Para
                 FINONACCI = C
Fin Función

           Inicio
                 Leer (N)
                        Resultado = FIBONACCI (N)
                              Mostrar (Resultado)
            Fin


{ 5 comentarios ... read them below or Comment }

  1. Buen archivo, gracias :)

    ResponderEliminar
  2. mmm esta bien tu trabajo pero por fa podrias ser mas especifico en la 12 grax

    ResponderEliminar
  3. me puedes ayudar con uno para el jueves

    Se desea controlar la inscripción en una universidad, para ello se utiliza la siguiente información

    Carrera: *Ingeneria
    *Medicina
    *Educación

    Condiciones *Aceptado
    *Lista de Espera
    *Rechazado

    Desarrollar un algoritmo que muestre:

    A) Cuantos alumnos se inscribieron por carrera
    B) Cuantos Alumnos fueron aceptados por carrera
    C) Cuantos Alumnos se encuentran en lista de espera
    D) Cuantos Alumnos en general se encuentran en lista de espera

    ResponderEliminar

Werneriabits - La era de la información

Busqueda

Flakreath Chat

El Magistrado. Con la tecnología de Blogger.

Síguenos en Facebook

Suscribite vía Email:

Introduce tu Email:

- Copyright © WerneriaBits - La era de la información - werneriabits.com -