Page 1

LÓGICA COMPUTACIONAL Y PROGRAMACIÓN

M anu al de ejercicios y prácticas (Versión para fase inicial)

C O N L A C OL AB OR AC IÓ N D E L uis Gabrie l M ondragó n To rres

1


LÓGICA COMPUTACIONAL Y PROGRAMACIÓN Manual de ejercicios y prácticas 2000. Secretaría de Educación Pública/ Dirección General del Bachillerato

2


ÍNDICE

Presentación............................................................................................................................................................

5

Sección de ejercicios Ejercicio 1.................................................................................................................................................................. Ejercicio 2................................................................................................................................................................. Ejercicio 3.................................................................................................................................................................. Ejercicio 4.................................................................................................................................................................. Ejercicio 5.................................................................................................................................................................. Ejercicio 6.................................................................................................................................................................. Ejercicio 7.................................................................................................................................................................. Ejercicio 8.................................................................................................................................................................. Ejercicio 9.................................................................................................................................................................. Ejercicio 10................................................................................................................................................................ Ejercicio 11................................................................................................................................................................ Ejercicio 12................................................................................................................................................................ Ejercicio 13................................................................................................................................................................ Ejercicio 14................................................................................................................................................................ Ejercicio 15................................................................................................................................................................ Ejercicio 16................................................................................................................................................................ Ejercicio 17................................................................................................................................................................ Ejercicio 18................................................................................................................................................................ Ejercicio 19................................................................................................................................................................ Ejercicio 20................................................................................................................................................................ Ejercicio 21................................................................................................................................................................ Ejercicio 22................................................................................................................................................................ Ejercicio 23................................................................................................................................................................ Ejercicio 24................................................................................................................................................................ Ejercicio 25................................................................................................................................................................ Ejercicio 26................................................................................................................................................................ Ejercicio 27................................................................................................................................................................ Ejercicio 28................................................................................................................................................................ Ejercicio 29................................................................................................................................................................ Ejercicio 30................................................................................................................................................................ Ejercicio 31................................................................................................................................................................ Ejercicio 32................................................................................................................................................................ Ejercicio 33................................................................................................................................................................ Ejercicio 34................................................................................................................................................................ Ejercicio 35................................................................................................................................................................ Ejercicio 36................................................................................................................................................................ Ejercicio 37................................................................................................................................................................ Ejercicio 38................................................................................................................................................................

6 6 7 7 7 8 9 10 11 12 12 13 13 13 14 15 15 15 16 16 17 17 18 18 19 19 19 20 21 21 22 22 23 24 24 25 26 26

Sección de prácticas Práctica 1................................................................................................................................................................... Práctica 2................................................................................................................................................................... Práctica 3................................................................................................................................................................... Práctica 4................................................................................................................................................................... Práctica 5................................................................................................................................................................... Práctica 6................................................................................................................................................................... Práctica 7...................................................................................................................................................................

27 29 30 31 32 34 35

3


4


PRESENTACIÓN

LÓGICA COMPUTACIONAL Y PROGRAMACIÓN

La capacitación para el trabajo te brindará herramientas que te permitirán desarrollar procesos de trabajo en un área específica; asimismo, te generará una actitud positiva hacia el aspecto laboral y los valores humanos.

Es importante señalar que la Capacitación en Informática también te permitirá desarrollar aptitudes, habilidades y destrezas en procesos específicos del área, incorporando conocimientos teóricos-metodológicos. Este Manual de ejercicios y prácticas te apoya en el logro de los aprendizajes propuestos en la Guía de Estudios de lógica Computacional y Programación, ya que: -

Se presentan problemas sencillos en forma de ejercicios que consolidan los aprendizajes de un tema.

-

Se te presenta la oportunidad de aplicar tus conocimientos en la resolución de la parte faltante de la situación de aprendizaje planteada en la unidad I.

Es así como este manual se encuentra dividido en dos secciones, la sección de ejercicios y la sección de prácticas. No olvides que el desarrollo del manual te dará los elementos necesarios para resolver situaciones específicas de trabajo, muy similares a la situación de aprendizaje presentada.

5


SECCIÓN DE EJERCICIOS EJERCICIO 1 Problema: Conseguir un medicamento poco común en las farmacias cercanas a tu casa. Solución: Se presenta el algoritmo que se requiere en forma de una lista de pasos a seguir. 1. Fijarse en el nombre del medicamento a conseguir. 2. Caminar a la farmacia más cercana. 3. Acercarse al mostrador de la farmacia. 4. Solicitar al farmacéutico la medicina. 5. Si no tiene el medicamento, salir de la farmacia y repetir desde el paso 2. 6. Si tiene el medicamento, verificar que corresponda al solicitado. 7. Solicitar el costo. 8. Si se va a adquirir, pagarlo, si no ir al paso 9. 9. Salir de la farmacia. 10. Caminar a la casa.

a) Explica, ¿por qué se encuentran los pasos ordenados de esta forma? b) ¿Se apega la solución a la definición de algoritmo? Explica. c) Define otro algoritmo para el mismo problema. EJERCICIO 2 Problema: Proceso que sigue una secretaria para capturar una carta en un procesador de palabras en Windows 95, guardándola en un disco flexible de 3.5”. Solución: A continuación se presenta el algoritmo en forma de una lista de pasos a seguir. 1. Tener la carta a capturar. 2. Sentarse frente a la computadora. 3. Encender el monitor. 4. Encender el CPU. 5. Entrar a Windows. 6. Llamar la aplicación a utilizar para la captura. 7. Verificar formatos de página. 8. Capturar la carta en el editor. 9. Dar formato de párrafo y de caracteres en la carta. 10. Revisar ortografía. 11. Insertar un disco flexible de 3.5” en la unidad correspondiente. 12. Utilizar la opción de salvar archivo, de la aplicación. 13. Direccionar el archivo a la unidad del disco flexible de 3.5”. 14. Asignar un nombre al archivo de la carta. 15. Seleccionar la opción de aceptar dicho proceso. 6


16. Salir del documento. 17. Salir de la aplicación. 18. Salir de Windows. 19. Apagar CPU. 20. Apagar monitor.

