Pseudocódigo - Bucles Anidados y Subprogramas

--------------------------------------------------------------------------
Bucles anidados y subprogramas
--------------------------------------------------------------------------


16.-Imprimir diez veces la serie de números del 1 al 10.

PROGRAMA diez
ENTORNO:
   serie <- 0
ALGORITMO:
   Borrar_pantalla( )
   MIENTRAS serie <= 10 HACER
      numero <- 1
      MIENTRAS numero <= 10 HACER
         ESCRIBIR numero
         numero <- numero + 1
      FINMIENTRAS
      serie <- serie + 1
   FINMIENTRAS
FINPROGRAMA

--------------------------------------------------------------------------

17.-Imprimir, contar y sumar los múltiplos de 2 que hay entre una serie de
números, tal que el segundo sea mayor o igual que el primero.


PROGRAMA multiplo2
ENTORNO:
   res <- "S"
ALGORITMO:
   Borrar_pantalla( )
   MIENTRAS res = "S" HACER
      c <- 0
      sum <- 0
      num1 <- 0
      num2 <- -999
      ESCRIBIR "N£mero: "
      LEER num1
      ESCRIBIR "N£mero mayor que el anterior"
      MIENTRAS num1 >= num2 HACER
         LEER num2
      FINMIENTRAS
      num1 <- num1 + 1
      MIENTRAS num1 <= num2 - 1 HACER
         SI num1 = int( num1 / 2 ) * 2 ENTONCES
            ESCRIBIR num1
            c <- c + 1
            sum <- sum + num1
         FINSI
         num1 <- num1 + 1
      FINMIENTRAS
      ESCRIBIR "N£mero de m£ltiplos de 2: "
      ESCRIBIR c
      ESCRIBIR "Su suma es: "
      ESCRIBIR sum
      res <- Espacios( 1 )
      MIENTRAS res <> "S" Y res <> "N" HACER
         ESCRIBIR "Otra serie de n£meros (S/N): "
         LEER res
         res <- Convertir_may£sculas( res )
      FINMIENTRAS
   FINMIENTRAS
FINPROGRAMA

--------------------------------------------------------------------------

18.-Hacer un pseudocódigo que cuente las veces que aparece una determinada
letra en una frase que introduciremos por teclado.

PROGRAMA letra
ENTORNO:
   frase <- Espacios( 30 )
   letra <- Espacios( 1 )
   longitud <- 0
   a <- 0
   res <- "S"
ALGORITMO:
   MIENTRAS res = "S" HACER
      Borrar_pantalla( )
      ESCRIBIR "Introduce una frase: "
      LEER frase
      longitud <- Hallar_longitud( frase )
      i <- 1
      ESCRIBIR "Letra a buscar: "
      LEER letra
      MIENTRAS i <= longitud HACER
         SI letra = Caracter( frase, i, 1 ) ENTONCES
            a <- a + 1
         FINSI
         i <- i + 1
      FINMIENTRAS
      Borrar_pantalla( )
      ESCRIBIR "El n£mero de veces que aparece la letra "
      ESCRIBIR letra
      ESCRIBIR " en la frase "
      ESCRIBIR frase
      ESCRIBIR " es de "
      ESCRIBIR a
      res <- Espacios( 1 )
      MIENTRAS res <> "S" Y res <> "N" HACER
         ESCRIBIR "Desea introducir m&aacute;s frases (S/N): "
         LEER res
         res <- Convertir_may£sculas( res )
      FINMIENTRAS
   FINMIENTRAS
FINPROGRAMA

--------------------------------------------------------------------------

19.-Hacer un pseudocódigo que simule el funcionamiento de un reloj digital y

que permita ponerlo en hora.

PROGRAMA reloj
ENTORNO:
   horas <- 0
   minutos <- 0
   segundos <- 0
   res <- "S"
ALGORITMO:
   Borrar_pantalla( )
   ESCRIBIR "Horas: "
   LEER horas
   ESCRIBIR "Minutos: "
   LEER minutos
   ESCRIBIR "Segundos: "
   LEER segundos
   MIENTRAS res = "S" HACER
      MIENTRAS horas < 24 HACER
         MIENTRAS minutos < 60 HACER
            MIENTRAS segundos < 60 HACER
               ESCRIBIR horas
               ESCRIBIR minutos
               ESCRIBIR segundos
               segundos <- segundos + 1
            FINMIENTRAS
            minutos <- minutos + 1
            segundos <- 0
         FINMIENTRAS
         horas <- horas + 1
         minutos <- 0
      FINMIENTRAS
      horas <- 0
   FINMIENTRAS
FINPROGRAMA

--------------------------------------------------------------------------

20.-Calcular el factorial de un numero, mediante subprogramas.

PROGRAMA factorial
ENTORNO:
   res <- "S"
ALGORITMO:
   MIENTRAS res = "S" HACER
      Borrar_pantalla( )
      factorial <- 1
      ESCRIBIR "N£mero: "
      LEER numero
      SI numero < 0 ENTONCES
         ESCRIBIR "No tiene factorial"
      SINO
         HACER Calculos
      FINSI
      HACER Mas
   FINMIENTRAS
FINPROGRAMA
------------------------------
SUBPROGRAMA Calculos
   MIENTRAS numero > 1 HACER
      factorial <- factorial * numero
      numero <- numero - 1
   FINMIENTRAS
   HACER Imprimir
FINSUBPROGRAMA
------------------------------
SUBPROGRAMA Mas
   res <- " "
   MIENTRAS res <> "S" Y res <> "N" HACER
      ESCRIBIR "Desea calcular m&aacute;s factoriales (S/N): "
      LEER res
      res <- Convertir_may£sculas( res )
   FINMIENTRAS
FINSUBPROGRAMA
------------------------------
SUBPROGRAMA Imprimir
   ESCRIBIR "Su factorial es: "
   ESCRIBIR factorial
FINSUBPROGRAMA


--------------------------------------------------------------------------

21.-Hacer un programa que calcule independientemente la suma de los pares y
los impares de los números entre 1 y 1000, utilizando un switch.

PROGRAMA suma
ENTORNO:
   par <- 0
   impar <- 0
   sw <- 0
   i <- 1
ALGORITMO:
   Borrar_pantalla( )
   MIENTRAS i <= 1000 HACER
      SI sw = 0 ENTONCES
         impar <- impar + i
         sw <- 1
      SINO
         par <- par + i
         sw <- 0
      FINSI
      i <- i + 1
   FINMIENTRAS
   ESCRIBIR "La suma de los pares es: "
   ESCRIBIR par
   ESCRIBIR "La suma de los impares es: "
   ESCRIBIR impar
FINPROGRAMA

Déjame tus dudas y comentarios: Conversion Conversion Emoticon Emoticon

Entradas Populares