Pseudocódigo - Ficheros

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

Ficheros

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

43.-Hacer un programa que nos permita dar altas en el fichero secuencial
DATOS.DAT, cuyos campos son: DNI, NOMBRE, APELLIDOS, DIRECCION y
PROVINCIA.



PROGRAMA altas
ENTORNO:
   res <- "S"
ALGORITMO:
   MIENTRAS res = "S" HACER
      ABRIR "DATOS.DAT"
      sw <- 0
      num <- 0
      Borrar_pantalla( )
      EN 5,10 ESCRIBIR "D.N.I.: "
      EN 5,18 LEER num
      MIENTRAS NO Eof( ) Y sw = 0 HACER
         SI dni = num ENTONCES
            EN 10,10 ESCRIBIR "Alta duplicada"
            EN 15,10 ESCRIBIR "Pulse INTRO para continuar"
            Pausa( )
            sw <- 1
         SINO
            Siguiente_registro( )
         FINSI
      FINMIENTRAS
      SI sw = 0 ENTONCES
         EN 7,5 ESCRIBIR "Nombre: "
         EN 9,5 ESCRIBIR "Apellidos: "
         EN 11,5 ESCRIBIR "Direcci&oacute;n: "
         EN 13,5 ESCRIBIR "Provincia: "
         EN 7,16 LEER nombre
         EN 9,16 LEER apellidos
         EN 11,16 LEER direccion
         EN 13,16 LEER provincia
         dni <- num
         Final_fichero( )
         Escribir_registro( )
      FINSI
      CERRAR "DATOS.DAT"
      res <- Espacios( 1 )
      HACER Mas
   FINMIENTRAS
FINPROGRAMA
------------------------------
SUBPROGRAMA Mas
   MIENTRAS res <> "S" Y res <> "N" HACER
      ESCRIBIR "Desea m s altas (S/N): "
      LEER res
      res <- Convertir_mayusculas( res )
   FINMIENTRAS
FINSUBPROGRAMA

--------------------------------------------------------------------------
44.-Hacer un programa que nos permita dar bajas en el fichero DATOS.DAT.

PROGRAMA bajas
ENTORNO:
   res <- "S"
ALGORITMO:
   MIENTRAS res = "S" HACER
      ABRIR "DATOS.DAT"
      sw <- 0
      Borrar_pantalla( )
      EN 5,10 ESCRIBIR "D.N.I.: "
      EN 5,18 LEER num
      MIENTRAS NO Eof( ) HACER
         SI dni = num ENTONCES
            sw <- 1
         SINO
            ABRIR "AUX.DAT"
            Final_fichero( )
            Escribir_registro( )
         FINSI
         ABRIR "DATOS.DAT"
         Siguiente_registro( )
      FINMIENTRAS
      CERRAR "DATOS.DAT"
      CERRAR "AUX.DAT"
      SI sw = 0 ENTONCES
         EN 12,10 ESCRIBIR "Baja inexistente"
         EN 16,10 ESCRIBIR "Pulse INTRO para continuar"
         BORRAR "AUX.DAT"
         Pausa( )
      SINO
         BORRAR "DATOS.DAT"
         RENOMBRAR "AUX.DAT" COMO "DATOS.DAT"
      FINSI
      res = Espacios( 1 )
      HACER Mas
   FINMIENTRAS
FINPROGRAMA
------------------------------
SUBPROGRAMA Mas
   MIENTRAS res <> "S" Y res <> "N" HACER
      ESCRIBIR "Desea m s bajas (S/N): "
      LEER res
      res <- Convertir_mayusculas( res )
   FINMIENTRAS
FINSUBPROGRAMA

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

45.-Dado el fichero secuencial DATOS.DAT, realizar un programa que nos permita
realizar modificaciones cuantas veces deseemos.

PROGRAMA modifica
ENTORNO:
   res <- "S"
ALGORITMO:
   MIENTRAS res = "S" HACER
      ABRIR "DATOS.DAT"
      sw <- 0
      num <- 0
      nom <- Espacios( 15 )
      ape <- Espacios( 30 )
      dir <- Espacios( 20 )
      pro <- Espacios( 20 )
      Borrar_pantalla( )
      EN 5,10 ESCRIBIR "D.N.I.: "
      EN 5,18 LEER num
      MIENTRAS NO Eof( ) Y sw = 0 HACER
         SI dni = num ENTONCES
            HACER Imprimir
            HACER Cambios
            sw <- 1
         SINO
            Siguiente_registro( )
         FINSI
      FINMIENTRAS
      SI sw = 0 ENTONCES
         HACER Detener
      FINSI
      CERRAR "DATOS.DAT"
      res <- Espacios( 1 )
      HACER Mas
   FINMIENTRAS
FINPROGRAMA
------------------------------
SUBPROGRAMA Mas
   MIENTRAS res <> "S" Y res <> "N" HACER
      ESCRIBIR "Desea m s cambios (S/N): "
      LEER res
      res <- Convertir_mayusculas( res )
   FINMIENTRAS
FINSUBPROGRAMA
------------------------------
SUBPROGRAMA Imprimir
   EN 7,5 ESCRIBIR "Nombre: "
   EN 9,5 ESCRIBIR "Apellidos: "
   EN 11,5 ESCRIBIR "Direcci&oacute;n: "
   EN 13,5 ESCRIBIR "Provincia: "
   EN 7,16 LEER nombre
   EN 9,16 LEER apellidos
   EN 11,16 LEER direccion
   EN 13,16 LEER provincia
FINSUBPROGRAMA
------------------------------
SUBPROGRAMA Cambios
   nom <- nombre
   ape <- apellidos
   dir <- direccion
   pro <- provincia
   EN 7,16 LEER nom
   EN 9,16 LEER ape
   EN 11,16 LEER dir
   EN 13,16 LEER pro
   nombre <- nom
   apellidos <- ape
   direccion <- dir
   provincia <- pro
   Escribir_registro( )
FINSUBPROGRAMA
------------------------------
SUBPROGRAMA Detener
   EN 10,20 ESCRIBIR "Registro inexistente"
   EN 20,18 ESCRIBIR "Pulse INTRO para continuar"
   Pausa( )
FINSUBPROGRAMA



Deja Tus Comentarios!!

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

Entradas Populares