a) ¿La lógica que se siguió para enlistar las actividades es correcta? ¿Por qué? b) Con base en la definición de algoritmo, revisa la solución propuesta y escribe tus observaciones. c) Realiza un algoritmo distinto que resuelva el mismo problema. EJERCICIO 3 Problema: Tomando en cuenta las soluciones de los ejercicios anteriores, elabora en tu cuaderno el algoritmo de las actividades de solicitud, búsqueda y facturación de una refacción, que debe realizar un vendedor de mostrador de una tienda de refacciones de automóviles. EJERCICIO 4 Problema: Desarrolla el algoritmo que describa la secuencia de pasos a seguir para resolver la situación de aprendizaje de la guía de estudio. EJERCICIO 5 Problema: En una tienda, a los artículos que tienen adherida una etiqueta verde se les aplica un 10% de descuento sobre su precio normal; si la etiqueta es roja, el descuento es del 20%; si el artículo no presenta etiqueta, entonces no hay descuento. Solución: A continuación te presentamos el diagrama que lo resuelve. Descripción del algoritmo que corresponde al cálculo de la cuenta de un cliente, utilizando un diagrama de flujo.

7


INICIO

NO ¿HAY CLIENTES? SÍ NO ¿TRAE ARTÍCULOS? SÍ RECIBIR ARTÍCULO

REVISAR ETIQUETA

¿ETIQUETA NORMAL?

NO

¿ETIQUETA VERDE?

APLICAR 10% DE DESCUENTO

APLICAR 20% DE DESCUENTO

NO

¿ETIQUETA ROJA?

NO

SUM AR AR TÍCULO AL TOTAL ACUMULADO

¿MÁS ARTÍCULOS?

NO SOLICITAR EL PAGO TOTAL

TERMINA

Ahora realiza la explicación del diagrama de flujo y su prueba de escritorio.

EJERCICIO 6 Problema: En el ejercicio 1 se presentó como algoritmo de solución, una lista de los pasos a realizar para encontrar un medicamento poco común en las farmacias cercanas a tu casa. A continuación se escribe el mismo algoritmo utilizando los diagramas de flujo.

8


Solución:

INICIO

FIJARSE EN EL NOMBRE DEL MEDICAMENTO

CAMINAR HACIA LA FARMACIA MÁS CERCANA

ACERCARSE AL MOSTRADOR DE LA FARMACIA

SOLICITAR EL MEDICAMENTO

¿HAY EL MEDICAMENTO?

NO

SÍ VERIFICAR EL MEDICAMENTO

SOLICITAR EL COSTO

¿SE ADQUIERE?

NO

SÍ PAGAR MEDICAMENTO

SALIR DE LA FARMACIA

CAMINAR A LA CASA

TERMINA

a) De los ejercicios 5 y 6, ¿los símbolos están usados correctamente? ¿Por qué? b) De los ejercicios 5 y 6, ¿la secuencia del diagrama de flujo es correcta? ¿Por qué? EJERCICIO 7 Problema: En la compañía de Zapatos “El patito” el administrador debe calcular el impuesto retenido a cada trabajador, utilizando como criterios los siguientes rangos: si un empleado gana entre 1,000 y 2,500 pesos, su impuesto es del 10%; si se encuentra entre los 2,501 y 5,000 pesos, el impuesto es del 15% y si se encuentra arriba de los 5,001 pesos, entonces su impuesto es del 20%. Describe el algoritmo que corresponde al cálculo de la retención de impuesto a cada empleado, utilizando un diagrama de flujo.

9


EJERCICIO 8 Problema: Del ejercicio 1, se presenta el Diagrama de Top-Down y los pseudocódigos de cada módulo para resolver la situación planteada con una metodología estructurada. Solución:

DIAGRAMA TOP-DOWN RAÍZ

DEFINIR NOMBRE MEDICAMENTO

BUSCAR MEDICAMENTO

REGRESAR A CASA

COMPRAR MEDICAMENTO

PSEUDOCÓDIGO MÓDULO RAÍZ Comienza Ejecuta Definir_nombre_medicamento. Medicamento = no encontrado Mientras medicamento no encontrado haz Ejecuta buscar medicamento Ejecuta Regresar a casa Termina MÓDULO DEFINIR_NOMBRE_MEDICAMENTO Comienza Identifica el nombre comercial del medicamento a partir de la receta. Termina MÓDULO BUSCAR_MEDICAMENTO Comienza Ir a la farmacia más cercana Solicitar el medicamento Si el medicamento existe entonces Ejecuta comprar medicamento Termina MÓDULO COMPRA_MEDICAMENTO Comienza Solicita costo paga el medicamento Medicamento = si encontrado Termina Nota. Las palabras en negritas son sentencias específicas del pseudocódigo.

10


a) Ahora elabora otro diagrama de Top-Down que consideres resuelve el ejercicio 1 de forma estructurada b) Desarrolla el pseudocódigo de cada uno de los módulos que definiste en el diagrama de Top-Down anterior. EJERCICIO 9 Problema: Del planteamiento presentado en el ejercicio 5, se presenta el Diagrama de TopDown y los pseudocódigos de cada módulo que resuelven dicha situación con una metodología estructurada. Solución:

DIAGRAMA TOP-DOWN RAÍZ

ELABORAR COMPROBANTE DE PAGO

REGISTRAR ARTÍCULO

APLICAR DESCUENTO

ACUMULADO

PSEUDOCÓDIGO MÓDULO RAÍZ Comienza Ejecuta Registrar_artículo Ejecuta Elaborar_comprobante_de_pago Termina MÓDULO REGISTRAR_ARTÍCULO Comienza Acumulado = 0 Mientras Artículos haz Ejecuta Aplicar_descuento Ejecuta Acumulado Termina MÓDULO APLICAR_DESCUENTO Comienza Si tiene etiqueta verde entonces aplicar el 10% de descuento en otro caso Si tiene etiqueta roja entonces aplicar el 20% de descuento en otro caso No aplicar descuento CostoTotal = costo menos el porcentaje aplicado Termina 11


MÓDULO ACUMULADO Comienza Acumulado = acumulado + CostoTotal Termina MÓDULO ELABORAR_COMPROBANTE Comienza Imprimir comprobante con el total acumulado de la venta Termina Nota. Las palabras en negritas son sentencias específicas del pseudocódigo.

a) Elabora otro diagrama de Top-Down que consideres resuelve el planteamiento del ejercicio 5 de forma estructurada. b) Desarrolla el pseudocódigo de cada uno de los módulos que definiste en el diagrama de Top-Down anterior. EJERCICIO 10 Problema: Del planteamiento presentado en el ejercicio 7, elabora el Diagrama de Top-Down y los pseudocódigos correspondientes a cada módulo; para resolverlo utiliza una metodología estructurada. EJERCICIO 11 Problema: A partir de identificar lo que requiere un avión para funcionar, se presentan los datos y los procedimientos que intervienen. Solución: Datos Velocidad del viento Presión Niveles de aceite

Procedimientos Despegue Aterrizaje Emergencias

a) ¿Por qué se definieron estos datos y procedimientos? b) ¿Qué otros datos y procedimientos consideras necesarios incorporar?

12


EJERCICIO 12 Problema: Define los datos y procedimientos intervienen al encender una estufa.

a)

Datos

Procedimientos

b) ¿Por qué se definieron estos datos y procedimientos? c) ¿Qué otros datos y procedimientos consideras necesarios incorporar? EJERCICIO 13 Problema: Definir la estructura de datos (variables o constantes) necesaria para describir tus datos personales: nombre, domicilio, edad, fecha de nacimiento, altura, peso y fotografía. Solución: Tendremos que identificar cuáles datos son constantes y cuáles variables, de tal forma que: Datos variables

Datos constantes

Como te habrás dado cuenta todos los datos son variables, ya que si llenamos los datos de la agenda serán en todos los casos diferentes. EJERCICIO 14 Problema: A partir de la estructura de datos anterior define y explica la naturaleza de cada uno de estos (datos simples y agrupados). Solución: Datos

Naturaleza del dato

13

Explicación


EJERCICIO 15 Problema: El Centro de Investigaciones del D.F. controla el acceso de su personal por medio de una tarjeta, la cual contiene la clave de identificación del empleado y un mensaje a la computadora que le dice el departamento al que pertenece. El centro de investigaciones cuenta con tres áreas: investigaciones, desarrollo y análisis. A continuación te presentamos una relación de las claves de identificación de los empleados del Centro por área. Investigaciones I-9182 I-9393 I-9283 I-9494 I-9292 I-9999

Desarrollo D-0001 D-0928 D-9178 D-1243 D-9364 D-2138 D-7302

Análisis A-9834 A-2132 A-4949 A-2093 A-9801

Define las estructuras de datos necesarias y el algoritmo que permita identificar el área del empleado a partir de su clave de identificación. Solución: Definiremos una variable de tipo estructurado para cada área, de tal forma que en la declaración de tipos tendremos lo siguiente: TIPOS Área_Investigaciones = (I-9182, I-9393, I-9283, I-9494, I-9292, I-9999) Área_Desarrollo =( D-0001, D-0928, D-9178, D-1243, D-9364, D-2138, D-7302) Área_Análisis =( A-9834, A-2132, A-4949, A-2093, A-9801= PSEUDOCÓDIGO Lee de la tarjeta clave de identificación del trabajador. Si clave de identificación está EN Área_investigaciones entonces despliega en pantalla “INVESTIGACIONES”, en otro caso Si clave de identificación está EN Área_Desarrollo entonces despliega en pantalla “DESARROLLO”, en otro caso Si clave de identificación está EN Área_Análisis entonces despliega en pantalla “ANÁLISIS”, en otro caso despliega “NO ES EMPLEADO”

a) ¿Cuál es la lógica para accesar los datos de los conjuntos definidos en Tipos? b) ¿La lógica del pseudocódigo presentado es correcta? c) Plantea una solución diferente que resuelva el mismo problema.

14


EJERCICIO 16 Problema: En una caja de ahorro se cuenta con las siguientes políticas: • Cada ahorrador se identifica con una clave numérica, nombre y domicilio. • Los ahorradores depositan una cantidad mensual comprendida entre los $50.00 y $1,000.00 • La caja de ahorro entregará al final del año el total de lo ahorrado más los intereses generados. Solución: Te presentamos la estructura más adecuada para almacenar la información. Se definen dos estructuras de datos de tipo registro, la primera para los datos del ahorrador y la segunda para los datos de la caja de ahorro. Datos_Ahorrador = REGISTRO Clave = Numérico Nombre = Cadena [35] Domicilio = Cadena [45] TERMINA REGISTRO Datos_caja_de_ahorro = REGISTRO

Ahorrador = Datos_ahorrador Abono_Ahorro = Arreglo [1..12] de tipo lógico cantidad_mensual_ahorrar = Real Acumulado_ahorro_mensual = Real Interés_final = Real TERMINA REGISTRO

De tal forma que los datos del ahorrador se puedan manipular dentro de la estructura de datos: Datos_caja_de_ahorro. Se define un campo llamado Abono_ahorro el cual indicará si el abono mensual fue dado o no por el ahorrador y el Acumulado_ahorro_mensual indicará la cantidad ahorrada hasta el presente mes. El interés_final será definido al término del año.

a) ¿La declaración de las estructuras de datos es correcta?, sí, no ¿Por qué? b) A partir del mismo problema define otra estructura de datos que lo resuelva. EJERCICIO 17 Problema: Define la estructura de datos necesaria para describir tus datos personales: nombre, domicilio, edad, fecha de nacimiento, altura, peso y fotografía. EJERCICIO 18 Problema: El administrador de un edificio con 10 condominios lleva la cuenta de los pagos bimestrales de luz y agua de todos ellos; la estructura de datos más adecuada a utilizar sería la siguiente: Solución: Se definen tres estructuras de datos: de tipo arreglo, enumerado y registro. 15


Tipos

Bimestre = (Primero, Segundo, Tercero, Cuarto, Quinto, Sexto) Pagos_por_bimestre_de_luz = Arreglo [Bimestre] real Pagos_por_bimestre_de_agua = Arreglo [Bimestre] real Nota. Se definen dos arreglos de tamaño bimestre, donde los valores posibles que tomarán los índices serán: 1.- Primero, 2.-Segundo, 3.-Tercero, 4.- Cuarto, 5.- Quinto y 6.-Sexto; para referenciar una posición de dicho arreglo. Datos_condominio = REGISTRO Número = Entero Dueño = Cadena [35] TERMINA REGISTRO Pagos_edificio = REGISTRO Condominio = Datos_condominio PBL = Pagos_por_bimestre_de_luz PBA = Pagos_por_bimestre_de_agua TERMINA REGISTRO

Estructuras de datos

Notas. La primera estructura de datos tipo registro almacenará los datos del condominio como son número y dueño (datos que no se ven en el planteamiento, pero que son necesarios para identificar al condominio). La última estructura de datos de tipo registro almacenará los datos contenidos en la estructura Pagos_Edificio, como son: los datos del condominio, haciendo referencia a otra estructura de tipo registro y los pagos bimestrales de luz y agua definidos en una estructura de tipo arreglo.

a) ¿La declaración de las estructuras de datos es correcta?, sí, no ¿Por qué? b) A partir del mismo problema define otra estructura de datos que lo resuelva. EJERCICIO 19 Problema: A partir del problema planteado en el ejercicio anterior, define un arreglo cuyos componentes sean tipo registro, en específico la estructura de datos tipo registro llamada Pagos_Edificios; asimismo, explica la lógica de acceder a cada componente de dicho arreglo. Considera ahora un conjunto de 10 edificios. EJERCICIO 20 Problema: Se te presenta la declaración de las estructuras de datos a nivel de pseudocódigo (tipos, constantes y variables) identificadas en el ejercicio 16.

16


Solución: TIPOS Datos_Ahorrador = REGISTRO Clave = Numérico Nombre = Cadena [35] Domicilio = Cadena [45] TERMINA REGISTRO Datos_caja_de_ahorro = REGISTRO

Ahorrador = Datos_ahorrador Abono_Ahorro = Arreglo [1..12] de tipo lógico cantidad_mensual_ahorrar = Real Acumulado_ahorro_mensual = Real Interés_final = Real TERMINA REGISTRO

VAR Caja_de_Ahorro = Datos_caja_de_ahorro ¿Por qué es necesario asignar el nombre de una variable a la estructura de datos definida por el usuario en la sección de variables? EJERCICIO 21 Problema: Realiza la declaración de las estructuras de datos a nivel de pseudocódigo (tipos, constantes y variables) identificadas en el ejercicio 19. EJERCICIO 22 Problema: A partir del problema planteado en el ejercicio 20 se define el módulo que verifica si el ahorrador tiene retrazo en su deposito mensual. Utiliza las estructuras lógicas. Solución: MÓDULO VERIFICAR_RETRAZO Comienza Lee Clave_ahorrador MesActual = Mes de la fecha del sistema Si Caja_Ahorro.Ahorrador.clave = Clave_ahorrador entonces Desde Índice = 1 hasta MesActual Haz Si Caja_Ahorro.Abono_ahorro[Índice] = Falso entonces MesÚltimoPago = Índice Meses_Deuda = MesActual-MesÚltimoPago Escribe “EL ahorrador debe” , Meses_deuda, “ meses” Termina 17


Nota. Las palabras en negritas son palabras clave del pseudocódigo, las subrayadas-negritas son las estructuras lógicas utilizadas en este módulo y las palabras en cursiva son variables locales que se tendrán que declarar en la sección de variables de dicho módulo. La penúltima línea del pseudocódigo separa con comas el texto que se imprimirá en la pantalla, de la lectura de la variable Meses_deuda, de tal forma que si el ahorrador debe dos meses el mensaje será “El ahorrador debe 2 meses”.

a) Explica la lógica que sigue el módulo Verifica_retrazo. b) Plantea una solución diferente que resuelva el mismo problema utilizando otras estructuras lógicas. EJERCICIO 23 Problema: A partir de los ejercicios 18 y 19 se define el módulo que verifica si algún condominio debe luz en este mes. Solución: MÓDULO VERIFICA_ADEUDO_LUZ Comienza Último_bimestre = Bimestre actual Desde I = 1 hasta 10 haz Desde Bimestre = Primero hasta Último_bimestre haz Pago = Edificio[I].PBL[Bimes] Si Pago = 0.0 entonces Bimestres_adeudos = Último_bimestre- Bimes Escribe “El “ ,Edificio[I].Condominio.Dueño, “ del ”, + Edificio[I].Condominio.Número, “ debe ”, + bimestres_adeudos, “ meses.” Termina

a) Revisa la lógica que sigue este módulo y explícala. b) Realiza el módulo “Verifica Adeudo Agua”. EJERCICIO 24 Problema: El Instituto Nacional de Perinatología lleva un registro manual de todas las personas que atiende (mujeres embarazadas y niños), para revisar si su derecho al servicio es vigente, los datos que requiere de cada paciente son: Clave, nombre, edad, sexo, dependencia donde trabaja o dependiente económico y fecha de vigencia del servicio. 18


Define la estructura de datos más adecuada para almacenar dicha información (registro) y desarrolla el módulo que verifique la vigencia del servicio y muestre los datos generales del paciente a partir del nombre de éste. Utiliza las estructuras lógicas que requieras. EJERCICIO 25 Problema: A partir del ejercicio 20 se declara un archivo de tipo Datos_caja_de_ahorro y el segmento de pseudocódigo que asigna esta estructura de datos a un archivo físico: si existe lo pone en uso, si no existe entonces lo crea. Solución: VAR Caja_de_Ahorro = Datos_caja_de_ahorro Archivo_Caja_de_Ahorro = Archivo de tipo Datos_caja_de_ahorro SEGMENTO DE PSEUDOCÓDIGO Asigna (Archivo_caja_de_ahorro, ‘C:\LCP\Caja.dat’) Si el Archivo_caja_de_ahorro existe entonces Si Archivo_caja_de_ahorro existe entonces Abre ( Archivo_caja_de_ahorro) En otro caso Crea (Archivo_caja_de_ahorro) Nota. Las palabras en negritas son palabras clave del pseudocódigo y las subrayadas-negritas son las sentencias para manipular archivos.

a) Revisa la lógica que sigue este segmento de pseudocódigo y explícala. b) ¿Por qué es necesario revisar si el archivo que se quiere utilizar existe o no? EJERCICIO 26 Problema: A partir del ejercicio 21 se declara un archivo de tipo Pagos_edificio y el segmento de pseudocódigo que asigna esta estructura de datos a un archivo físico: si existe lo pone en uso, si no existe entonces lo crea. EJERCICIO 27 Problema: A partir del problema planteado en el ejercicio 24, se define el pseudocódigo para capturar a los pacientes y almacenarlos en un archivo de Pacientes. (Alta pacientes)

19


Solución: Var

Archivo_paciente = Archivo de tipo paciente Comienza Asigna (Archivo_paciente, ‘C:\LCP\Paciente.dat’) Si el Archivo_paciente existe entonces Abre (Archivo_paciente) En otro caso Crea (Archivo_paciente) Repite Escribe (‘Clave del paciente: ‘) Lee (Archivo_paciente, paciente.Clave_paciente) Escribe (‘Nombre del paciente: ‘) Lee (Archivo_paciente, paciente.nombre) Escribe (’Edad: ‘) Lee (Archivo_paciente, paciente.Edad) Escribe (’Sexo: ‘) Lee (Archivo_paciente, paciente. Sexo) Escribe (’Dependencia: ‘) Lee (Archivo_paciente, paciente.dependencia) Escribe (‘Dependiente económico: ‘) Lee (Archivo_paciente, paciente. Dependiente_económico) Escribe (’Vigencia: ‘) Lee (Archivo_paciente, paciente.vigencia) Escribe (Archivo_paciente, paciente) Escribe (‘Capturar otro registro (S/N) ‘) Lee (Otro) Hasta Otro = ‘N’ Cierra (Archivo_paciente) Termina Revisa la lógica que sigue el pseudocódigo anterior. EJERCICIO 28 Problema: A partir del problema presentando en el ejercicio 24, se define el pseudocódigo para buscar a algún paciente por clave que se encuentre almacenado en el archivo de Pacientes (Consulta pacientes). Solución: Var

Archivo_paciente = Archivo de tipo paciente Comienza Asigna (Archivo_paciente, ‘C:\LCP\Paciente.dat’) Si el Archivo_paciente existe entonces Abre (Archivo_paciente) En otro caso Crea (Archivo_paciente) 20


Escribe (’’¿Cuál es la clave del paciente a buscar? ‘) Lee (Clave) Mientras Paciente.clave_paciente <> Clave haz Lee (Archivo_paciente, Paciente) Si Fin de archivo (Archivo_Paciente) entonces Escribe (‘No existe dicha clave’) En otro caso Escribe (‘Clave del paciente: ‘,Archivo_paciente, + paciente. Clave_paciente) Escribe (‘Nombre del paciente: ‘,Archivo_paciente, + paciente.nombre) Escribe (’Edad: ‘,Archivo_paciente, paciente.Edad) Escribe (’Sexo: ‘,Archivo_paciente, paciente..Sexo) Escribe (’Dependencia: ‘ ,Archivo_paciente, + paciente.dependencia) Escribe (‘Dependiente económico: ‘ , Archivo_paciente, + paciente. Dependiente_economico) Escribe (’Vigencia: ‘ ,Archivo_paciente, paciente.vigencia) Cierra (Archivo_paciente) Termina Describe la lógica que sigue este pseudocódigo. EJERCICIO 29 Problema: A partir del problema planteado en el ejercicio 20, define el pseudocódigo para capturar los datos de la caja de ahorro (alta caja) y buscar la cantidad ahorrada de algún ahorrador por nombre (Consulta caja). EJERCICIO 30 Problema: Se desea realizar la multiplicación de dos números reales utilizando una función. Solución: Var

FUNCIÓN RESULTADO : Real

a, b : real Comienza Resultado = a * b Termina Las funciones regresan el resultado en el nombre de la función, el cual debe ser del tipo deseado en la operación realizada.

a) Describe el desarrollo de una función. b) Explica la lógica que sigue la función presentada. c) Resuelve el mismo problema utilizando un procedimiento con variables globales. 21


EJERCICIO 31 Problema: A continuación se presenta un procedimiento que busca la ubicación de un elemento dentro de un arreglo de tamaño n con valores de tipo entero, al teclear el valor buscado como criterio. Solución: Tipos

N = 15

Var Cadena1 = Arreglo[1..N] de enteros ... Comienza Escribe (‘Dame el criterio de búsqueda: ‘) Lee (Valor_buscado) ... Procedure Busca_Elemento Var I : Entero Encontrado : Lógico Comienza Encontrado = Falso I=1 Repite Si Cadena1[I] = Valor_Buscado Entonces Escribe (‘Él valor buscado se encuentra en la localidad : ‘, I) Encontrado = Verdadero En otro caso I=I+1 Hasta encontrado = Verdadero Termina

a) Explica la lógica que sigue el procedimiento para buscar la ubicación del valor deseado. b) Resuelve el mismo problema utilizando una función de tipo entero. EJERCICIO 32 Problema: Del problema presentado en el ejercicio anterior, se plantea el módulo con parámetros de valor y variables. Solución: Tipos

N = 15 22


Var Cadena1 = Arreglo[1..N] de enteros Resultado = Entero ... Procedure Busca_Elemento (VB : Entero; Var Localidad : Entero) Var Encontrado : Lógico Comienza Encontrado = Falso Repite Si Cadena1[Localidad] = VB Entonces Encontrado = Verdadero En otro caso Localidad = Localidad + 1 Hasta encontrado = Verdadero Termina ... Comienza Escribe (‘Dame el criterio de búsqueda: ‘) Lee (Valor_buscado) Busca_Elemento (Valor_Buscado,1) Termina

a) Explica la lógica que sigue el procedimiento en el paso de parámetros de valor y variables. b) Resuelve el mismo problema utilizando una función de tipo entero con parámetros. EJERCICIO 33 Problema: A partir del problema planteado en el ejercicio 23, se define el módulo con parámetros que verifica si algún condominio debe luz en este mes. Solución: MÓDULO VERIFICA_ADEUDO_LUZ (Var Ad: Lógico; UB: Fecha) Comienza Desde Bimes = Primero hasta UB haz Pago = Edificio[I].PBL[Bimes] Si Pago = 0.0 entonces Ad = UB- Bimes Termina ... Comienza Adeudo = Falso Desde I = 1 hasta 10 haz Verifica_Adeudo_Luz (Adeudo, Bimestre_Actual) 23


Escribe “El “ ,Edificio[I].Condominio.Dueño, “ del ”, + Edificio[I].Condominio.Número, “ debe ”, + Adeudo, “ meses.” ... Termina

a) Explica la lógica que sigue el procedimiento en el paso de parámetros de valor y variables. b) Realiza el módulo “Verifica Adeudo Agua” con parámetros de valor y variables. EJERCICIO 34 Problema: A partir del ejercicio 28 define el pseudocódigo para buscar a algún paciente por clave que se encuentre almacenado en el archivo de Pacientes (Consulta pacientes), utiliza como parámetro de valor la clave de búsqueda y como parámetro variable de tipo lógico que indique si lo encontró o no. EJERCICIO 35 Problema: Se define la unidad llamada FLPP (Fondo y letras de la pantalla), la cual permite poner el color de fondo de pantalla y el color de las letras. Dicha unidad será utilizada por un programa que despliega el valor obtenido por la función resultado del ejercicio 30. El color de las letras será amarillo y el fondo azul. Solución: Definición de la unidad: UNIDAD FLPP Var FondodePantalla, ColordeLetra : Bit Procedimiento FP(Var FP: Bit) Comienza Función ColorFondodePantalla (FP) Termina Procedimiento CL(Var CL: Bit) Comienza Función ColordeLetras(CL) Termina COMIENZA FP(FondodePantalla) CL(ColordeLetra) TERMINA

24


Uso de la unidad a través de un programa que calcula el producto de dos números utilizando las funciones FP y CL de la unidad. PROGRAMA MULTIPLICACIÓN Usa la unidad FLPP Var A, B : Real COMIENZA FP (Azul) FL (Amarillo) Escribe (‘Teclea un número: ‘) Lee (A) Escribe (‘Teclea otro número: ‘) Lee (B) Escribe (‘El producto de los dos números digitados es : ‘,resultado) TERMINA FUNCIÓN RESULTADO (Valor1, valor2: Real) : Real Comienza Resultado = a * b Termina

a) Explica la lógica que sigue el programa y las llamadas a los procedimientos de la unidad. b) Explica por qué es necesario poner en uso la unidad FLPP. c) A la unidad FLPP, aumenta un procedimiento que calcule la raíz cuadrada de un número real, genera un programa que dado un número calcule su raíz cuadrada y despliega el resultado con letras cafés y fondo blanco. EJERCICIO 36 Problema: Se desea abrir un archivo de tipo texto llamado Historial.txt para mandarlo a imprimir. Realiza los saltos de página necesarios. Solución: PROGRAMA IMPRIME_ARCHIVO Var Archivo_Historial = Archivo de tipo texto Contador = Entero Línea = Cadena de caracteres Comienza Asigna (Archivo_Historial, ‘C:\LCP\Historial.txt’) Si el Archivo_Historial existe entonces Comienza Abre (Archivo_Historial) Mientras no final de archivo Haz Comienza Contador = 1 25


Mientras Contador <= 62 Haz Comienza Lee (Archivo_Historial, Línea) Escribe (Impresora, Línea) Salta a la siguiente línea Contador = Contador + 1 Termina Salta página Termina En otro caso Escribe (‘El archivo no existe’) Termina Cierra (Archivo_Historial)

a) Explica la lógica que sigue el programa Imprime_Archivo. b) Con base en el ejercicio 28 realiza un programa que imprima el resultado de la consulta, validando un salto de página si excede las 62 líneas. EJERCICIO 37 Problema: A partir de la siguiente ventana identifica sus objetos y las características de estos.

EJERCICIO 38 Problema: De la ventana anterior define la lógica para construir cada objeto.

26


SECCIÓN DE PRÁCTICAS

PRÁCTICA 1. DIAGRAMA DE FLUJO Objetivo Elaborar un diagrama de flujo que presente todos los procesos que sigue el área de ventas de la situación de aprendizaje del Cuadernillo de procedimientos. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en los temas: 1.Conceptos Generales y 2. Programación Lineal, Unidad I. Solución del problema A partir de la situación de aprendizaje, tendrás que identificar todos los procesos que intervienen en su desarrollo y la secuencia que se sigue para resolverlo. Desarrollo de la solución Se aprecian tres procesos básicos: • Asentar pedido. • Elaboración de factura. • Elaboración del listado con el resumen de movimientos. La secuencia de pasos en el proceso “asentar pedido” podría ser la siguiente: La solicitud puede ser por vía telefónica, correo o personal. La solicitud la realiza un cliente nuevo o conocido. En caso de ser un nuevo cliente asignarle un número de identificación. Es necesario ratificar la solicitud por existir la posibilidad de que el pedido sea erróneo o falso.

• • • •

27


A continuación te presentamos un segmento del diagrama de flujo en el proceso de registro de la solicitud. INICIO

RECIBE SOLICITUD DE COMPRA

¿CLIENTE NUEVO?

REGISTRAR DATOS EN LIBRETA DE CLIENTES Y ASIGNAR CLAVE

NO

¿PERSONAL?

NO

¿SOLICITUD VÍA TELEFÓNICA O CORREO?

VERIFICAR PEDIDO

ASENTAR PEDIDO

TERMINA

Desarrolla los otros dos procesos. Evaluación de la práctica Al término de la práctica debes entregar: • La secuencia de pasos en los dos procesos faltantes (elaboración de facturas y elaboración del listado con el resumen de movimientos). • El diagrama de flujo de la situación de aprendizaje completo. • La explicación del diagrama de flujo. • Tu trabajo con orden y limpieza.

28


PRÁCTICA 2. DIAGRAMA DE TOP-DOWN Objetivo Elaborar un diagrama de Top-Down que resuelva la situación de aprendizaje del Cuadernillo de procedimientos con una tendencia estructurada. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en el tema 3. Programación Estructurada, Unidad I. Solución del problema A partir de la situación de aprendizaje tendrás que definir los módulos y submódulos que la resuelven, ordenándolos de forma jerárquica y secuencial. Desarrollo de la solución Como podrás recordar en la práctica anterior se visualizan 3 procesos o módulos básicos para resolver la situación de aprendizaje, mismos que ahora utilizaremos como módulos principales en nuestro diagrama de Top-Down quedando de la siguiente forma: RAÍZ

ASENTAR EL PEDIDO

ELABORACIÓN DE FACTURA

RESUMEN DE MOVIMIENTOS

Dentro del módulo Asentar pedido tendremos los siguientes módulos y submódulos: RECIBE SOLICITUD

RECIBE SOLICITUD

DEFINE ORIGEN

TIPO DE CLIENTE

RATIFICA PEDIDO

CLIENTE

PEDIDO

CONSULTAR CATÁLOGO ARTÍCULOS

REGISTRO PEDIDO

ASIGNA CLAVE PEDIDO

REGISTRA DATOS CLIENTE

ASIGNA CLAVE CLIENTE

Asimismo te describimos los módulos y submódulos del módulo Elaboración de factura: ELABORACIÓN FACTURA

CONSULTA PEDIDO

CONSULTA DATOS CLIENTE

CALCULA I.V.A. Y TOTALES

ASIGNA NÚMERO FACTURA

CONSULTA CATÁLOGO CLIENTES

29

REGISTRA FACTURA

IMPRIME FACTURA


Ahora desarrolla los módulos y submódulos del módulo Resumen de movimientos. No olvides que debes considerar los datos de los artículos contenidos en el catálogo de artículos, los datos del cliente y los totales vendidos por artículo. El reporte tendrá que ser impreso. Evaluación de la práctica Al término de la práctica debes entregar:

• El diagrama de Top-Down completo que resuelve la situación de aprendizaje . • Tu trabajo con orden y limpieza.

PRÁCTICA 3. ESTRUCTURAS DE DATOS Objetivo Definir los tipos de estructuras de datos necesarias para sistematizar la información requerida en la situación de aprendizaje del Cuadernillo de procedimientos. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en la Unidad II. Estructuras de Datos y las prácticas anteriores. Solución del problema Se tendrán que definir las estructuras que almacenen los siguientes datos: del cliente (Libreta de clientes y tarjetas de clientes), de factura y del catálogo de artículos. Desarrollo de la solución Como no existe una estructura de datos que se adecue a los datos para el cliente, tendremos que definir un tipo de datos, en el área de tipos, que cubra nuestros requerimientos, de tal forma que: TIPOS Estructura_Cliente = REGISTRO Clave_Cliente = Cadena [5] Nombre_Empresa = Cadena [45] Razón_Social = Cadena [13] Giro = Cadena [10] Enlace = Cadena [35] Domicilio = Cadena [45] Teléfono = Numérico Fax = Numérico Fecha_primera_compra = Fecha No_factura_primera_compra = Cadena [6] Fecha_última_compra = Fecha No_factura_última_compra = Cadena [6] 30


Importe_total_acumulado = Numérico Importe_total_acumulado_último_año = Numérico Lista_5_últimos_artículos_comprados = Arreglo [1..5] numérico TERMINA REGISTRO Desarrolla las estructuras de datos faltantes, te sugerimos que las definas también de tipo registro. Evaluación de la práctica Al término de la práctica debes entregar:

• Las estructuras de datos para la factura y el catálogo de artículos. • La explicación de los datos de cada registro. • Tu trabajo con orden y limpieza.

PRÁCTICA 4. ESTRUCTURAS LÓGICAS Objetivo Elaborar el pseudocódigo necesario de los módulos principales: Raíz, Asentar pedido, Elaboración de factura y Resumen de movimientos, utilizando estructuras lógicas así como asignaciones. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en los temas: 1.Declaración de las estructuras de datos y 2. Operaciones básicas, Unidad III del Cuadernillo de procedimientos y las prácticas anteriores. Solución del problema Identificar las sentencias que requiere cada uno de los módulos, utilizando las estructuras lógicas, ya que éstas son la base de la metodología de la programación estructurada. De igual modo serán necesarias algunas asignaciones de valores a algunas variables. Recuerda que hasta el momento sólo hemos declarado tipos de datos, mas no variables o constantes, esto lo haremos en la siguiente práctica. Desarrollo de la solución A partir del diagrama de Top-Down realizado en la práctica dos, el módulo Asentar pedido realiza las llamadas a sus dos módulos hijos: Recibe solicitud y Tipo de cliente.

31


A continuación te presentamos el pseudocódigo del módulo Asentar pedido: MÓDULO ASENTAR_PEDIDO(Clave_Cliente : Cadena [5]) COMIENZA Ejecuta Recibe_Solicitud (Origen: Cadena [45]; Ratifica: Lógico) Si Ratifica = Falso Entonces Termina Proceso En otro caso Ejecuta Tipo Cliente(Origen: Cadena [45]) TERMINA Elabora el pseudocódigo de los otros módulos: Raíz, Elaboración de factura y Resumen de movimientos. Evaluación de la práctica Al término de la práctica debes entregar: • Pseudócodigos de los módulos principales, los cuales incorporan estructuras lógicas y asignaciones. • Tu trabajo con orden y limpieza. PRÁCTICA 5. VARIABLES DE TIPO ARCHIVO Objetivo Declarar las variables y constantes que utilizaremos, en específico las variables de tipo archivo que surgen de las estructuras de datos definidas en la práctica 3; la lógica para crear el archivo clientes y el módulo que captura los datos del cliente, con la finalidad de resolver la situación de aprendizaje del Cuadernillo de procedimientos. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en los temas: 3.Archivos y 4. Operaciones con archivos, Unidad III y las prácticas anteriores. Solución del problema A partir de la práctica 3 y de la situación de aprendizaje definiremos las variables necesarias para el programa estructurado, la lógica para generar el archivo que almacenará la información de los clientes y el módulo Registra_Datos_Cliente Desarrollo de la solución Variables tipo archivo. Define las variables que consideres globales, es decir que vas a utilizar en todo momento del programa y que pueden servir como parámetros. A continuación te presentamos algunas de las variables para manejar el tipo de dato Estructura_Cliente.

32


Variables Cliente = Estructura_cliente Archivo_cliente = Archivo con Estructura_cliente Lógica de crear el archivo clientes. La ubicación de este pseudocódigo es el área de especificaciones técnicas (pseudocódigo del programa), y se declara de la siguiente forma: Asignar a la variable de tipo archivo el path o dirección del dispositivo de almacenamiento y el nombre o identificador que tendrá nuestro archivo físico, donde el path y el nombre tendrán que ir entre comillas y separados de la variable por una coma. Indicar que la variable de tipo archivo se creará. Escrito en pseudocódigo y basándonos en las declaraciones de las variables realizadas en la situación de aprendizaje, tendríamos lo siguiente: Asigna (Archivo_cliente, ‘C:\LCP\Cliente.dat’) Crea ( Archivo_cliente) Módulo que captura los datos del cliente. Pseudocódigo para capturar clientes y almacenarlos en el archivo de clientes (alta de clientes). El pseudocódigo para capturar a los clientes en la estructura Clientes de tipo registros y almacenarla en el Archivo_cliente, se escribe también en el área de especificaciones técnicas del programa (pseudocódigo del programa) bajo los siguientes criterios. Si es un archivo de nueva creación procederemos a utilizar las sentencias definidas anteriormente, de lo contrario utilizaremos las siguientes sentencias: Asigna (Archivo_cliente, ‘C:\LCP\Cliente.dat’) Abre ( Archivo_cliente) Una vez puesto en uso el archivo, procederemos a definir la lógica de captura de información en los registros de la variable clientes, para después almacenarlos en el Archivo_cliente. En este momento tendremos que utilizar las estructuras lógicas, así como validar la creación o apertura del archivo. Asigna (Archivo_cliente, ‘C:\LCP\Cliente.dat’) Revisa si el Archivo_cliente existe Si Archivo_cliente existe entonces Abre ( Archivo_cliente) En otro caso Crea (Archivo_cliente) Fin Si Repite Escribe (‘Número de cliente: ‘) Lee (No_Cliente) Escribe (‘Nombre de la empresa: ‘) Lee (Nombre_empresa) Escribe (’Atención: ‘) Lee (Atencion) Escribe (’Domicilio: ‘) Lee (Domicilio) Escribe (’Teléfono: ‘) Lee (Telefono) Escribe (’Fax: ‘) Lee (Fax) Escribe (’Fecha de la primer compra: ‘) Lee (Fecha_primera_compra) 33


Escribe (’No. de factura de la primera compra: ‘) Lee (No_factura_primera_compra) Escribe (’No. de factura de la última compra: ‘) Lee (No_factura_ultima_compra) Escribe (’Importe total acumulado: ‘) Lee (Importe_total_acumulado) Escribe (’Importe total acumulado anual: ‘) Lee (Importe_total_acumulado_ultimo_a&o) Escribe (’Lista de los últimos 5 artículos comprados: ‘) Lee (Lista_5_ultimos_articulos_comprados) Escribe (Archivo_cliente, Cliente) Escribe (‘Capturar otro registro (S/N) ‘) Lee (Otro) Hasta Otro = ‘N’ Cierra (Archivo_cliente) Define las otras variables para las estructuras de datos factura y catálogo de artículos, y los módulos: Consulta_Catálogo_Artículos y Registra_factura. Evaluación de la práctica Al término de la práctica debes entregar: • La sección de variables y constantes de la situación de aprendizaje. • Los módulos Consulta_Catálogo_Artículos y Registra_factura. • Tu trabajo con orden y limpieza. PRÁCTICA 6. FUNCIONES Y PROCEDIMIENTOS Objetivo Definir la unidad que permita dar una mejor presentación a nuestras pantallas de captura y despliegue de información de la situación de aprendizaje; asimismo definiremos el pseudocódigo de cada módulo definido en el diagrama de Top-Down de la práctica 2. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en el tema 1.Procedimientos, Unidad IV y las 5 prácticas anteriores. Solución del problema A partir del diagrama de Top-Down define cuáles módulos utilizarán parámetros y cuáles no, asimismo se deberá desarrollar la lógica de uno de los módulos (pseudocódigo). Definir una unidad que permita poner ventanas, color del fondo de pantalla y color de letras.

34


Desarrollo de la solución Primeramente definiremos parte de la unidad de presentación a la cual llamaremos “Presenta”. Definiremos tres módulos básicos: Ventana, Fondo_de_Pantalla, Color_de_letra Módulo Ventana (X1,Y1,X2,Y2) Nota. X1 y Y1 da la posición superior izquierda de la ventana y X2 y Y2 dan la posición inferior derecha de la ventana. Comienza Desde I = X1 hasta X2 Haz Ve a (I, Y1) y Dibuja línea Ve a (I, Y2) y Dibuja línea Desde J = Y1 hasta Y2 Haz Ve a (X1, J) y Dibuja línea Ve a (X2, J) y Dibuja línea Pinta esquina en (X1,Y1) Pinta esquina en (X1,Y2) Pinta esquina en (X2,Y1) Pinta esquina en (X2,Y2) Termina Define la lógica de cada uno de los módulos a excepción de los módulos imprime factura e imprime movimientos, los cuales requieren de un trato diferente. Para definirlos puedes ayudarte con el ejercicio 35. Evaluación de la práctica Al término de la práctica debes entregar:

• El pseudocódigo de la unidad Presenta. • El pseudocódigo de todos los módulos del diagrama de Top-Down de la práctica 2, a excepción

de los que imprimen.

• Tu trabajo con orden y limpieza.

PRÁCTICA 7. MÓDULO IMPRESIÓN Objetivo Definir la lógica de los módulos Imprime Factura e Imprime movimientos, para que la situación de aprendizaje se resuelva en su totalidad a nivel de pseudocódigo. Antecedentes Haber realizado todas las actividades de aprendizaje propuestas en el tema 2.Reportes impresos de la unidad IV de la Guía de estudios y las 6 prácticas anteriores. 35


Solución del problema Hasta el momento habrás desarrollado casi toda la solución de la situación de aprendizaje, lo único que nos falta es definir los módulos de impresión. Considerando la estructura de datos que hayas definido para la factura en la práctica 3, realizaremos la impresión de ésta. Desarrollo de la solución Para desarrollar el módulo que imprime la factura tendrás que seguir los siguientes pasos: 1. Poner en uso los archivos de los cuales tendrás que solicitar información (Factura, Cliente y Artículos). 2. Accesar la información del archivo y vaciarla en una variable que corresponda al mismo tipo que el archivo. 3. Leer la información de la variable definida y mandar a imprimir el dato a la impresora. Nota. Es importante que consideres que una página tamaño carta tiene 65 líneas, por lo cual le tendrás que definir un salto de página a tu impresión. A continuación te presentamos un fragmento del pseudocódigo que podrás utilizar: Escribe (“FACTURA”) Escribe (“Nombre del cliente: ”) Escribe (“Teléfono: ”) Escribe (“Domicilio: ”) Escribe (“Destino: ”) Escribe (“Fecha de elaboración: ”) Escribe (“Clave artículo”) Escribe (“Descripción”) Escribe (“Cantidad”) Escribe (“Costo”) Escribe (“Subtotal”) Escribe (“Total: $ ”) Asigna (Archivo_cliente, ‘C:\LCP\Cliente.dat’) Abre ( Archivo_cliente) Asigna (Archivo_cliente, ‘C:\LCP\Artículo.dat’) Abre ( Archivo_Artículo) Asigna (Archivo_cliente, ‘C:\LCP\Factura.dat’) Abre ( Archivo_Factura) Lee (Factura, Datos_Factura) Lee (Cliente, Datos_Cliente) Escribe (Imprime, Nombre_empresa) Escribe (Imprime, Teléfono) Escribe (Imprime, Domicilio) Escribe (Imprime, Destino) Escribe (Imprime, Fecha_Elaboración) Acumulado = 0.0 Desde I= 1 hasta 5 haz 36


Lee (Lista_Cinco_Artículos [I,1]) Busca Registro en Archivo_Artículos = Lista_Cinco_Artículos [I,1] Escribe (Impresora, Clave) Escribe (Impresora, Descripción) Escribe (Impresora, Lista_Cinco_Artículos [I,2]) Escribe (Impresora, Costo) Acumulado = Lista_Cinco_Artículos [I,2]*costo Escribe (Impresora, Acumulado) Cierra ( Archivo_cliente) Cierra ( Archivo_Artículo) Cierra ( Archivo_Factura) Evaluación de la práctica Al término de la práctica debes entregar: • El pseudocódigo del módulo Imprime Factura. • El pseudocódigo del módulo Imprime Movimientos

37

Manual  

Ejercicios

Read more
Read more
Similar to
Popular now
Just for you