Colección de PROBLEMAS y CUESTIONES. Metodología y Tecnología de la Programación

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Colección de PROBLEMAS y CUESTIONES. Metodología y Tecnología de la Programación"

Transcripción

1 Colección de PROBLEMAS y CUESTIONES Metodología y Tecnología de la Programación Cuestión 1. (Ing. Sw) Qué problemas del ciclo de vida clásico pretende solucionar el Ciclo de Vida con Prototipado? Cuestión 2. (Ing. Sw) Exponga brevemente los tipos de prototipos que pueden generarse cuando la prototipación es el modelo de proceso de software escogido. Cuestión 3. (Ing. Sw) Siguiendo el ciclo de vida clásico real especifique qué documentación genera cada fase como entrada para la siguiente cuando se sigue el enfoque Estructurado. Cuestión 4. (Ing. Sw) Un Ingeniero del Software realiza el siguiente comentario a otros compañeros de profesión: llevo más de 20 años desarrollando proyectos de tamaño mediano o grande. Si tengo que realizar un análisis y diseño adecuados, usando las metodologías y las métricas como indican los textos de ingeniería del software, el coste y la duración del proyecto se disparan y el cliente se pierde. Mi principal problema es la depuración de las especificaciones y programas, porque el cliente da unas especificaciones al principio, pero por experiencia veo que casi nunca sabe exactamente lo que quiere y va añadiendo especificaciones cada vez que se le presenta un modelo A raíz de este comentario, qué aproximación al ciclo de vida del software puede deducirse que utiliza este ingeniero? qué alternativa a ese proceso de construcción de software le recomendaría?. Justifique su respuesta. Cuestión 5. (Ing. Sw) En un desarrollo estructurado con análisis y diseño estructurado como metodologías, qué información se genera en la etapa de análisis estructurado y para qué se utiliza en la etapa de diseño estructurado? Cuestión 6. (Ing. Sw) ibuje los gráficos correspondientes a las fases del ciclo de vida clásico y al ciclo de vida clásico con prototipado. Qué documentación se genera en el ciclo de vida con prototipado en cada una de las fases? Qué ventajas aporta el uso de un prototipo? Cuestión 7. (Ing. Sw) Corrija o complete las siguientes afirmaciones: 1. Los principios fundamentales sobre los que se sustenta la Ingeniería de la Programación son principalmente la abstracción de procedimientos y datos, y la ocultación de información. 2. En el ciclo de vida con prototipado, el prototipo permite que el cliente vea funcionando exactamente lo que será su programa final. 3. Por producto software se entiende documentación de diseño, código fuente y manual de usuario. Cuestión 8. (Ing. Sw) A continuación se muestra un esquema simplificado de la planificación de un proyecto de desarrollo de software. Elabore una nueva planificación (en un formato similar al de la figura y sin modificar la 1

2 longitud de las etapas) corrigiendo los errores detectados. Suponga que se mantiene la restricción de 10 meses de duración, que los prototipos serán de carácter desechable y que se utilizará un enfoque de desarrollo en cascada. Análisis Pruebas de Integración Prototipado iseño Pruebas Unitarias Codificación 10 meses Cuestión 9. (Fs) Indique si las siguientes afirmaciones sobre Análisis y iseño Estructurado son Ciertas o Falsas y justifique su respuesta: a) El F es una técnica del diseño estructurado. b) El iagrama de Contexto sólo muestra información sobre los flujos de datos de entrada y salida entre el sistema y las entidades externas. c) En el iagrama de Contexto ni en el F 0 se deben representar los almacenes de datos. d) Al identificar transacciones en el F, cada transacción debe tener su parte aferente, eferente y transformación central. e) El Centro de Transacciones es un módulo que representa las llamadas a las transacciones identificadas en el F. Cuestión 10. (iagrama de Estructura) Qué información puede deducir un programador a partir de un iagrama de Estructura?. Qué información del diseño se necesita adicionalmente para poder implementar el sistema completo?. Cuestión 11. (Métodos de especificación) escriba brevemente las técnicas de especificación de módulos: pseudocódigo, árbol de decisión y tabla de decisión. Indique las ventajas e inconvenientes de cada una de ellas. Cuestión 12. (Acoplamiento y Cohesión) Justifique la veracidad o falsedad de las siguientes afirmaciones: 1.- Cuando la cohesión disminuye, el acoplamiento aumenta. 2.- Un módulo con acoplamiento por control siempre tiene cohesión débil. 3.- La especificación de módulos no es necesario realizarla si previamente se ha realizado la especificación de procesos en el F. Cuestión 13. (Acoplamiento y Cohesión) Cuándo se produce la inversión de autoridad en un iagrama de Estructura? Cuestión 14. (Acoplamiento y Cohesión) iscuta la veracidad o falsedad de las siguientes afirmaciones a) Los datos vagabundos están relacionados con el acoplamiento normal y el acoplamiento por contenido b) La cohesión causal es similar a la lógica pero en la primera no hay flags de selección 2

3 c) La cohesión es una medida de la fuerza de la relación de invocación entre los elementos de un módulo Cuestión 15. (Acoplamiento y Cohesión) Existe alguna diferencia, de cara al mantenimiento de un sistema, entre el acoplamiento por control por flag descriptivo y el acoplamiento por control por flag de control?. Cuestión 16. (Acoplamiento y Cohesión) Razone qué tipo de cohesión presenta el módulo Formatear y guardar registro : a b continuar a b reg Formatear y guardar registro continuar Formatear registro Guardar registro Continuar Cuestión 17. (Acoplamiento y Cohesión) Hora Fecha Validar Fecha y Hora Es Hora Válida Es Fecha Válida Hora Fecha Validar Fecha y Hora Tipo de Validación Es Hora Válida Es Fecha Válida Tipo de Validación: 0 -> Valida Fecha y Hora 1 -> Valida la Fecha 2 -> Valida la Hora Figura a) Figura b) Un diseñador construye el módulo Validar Fecha y Hora de la Figura a). urante el diseño del sistema, en otra parte del mismo, necesita realizar una validación exclusivamente de la hora y decide modificar el módulo anterior como puede verse en la Figura b). Cuál es la cohesión que presentan ambos módulos? Proponga una solución más adecuada y justifique la respuesta. Cuestión 18. (Acoplamiento y Cohesión) Explique por qué el acoplamiento se hace peor cuando la cohesión disminuye. Cuestión 19. (Acoplamiento y Cohesión) Indique cuál es la cohesión del siguiente módulo Validar_Entrada_Y_Salida codificado en C asumiendo que los módulos Validar_Entrada_atos y Validar_Salida_atos tienen cohesión funcional. Indique, además, el acoplamiento entre Validar_Entrada_Y_Salida y los módulos Validar_Entrada_atos y Validar_Salida_atos. Justifique las respuestas. void Validar_Entrada_Y_Salida( int canal_entrada, int *es_entrada_valida, int canal_salida, int *es_salida_valida) { *es_entrada_valida = Validar_Entrada_atos(canal_entrada); *es_salida_valida = Validar_Salida_atos(canal_salida); 3

4 Cuestión 20. (Acoplamiento y Cohesión) El siguiente diagrama de estructura muestra una parte del diseño de un programa que realiza el listado de entradas vendidas para un espectáculo en el Palau de la Música de Valencia. Se debe determinar la cohesión y acoplamiento de todos los módulos que NO son de librería. Justificar la respuesta. Leer Espectáculos Leer Entradas válidas Cuestión 21. (Acoplamiento y Cohesión) Registro Válido Registro Válido fin_proceso fin_proceso Registro Válido y preguntar continuación Registro Válido y preguntar continuación Registro continuación Registro continuación Registro Es_válido Leer Registro Preguntar Continuación Leer Registro Validar Registro Preguntar Continuación Figura a) Factorización Figura b) a) Qué cohesión presenta el módulo Registro Válido y preguntar continuación en las Figuras a) y b)? Justifique su respuesta. b) La factorización cambia la cohesión del módulo Registro Válido y preguntar continuación?. Explique brevemente su respuesta. 4

5 Cuestión 22. (Acoplamiento y Cohesión) etermina el tipo de cohesión de los módulos Generar Factura e Insertar Nueva Factura a partir del siguiente diagrama de estructura. Justifica la respuesta. Cómo reestructurarías el diagrama para mejorar la cohesión? 1 id cliente fecha compra fecha compra id cliente Generar e Insertar Factura factura factura Reg cliente Leer almacén s existe Generar Factura id cliente existe fecha compra Reg compra Leer almacén Compras Incrementar Núm. Facturas Insertar Nueva Factura factura Insertar almacén Facturas Cuestión 23. (Acoplamiento y Cohesión) Responda qué tipos de acoplamiento presenta la figura y justifíquelo brevemente. Fin atos Validos Necesito otro dato atos Válidos atos Fin Leer atos goto ErrorLectura Cuestión 24. (Acoplamiento y Cohesión) Qué cohesión tiene el módulo atos de la figura?. Razone la respuesta considerando que la información necesaria debe obtenerse tanto desde el fichero de clientes como desde el de morosos. dni Reg1 Reg2 error Reg1 datos cliente Reg2 error Leer clientes dni Leer morosos 5

6 Cuestión 25. (Acoplamiento y Cohesión) Indica el acoplamiento de cada módulo y si realizarías alguna modificación para mejorarlo. Considera que no se utilizan datos globales. (Justifica las respuestas). Reg_cliente + nombre + dirección + tipo_habitación + numero_dias + numero_comidas id_cliente Total id_cliente Calcular Total Factura Hotel Reg_cliente OK Total_h Reg_cliente Total_c Leer de clientes Calcular Total habitación Calcular Total comidas Cuestión 26. (Acoplamiento y Cohesión) Indicar el tipo de acoplamiento presente entre los módulos de la figura. Procesar Vector Vector posición Elemento goto Fin_Búsqueda Buscar elemento 6

7 Cuestión 27. (Acoplamiento y Cohesión) eterminar la cohesión de aquellos módulos que no son de librería. Crees que se podría mejorar el diagrama? Justifica la respuesta y en caso de se afirmativo representa una alternativa. Cod_producto cantidad Cantidad_valida Cod_producto error cantidad cantidad Validar stock Imprimir error eof registro registro Leer_productos actualiza_productos Cuestión 28. (Acoplamiento y Cohesión) A 1 a X X B b Guarda X Lee X X ado el anterior diagrama de estructura, indique el acoplamiento que existe entre: - Los módulos A y B - Los módulos A y Guarda X - Los módulos Guarda X y Lee X - Los módulos B y Lee X Cuestión 29. (Acoplamiento y Cohesión) Considerando las siguientes definiciones: a,b = enteros = booleano X = a + b ado el diagrama de la figura resuelva las siguientes cuestiones: a) Cuál es la cohesión de los módulos del diagrama que NO son módulos de librería? b) etecte las posibles deficiencias del diagrama. c) Cómo se podría mejorar el diagrama y la cohesión de los módulos? Qué cohesión tendrían los módulos después de la mejora? iccionario de atos (los datos no incluidos se consideran de tipos elementales): 7

8 nif = cadena de 10 caracteres reg_cliente + nombre_cliente + dirección reg_compra + cantidad reg_articulo + nombre_articulo + cantidad + precio detalle_factura = { articulo + nombre_articulo + cantidad + precio cabecera = nombre_cliente + fecha_sistema factura = cabecera + detalle_factura + total nif factura Generar Factura total nif nif detalle factura cabecera Actualizar irección Generar etalle Factura nif Generar Cabecera Factura detalle factura dirección Leer cadena reg cliente Modificar s reg compra Leer Movimientos Compras eof eof reg articulo Leer Artículos fecha reg clientes eof Leer Fecha Sistema Leer s total Calcular Total Factura Cuestión 30. (Acoplamiento y Cohesión) Evalúe los siguientes segmentos de pseudo-código determinando qué acoplamiento tienen (con el módulo que lo invoca y con los invocados), justifique su respuesta y discuta como se podría mejorar. EjecutarOpción (Op){ Si Op = 1 Entonces F1( ); Sino Si Op = 2 Entonces F2( ); CalcularSueldoPromedio{ cantidad_empleados := 0; acumulado_sueldo := 0; AcumularSueldo( ); retornar(acumulado_sueldo / cantidad_empleados) Cuestión 31. (Acoplamiento y Cohesión) Evalúe el siguiente iagrama de Estructura determinando que cohesión tiene cada uno de sus módulos. Justifique su respuesta e indique las mejoras que realizaría a este diseño. iccionario de atos: Reg_cuenta = nro_cta + nombre + fecha_apertura + nro_cta = entero nombre = cadena [100] fecha_apertura = fecha resumen cta = saldo + nro_movimientos + media_movimiento + fecha_ultimo_mov saldo = entero nro_movimientos = entero 8

9 media_movimiento = entero fecha_ultimo_mov = fecha reg_movimiento = nro_cta + tipo_operacion + cantidad + fecha_mov + descripcion tipo_operacion = ingreso egreso cantidad = entero fecha_mov = fecha descripcion = cadena [100] Cuestión 32. (Acoplamiento y Cohesión) ada la especificación en pseudocódigo del módulo Promediar_Listas : a) etermine la cohesión y el acoplamiento del módulo. Justifique su respuesta. b) Realice los cambios sobre el pseudocódigo que considere necesarios para mejorar este diseño. c) En caso de que varíen, indique cuáles son la cohesión y el acoplamiento resultantes. Justifique su respuesta. MÓULO Promediar_Listas (lista_a, lista_b: vector de enteros ) { /* efiniciones de datos */ Constante long_listas = 100 Local total_a, total_b, prom_a, prom_b: real i: entero /* Pseudocódigo Módulo */ REPETIR ESE i = 1 HASTA long_listas { total_a := total_a + lista_a[i] total_b := total_b + lista_b[i] prom_a := total_a / long_listas prom_b := total_b / long_listas RETORNA {prom_a, prom_b 9

10 Cuestión 33. (Guías de iseño) Por qué los módulos de validación en un sistema no deben encargarse de llamar al módulo que escribe los mensajes de error?. Cuestión 34. (Guías de iseño) Indique qué reglas de edición por niveles se aplican sobre las ramas aferentes de un diagrama de estructura, proporcionando un ejemplo para cada una de ellas. Cuestión 35. (Guías de iseño) Comente la dificultad añadida que existe en la bifurcación de las ramas de entrada de un F a la hora de generar el diagrama de estructura. Utilice un ejemplo para clarificarlo. Cuestión 36. (Guías de iseño) e entre las siguientes ramas aferentes indique cuál es la más adecuada y justifique la respuesta brevemente: AF AF Ciudad Existente Ciudad Existente Ciudad Existente nº error Ciudad Existente nº error Cadena Ciudad Cadena Válida Cadena Cadena nº error Es Alfanumérica Validar Cadena Alfanumérica Existe Error Comprobar Ciudad Existe Ciudad Ciudad Registro Ciudad Leer de Archivo de CIUAES Error error Ciudad Cadena Ciudad Es Alfanumérica Validar Cadena Alfanumérica Ciudad Válida Ciudad Comprobar Ciudad Existe Leer de Archivo de CIUAES Ciudad Registro Ciudad error Error Cuestión 37. (Guías de iseño) iscuta la veracidad o falsedad de las siguientes afirmaciones: a) La diferencia que existe entre la cohesión secuencial y la procedural es la misma que entre la temporal y la comunicacional, es decir, el orden de las actividades. b) El nuevo módulo que se obtiene por factorización tiene siempre cohesión funcional. c) La diferencia entre la cohesión lógica y la casual es la existencia de al menos un flag de control. Cuestión 38. (Guías de iseño) etecte las deficiencias existentes en el siguiente diagrama de estructura e indique brevemente las posibles alternativas para solucionarlas. El diagrama de estructura representa la emisión de un justificante de movimientos de un cliente. Primero se obtiene el número de días correspondiente al período a observar. espués se obtienen todos los movimientos realizados dentro de ese período y se genera el justificante en sí. Finalmente se imprime el justificante generado. 10

11 código cliente Emitir justificante de movimientos número días código cliente número días movimientos Leer cadena Generar Movimientos Generar e Imprimir Justificante Reg. movimientos eof movimientos justificante línea de texto Leer de Movimientos Generar Justificante Escribir línea Cuestión 39. (Guías de iseño) Rellenar Pedido Rellenar Pedido Cód. Cód. es nuevo Cód. Existente Existente Válido ar de Alta Nuevo Cód. Cód. Cód. Válido Cód. es nuevo Cód. Cód. es nuevo Reg. atos Leer Código Validar Existe ar de Alta Nuevo Leer Código Validar Existe Escribir en s Leer atos Reg. Reg. eof atos Reg. eof Leer de s Escribir en s Leer atos Leer de s Solución 1 Solución 2 Estos diagramas representan dos soluciones posibles para una misma rama aferente de una transacción. En esta rama se introduce y valida un código de cliente. En caso de que el cliente no exista se introducen el resto de datos del cliente y se da de alta en el almacén de datos de s. Comente las ventajas y/o desventajas de una solución respecto a la otra teniendo en cuenta los medidas de calidad y las guías de diseño. Cuestión 40. (Guías de iseño) Indique las posibles deficiencias del diseño que se presenta y señale una forma de mejorar cada una de ellas. 11

12 Gestionar compras código error datos compra válidos datos compra válidos datos cliente datos cliente datos cliente datos compra válidos código error datos compra compra válida Atender compra Generar factura Mostrar Error datos cliente datos compra registro producto eof registro compra eof registro producto datos compra Validar compra leer un producto Insertar una compra leer un producto datos cliente eof registro producto cliente leer un producto Cuestión 41. (Guías de iseño) Los siguientes diagramas presentan dos versiones de una parte aferente encargada de la lectura y validación de un nif. Se comprueba el dni y la letra. iscuta las ventajas y desventajas de una opción frente a la otra e indique otra opción más conveniente en el caso de que exista. Opción A nif válido NIF dni válido letra válida dni válido letra válida error NI Válido Obtner letra Validar NI y letra Mostrar Error dni dni letra letra Leer cadena Validar formato NI Leer caracter Validar letra Opción B nif válido NIF dni letra dni letra dni letra error Leer cadena Leer caracter Validar formato NI Validar letra Validar NI y letra Mostrar Error Cuestión 42. (Guías de iseño) Indique las ventajas del uso de clusters. Varía la cohesión de un módulo si utiliza un cluster? En caso afirmativo, ponga un ejemplo. 12

13 Cuestión 43. (Guías de iseño) En general, en un diseño estructurado, Qué se debe mantener alto y qué bajo? Cohesión Acoplamiento Abanico de Entrada (Fan-In) Abanico de Salida (Fan-Out) Factorización Redundancia Cuestión 44. (erivar E) Exponga brevemente qué pasos del análisis de transformaciones son subjetivos y propensos a cometer errores. Cuestión 45. (erivar E) ada una transacción de un F al que se va a aplicar el análisis de transacciones y considerando que dato1, dato2 y dato3 son el final de la rama aferente y que dato6, dato7 son el principio de la eferente, dibuje el diagrama de estructura que puede deducir de esta información considerando que decide alquilar un jefe. Cuestión 46. (Pruebas) V A V B F X C V F F C V X F Y X V B V A F F C V X F Y X Y Fin Fin Grafo 1 Grafo2 Los siguientes grafos de flujo se han derivado a partir del siguiente código: Si (A y B) o C Entonces X Si no Y Pueden considerarse las dos soluciones como correctas, respecto a los objetivos que busca la prueba de caja blanca del camino básico? Justifique la respuesta. Cuestión 47. (Pruebas) Indique si las siguientes afirmaciones sobre técnicas de prueba de software son Ciertas o Falsas y justifique su respuesta: a) La prueba de caja blanca nos asegura que los programas implementen toda la funcionalidad especificada en la fase de análisis. b) El conjunto de casos de prueba definido siguiendo la técnica de caja negra de la partición equivalente nos asegura que se verifiquen todos los posibles caminos de ejecución de un programa. 13

14 c) En la técnica del camino básico, la complejidad ciclomática nos indica el número mínimo de caminos que debemos probar para asegurar el éxito de la prueba. 14

15 Problema 1. (F) La siguiente figura muestra un iagrama de Flujo expandido hasta el último nivel. 1 A 3 C f8 f1 f4 f6 f9 E3 E1 f2 f5 B f7 E f8 f3 2 I F f12 f10 E2 G f11 H 1 a) ibuje el F0, es decir, el diagrama de nivel superior donde aparecerá un proceso por cada transacción del sistema. b) ibuje el iagrama de Contexto. Problema 2. (F) ado el siguiente F: a) etermine las transacciones de que consta b) ibuje el iagrama de Contexto y el iagrama de Primer Nivel en el que aparezca un proceso por cada transacción. c) ibuje el Centro de transacciones (E coordinador del sistema) y las llamadas que realiza. Considere los módulos de librería que estime oportunos. Entidad A g a 1 P6 P1 c 3 P2 b e Entidad C f P3 2 d P7 l i P4 P8 j h P5 m k Entidad B 15

16 Problema 3. (F) ado el siguiente iagrama de Nivel 1, dibuje el iagrama de Contexto y derive el iagrama de Estructura correspondiente al centro de transacciones del sistema. datos_coche Empleado datos_cliente P1 Crear P2 Comprar Coche datos_venta 1 s 3 Coches P5 Vender coche 2 Contrato datos_alquiler matrícula P4 evolver coche P3 Alquilar Coche resguardo Problema 4. (F) Una empresa que alquila coches para el mismo día (y sin admitir reservas) desea informatizar su gestión, para ello contrata los servicios de una consultora de Ingeniería de Software. ado el siguiente diccionario de datos, un ingeniero novato, realiza una primera versión del F del sistema. Comente las deficiencias existentes en el diagrama: Flujos de datos NIF = nif Coche =coche Coche válido=coche atos alquiler = coche + nif Resguardo= coche + nif + fecha Fecha = fecha NIF válido= nif Coche disponible=coche atos Elementales nif = cadena de 9 caracteres coche = cadena de 5 dígitos fecha = cadena de 6 dígitos atos Estructurados Almacenes Coches = {@coche Alquileres= { Reg_alquiler NIF P2 NIF Valido NIF no válido NIF válido NIF Válido P4 Registrar alquiler coche atos alquiler Fecha P5 Generar resguardo Sistema Coche no existente Coche disponible Coche P1 Coche Valido P3 Coche isponible Resguardo Coche Válido Alquileres Coches Alquileres 16

17 Problema 5. (F) A continuación se muestra una parte del análisis funcional del sistema de gestion de una empresa de servicios. Comente las deficiencias que detecte en los siguientes Fs y diccionario de datos. iccionario de atos: Factura= NIF + Importe s= {reg_cliente Servicios= {reg_servicio servicio + Precio servicio + nombre + dirección Nif P1 Añadir cliente Administrador atos cliente Administrador atos cliente Nif P Sistema Nif Código servicio Factura P2 Generar Factura s Servicios Factura Código servicio Administrador Nif P1.1 Comprobar cliente no existe existe Nif nuevo Administrador Nif P2.1 Comprobar cliente existe no existe Nif válido P2.2 precio servicio s Servicios irección + Nombre P1.2 Escribir datos cliente s Precio servicio Nif válido Factura P2.3 Generar factura s 17

18 Problema 6. (F) ado el siguiente iagrama de Flujo de atos, dibuje el iagrama de Contexto y derive el iagrama de Estructura correspondiente al centro de transacciones. Administrador ratios de salario P1 Registrar ratios de salarios Tabla de ratios Registros diarios P2 Recibir registros diarios Registros diarios recibidos Registos diarios con ratios P3 Seleccionar ratios P4 Calcular pagas bruta y neta Salarios no ajustados Registros para ajustar P6 P5 Combinar ajustes Hacer ajustes de productividad Ajustes de salarios Salarios ajustados atos resumen P7 Generar pagos P9 Producir resumenes de pago Resúmenes de pago Pagos a realizar P8 Producir cheques de pago Administrador Cheques de pago Nóminas Problema 7. (iagrama de Estructura) ibuje el iagrama de Estructura correspondiente al siguiente programa C. Los puntos suspensivos (... ) representan líneas de código que se han omitido por no ser relevantes para dibujar el iagrama de Estructura. main() { reg_posicion pos; int stop,fin; int opcion; reg_avance avance; fin=0; while (!fin) { _Avance(pos,&avance,&stop); Calcular_y_Grabar_Nueva_Posicion(&pos,avance); switch (opcion) { case 1: Imprimir_Ruta_Real(); ; break; case 2: Imprimir_Ruta_Estimada(); ; break; case 3: fin=1; ; break; void _Avance(reg_posicion pos, reg_avance *avance, int *stop) /* entrada: reg_posición */ /* salida: reg_avance, stop */ { void Calcular_y_Grabar_Nueva_Posicion(reg_posicion *pos,reg_avance avance) /* entradas: reg_posición, avance */ /* salida: reg_posicion */ { 18

19 void Imprimir_Ruta_Estimada() { vector_ruta ruta; int largo; Imprimir_Ruta(ruta,largo); void Imprimir_Ruta_Real() { vector_ruta ruta; int largo; Imprimir_Ruta(ruta,largo); void Imprimir_Ruta(vector_ruta ruta,int largo) /* entradas: vector_ruta, largo */ /* salida: --- */ { Problema 8. (iagrama de Estructura) OOV tipo_cliente operacion_valida ha_cancelado ha_cancelado Operacion operacion operacion Validar Op Empresa Operacion Valida operacion Validar Op Persona nro_ops nro_error Mostrar Mensaje Error En el E de la figura los parámetros tienen los siguientes tipos de datos (definidos utilizando pseudocódigo): tipo_cliente: caracter operacion, operacion_valida: string[10] ha_cancelado, : boolean nro_error, nro_ops: entero Para cada módulo del diagrama (de librería o no) escriba en Lenguaje C las cabeceras de función. Además, para el módulo _Operacion_Valida escriba las variables locales necesarias y las llamadas que realiza dicho módulo. Considere que todas las funciones son de tipo void. Problema 9. (iagrama de Estructura) En el E de la figura los parámetros tienen los siguientes tipos de datos: 19

20 iccionario de datos: cadena, cadena_válida: string[20] fin_entrada, : boolean nro_error: entero cadena-valida OCV fin_entrada fin_entrada cadena cadena Cadena Válida nro_error Cadena Validar Cadena Mostrar Mensaje Error Implemente una función escrita en C para el módulo Cadena Válida e incluya los prototipos del resto de módulos. Considere que todas las funciones son de tipo void. Además, el pseudocódigo del módulo Cadena Válida es el siguiente: REPETIR Cadena(cadena, fin_entrada) SI fin_entrada = falso Validar Cadena(cadena, ) SI = falso ENTONCES Mostrar Mensaje Error(10) FIN SI FIN SI HASTA fin_entrada = verdadero O = verdadero cadena_valida = cadena Problema 10. (iagrama de Estructura) Suponga el siguiente fragmento de iagrama de Estructura correspondiente a un sistema ya codificado. ON Número Número > 1000 Núm. Error Número Número Es > 1000 Número Validar Número > 1000 Emitir Msg Error Cadena Leer Cadena En una ampliación del sistema es necesario implementar el módulo un Número <= ibuje el iagrama de Estructura correspondiente reutilizando aquellos módulos ya diseñados que sea posible y añadiendo los módulos nuevos que considere necesarios. Además, si fuera necesario modificar el código de alguno de los módulos, indique qué cambiaría. 20

21 Problema 11. (iagrama de Estructura) Construya el E correspondiente al siguiente código C sin incluir los módulos de librería strcpy ni printf. typedef struct { char num_expe[8]; int becario; int creditos;... Registro_Alumno; typedef struct { char num_expe[8];... Registro_Becario; extern float Calcular_Matricula(int creditos); /* Entrada: número de créditos (entero) Salida: coste de matrícula (real) */ extern float Calcular_escuento(Registro_Becario RB); /* Entrada: registro con la información del Becario (RB) Salida: porcentaje de descuento que se aplicará en la matrícula (real) */ extern int Leer_de_Alumnos(Registro_Alumno *RA); /* Salida: siguiente registro del fichero de Alumnos (RA), indica final de archivo(entero)*/ extern int Buscar_atos_Becarios(char *ne, Registro_Becario *RB); /* Entrada: número de expediente (ne, cadena) Salida: información de Becario (RB) correspondiente a ne, indica si encontró RB (entero)*/ int _atos_alumno(char *n_exp, int *crd, int *becario) /* Salida: número de expediente (n_exp, cadena), número de créditos (crd, entero) si es becario o no (becario, entero), indicador de fin de proceso (entero) */ { int fin_de_proceso=0, existe=0; Registro_Alumno reg_alumno;... fin_de_proceso=leer_de_alumnos(&reg_alumno); if (!fin_de_proceso) { strcpy(n_exp,reg_alumno.num_expe); *crd=reg_alumno.creditos; *becario=reg_alumno.becario; return fin_de_proceso; float Calcular_Matricula_Becario(char *n_exp, int crd) /* Entrada: número de créditos (crd, entero); número de expediente del alumno (n_exp, cadena) Salida: coste de matrícula (real) */ { Registro_Becario RB; int ; float matricula; matricula=calcular_matricula(crd);... =Buscar_atos_Becarios(n_exp,&RB);... return matricula*calcular_escuento(rb); void main() { int fin=0, creditos, becario; char n_exp[8]; float matricula=0.0, total=0.0;... fin=_atos_alumno(n_exp,&creditos,&becario); while (!fin) { if (!becario) matricula=calcular_matricula(creditos); else matricula=calcular_matricula_becario(n_exp,creditos); total=total+matricula; fin=_atos_alumno(n_exp,&creditos,&becario); printf("el importe total de las matrículas es: %f",total); Problema 12. (iagrama de Estructura) erive únicamente el código C que se pueda deducir del siguiente diagrama. Suponga que ya están definidas las estructuras de datos PIN, NumeroTarjeta y RegistroTarjeta. No escriba la definición de las cabeceras de los módulos de biblioteca. 21

22 1 Número Tarjeta Válido PIN 4 dígitos PIN 4 dígitos Número Tarjeta Válido Núm. Error Núm. Tarjeta Permitida PIN Leer Cadena PIN 4 dígitos PIN Validar PIN 4 dígitos Núm. Tarjeta Permitida Núm. Error es PIN 4 dígitos Emitir MSG Error Verificar PIN Reg. Tarjeta es PIN válido eof Leer de TARJETAS Emitir MSG Error Núm. Tarjeta 12 dígitos Núm. Tarjeta 12 dígitos Obt. Tarjeta Permitida y No Cad Núm. Tarjeta 12 dígitos es Tarjeta Permitida Núm. Tarjeta 12 dígitos Verificar Tarjeta Permitida Núm. Error Verificar Tarjeta NO Caducada es Tarjeta NO Caducada Emitir MSG Error Problema 13. (iagrama de Estructura) ibuje el iagrama de Estructura correspondiente al siguiente programa en C. Los puntos suspensivos (... ) representan líneas de código que se ha omitido por no ser relevantes para dibujar el.e. No hay que dibujar la funciones de librería printf ó atoi. (La palabra reservada static en la definición de una variable en un módulo restringe el ámbito de esta variable dentro del módulo). /* Fichero LINEAS.C */ #include<stdlib.h> extern int leer_linea(char *); static char linea [50]; static int numero_lineas = 0; static int siguiente_numero_pos = 0; int obtener_campo( char * camp ) /* entrada: salida: camp */ { int fin; /* flag que nos indica si se leen mas lineas */ int i = 0; if ( siguiente_numero_pos == 0 ) { // posición en la cadena línea // donde empieza el siguiente número fin = leer_linea(linea); if (fin == 1) return fin; else numero_lineas ++; while (linea[siguiente_numero_pos]!= \0 && linea[siguiente_numero_pos]!= ) { camp[i]= linea[siguiente_numero_pos]; i ++; siguiente_numero_pos ++; if (linea[siguiente_numero_pos] = = \0 ) siguiente_numero_pos = 0; else siguiente_numero_pos ++; return 0; int obtener_numero_lineas() { return numero_lineas; /* FIN del Fichero LINEAS.C */ /* Fichero PRINCIPAL.C */ #include <stdlib.h> extern int obtener_campo(char *); extern int obtener_numero_lineas(); int obtener_campo_numerico( int* camp_n ) /* entrada: salida: camp_n, */ { int fin; /* flag que nos indica si se leen mas líneas */ char campo[20]; fin=obtener_campo(campo); if (!fin) /* hay campo que convertir */ *camp_n = atoi(campo); return fin; main() {.. int fin, n_lineas; int i =0; int numero[60];. do { fin = obtener_campo_numerico( &numero[i]); i ++; while (!fin i<50) n_lineas = obtener_numero _lineas();... printf ( numeros leidos: %d /n; numero de lineas: %d ;/n, i, n_lineas);.. /* FIN del Fichero PRINCIPAL.C */ Problema 14. (iagrama de Estructura) A partir de los ficheros listar_reservas.c, cola.h y utiles.h que se presentan a continuación, construir el E que representa la transacción "listar reservas". Considera definidos los tipos Tfecha y Treserva, así 22

23 como las constantes TRUE, FALSE, EOF, COLA_VACIA. Las definiciones de las funciones de librería son las siguientes: int leer_reservas ( Treserva *); void imprimir_cabecera(); void imprimir(treserva); /* fichero listar_reservas.h */ #include "cola.h" #include "utiles.h" int buscar_reservas(tfecha f) { int final, cont = 0; Treserva r; while( leer_reservas(&r)!= EOF) if (r.fecha==f) { anadir_cola(r); cont++; return cont; int obtener_reservas() { Tfecha fecha; int cont_reservas; obtener_fecha_valida(&fecha); cont_reservas = buscar_reservas(fecha); if (contador_reservas >0) return TRUE; else return FALSE; void imprimir_reservas() { Treserva r; imprimir_cabecera() while (recuperar_cola(&r)!=vacia) imprimir(r); void listar_reservas() { int hay_reservas; vaciar_lista(); hay_reservas = obtener_reservas(); if (hay_reservas == TRUE) imprimir_reservas(); /* fichero cola.c */ static Tcola cola; /* vacia la cola de reservas */ void vaciar_cola() {... /* añade una reserva a la cola */ /* entrada= Reserva */ void anadir_cola(treserva re) {... /* recupera una reserva a la cola */ /* salida= Reserva, COLA_VACIA */ int recuperar_cola(treserva *re) {... Problema 15. (iagrama de Estructura) Gestionar compras código error datos compra válidos datos compra válidos datos cliente datos cliente datos cliente datos compra válidos código error datos compra compra válida Atender compra Generar factura Mostrar Error datos cliente datos compra registro producto eof registro compra eof registro producto datos compra Validar compra leer un producto Insertar una compra leer un producto datos cliente eof registro producto cliente leer un producto 23

24 a) Escriba las cabeceras de funciones C, invocaciones a otras funciones y variables locales necesarias correspondientes a los módulos del diagrama (que no sean de librería). Considere que están definidos los siguientes tipos en C: t_datos_cliente (asociado al flujo datos_cliente), t_datos_compra (asociado a los flujos de datos_compra y datos_compra_válidos), t_reg_producto (asociado a registro_producto), t_reg_compra (asociado a registro_compra). Además, los flujos eof, y código_error son de tipo entero. Ignore los módulos de tratamiento de entrada/salida (leer cadena, imprimir..). b) Indique las posibles deficiencias de diseño que presenta el diagrama de estructura y señale una forma de mejorar cada una de ellas (no es necesario dibujar el diagrama). Problema 16. (iagrama de Estructura) ibujar el diagrama de estructura para un programa que se encargue de leer 2 números enteros y positivos, calcule el producto de estos números e imprima el resultado. En caso de error debe desplegar un mensaje llamando al módulo de librería Mostrar Error. Problema 17. (iagrama de Estructura) ibuje el diagrama de estructura correspondiente al siguiente programa C. Los puntos suspensivos (... ) representan líneas de código que se han omitido por no ser relevantes para dibujar el iagrama de Estructura. void Mostrar_Error(int error){... void _Num_Tarjeta(char Num_Tarjeta[]) {... void _PIN(char *PIN) {... void Validar_Tarjeta_PIN_correctos(Numero_Tarjeta Num_Tarjeta,char *PIN,int *son_validos) {... void Validar_Num_Tarjeta_12digitos(char Num_Tarjeta[], int *es_valida){... void Validar_PIN_4_digitos(char *PIN, int *es_valido){... void _Num_Tarjeta_12digitos(Numero_Tarjeta *Num_Tarjeta_12digitos){ int es_tarjeta_12_digitos; char Num_Tarjeta[LON_TARJETA+1]; do{ _Num_Tarjeta(Num_Tarjeta); Validar_Num_Tarjeta_12digitos(Num_Tarjeta,&es_Tarjeta_12_digitos); if (!es_tarjeta_12_digitos) Mostrar_Error(ERR_TARJ_NO_12IG); while (!es_tarjeta_12_digitos); void _PIN_4digitos(char PIN_4digitos[]){ int es_pin_4digitos; do{ _PIN(PIN_4digitos); Validar_PIN_4digitos(PIN_4digitos,&es_PIN_4digitos); if (!es_pin_4digitos) Mostrar_Error(ERR_PIN_NO_4IG); while (!es_pin_4digitos); void _Num_Tarjeta_valido(Numero_Tarjeta *Num_Tarjeta_valido){ int es_tarjeta_valida; char PIN[LON_PIN+1]; do{ _Num_Tarjeta_12digitos(Num_Tarjeta_valido); _PIN_4digitos(PIN); Validar_Tarjeta_PIN_correctos(Num_Tarjeta_valido,PIN,&es_Tarjeta_valida); if (!es_tarjeta_valida) Mostrar_Error(ERR_PIN_INCORRECTO); while (!es_tarjeta_valida); 24

25 Problema 18. (iagrama de Estructura) Transforme el diagrama de estructura de la siguiente figura en el código C equivalente que se pueda deducir haciendo siempre uso de funciones que retornan void. etalle los tipos de datos, las cabeceras de funciones, las variables locales y las llamadas entre módulos. cod_cliente num_líneas líneas Compra Artículos nombre cod_cliente total líneas cod_cliente total num_líneas nombre Líneas Calcular Total Nombre Generar Factura onde los datos se definen como sigue: lineas: vector[50] de linea linea: estructura con los campos cod_prod: entero cantidad: entero precio:entero; cod_cliente: entero; num_lineas: entero; total:entero; nombre: cadena; Problema 19. (iagrama de Estructura) erive el código C que se pueda deducir del siguiente diagrama de estructura: cabeceras de función, llamadas a funciones y variables. etalle cómo se implementa el cluster. Todas las funciones deben tener como tipo de datos de retorno void. precio c_prod item item Cambia Precio item c_prod Item Añadir Item compra onde los datos se definen como sigue: 25

26 compra: vector[50] de producto producto: estructura con los campos cod_prod: entero cantidad: entero precio:entero; c_prod: entero; // código del producto item: producto; y el módulo CambiaPrecio le modifica el precio a un item Problema 20. (iagrama de Estructura) ibuje el iagrama de Estructura correspondiente al siguiente programa C. Los puntos suspensivos (... ) representan líneas de código que se han omitido por no ser relevantes para dibujar el iagrama de Estructura. // fichero validarusuarios.c #define MAXIMO 5; #define MAXIMO_INTENTOS 2; extern void ResetContador(); extern void IncrementarContador(); extern int ValorContador(); extern int Usuario(); void ContarRegistros(int nu) { { FILE *fichero; REG sreg; if ((fichero = fopen("usuarios, "rb"))==null) { printf("\nel fichero no se encuentra\n"); exit; ResetContador(); while (fread(&sreg, sizeof(sreg), 1, fichero)) if (sreg.id == nu) IncrementarContador(); fclose(fichero); int UsuarioVerificado(int * usuario) { reg_posicion pos; int numero_usuario; int intentos = 1; reg_avance avance; while (intentos < MAXIMO_INTENTOS ) { numero_usuario Usuario() ; ContarRegistros(numero_usuario) ; if ( MAXIMO > ValorContador()) break ; if ( intentos == 4 )return -1 ; else *usuario =numero_usuario ; return 0 ; //Salida: valor del contador //Salida: código de usuario // fichero contadores.c static int cont void ResetContador(){ cont =0; void IncrementarContador(){cont++; int ValorContador(){ return cont; 26

27 Problema 21. (Métodos de Especificación) El módulo Asignar osis Medicamento determina las dosis y la frecuencia adecuadas para la toma de un Medicamento en función de la Edad, el Sexo y el Peso del Paciente. Código A Medicamento Peso Sexo Edad Asignar osis Medicamento osis Frecuencia Código Medicamento Registro Medicamento LEER de MEICAMENTOS Los medicamentos se encuentran almacenados en el fichero de Medicamentos cuya definición es: MEICAMENTOS + Nombre_Medicamento + osis_máxima + Frecuencia + Composición a) ada la siguiente Tabla de ecisión, que describe el comportamiento de dicho módulo, describa mediante el método de interfaz-función y mediante pseudocódigo la lógica de dicho módulo Edad > 21 V V V V F F F F Sexo H H M M H H M M Peso > 70 V F V F V F V F osis = osis_máxima X X osis = osis_máxima / 2 X X osis = osis_máxima / 3 X X osis = Ninguna X X b) Puede simplificarse la Tabla de ecisión? Si la respuesta es afirmativa dibuje la tabla simplificada. Cómo repercutiría esta modificación sobre el iagrama de Estructura adjunto? Problema 22. (Métodos de Especificación) La calificación de un alumno de MTP se calcula en función de dos factores: la nota del examen de teoría (entre 0 y 10) y la evaluación de prácticas (Apto o No Apto). Es indispensable obtener el Apto en prácticas para poder aprobar la asignatura. En caso de que el alumno esté No Apto en prácticas, la Nota Final será la Nota de Teoría si ésta es inferior a 4; si la Nota de Teoría es superior a 4 la Nota Final será de 4. Para aquellos alumnos que estén Aptos en prácticas, la Nota Final es igual a la Nota de Teoría. En caso de detectarse que el alumno ha copiado la Nota Final será de 0. ibuje la Tabla de ecisión correspondiente al procedimiento descrito. 27

28 Problema 23. (Métodos de Especificación) Con el fin de mejorar su servicio, una biblioteca decide periódicamente la adquisición de nuevos ejemplares de los títulos de que ya dispone. Para ello tiene en cuenta, para cada título, la frecuencia con que es prestado, la antigüedad media de los ejemplares y la cantidad de unidades existente actualmente. Los criterios adoptados para la adquisición de nuevos ejemplares son los siguientes: Si un título tiene una frecuencia de préstamo mayor del 90 %, entonces se adquirirán nuevos ejemplares en función del número de unidades actuales: si hay menos de 10 unidades, se adquirirán 4 libros nuevos; si hay 10 o más ejemplares, se adquirirán 8 nuevos. Por otra parte, si la antigüedad media de los ejemplares de un título concreto es mayor de 5 años se adquirirán igualmente ejemplares nuevos, en función de la cantidad actual: si hay menos de 10 ejemplares, se adquirirá 1 libro nuevo; si hay 10 o más ejemplares, se adquirirán 4 nuevos. Si hay que adquirir unidades nuevas por los dos criterios considerados, es decir, tanto por frecuencia de préstamo como por antigüedad, se considerará la adquisición de mayor número (en ningún caso se considerará la suma de las adquisiciones de los dos criterios). a) ibuja la tabla de decisión completa que especifique el número de ejemplares a adquirir en función de las condiciones descritas. b) Simplifica en lo posible dicha tabla. c) ibuja el árbol de decisión correspondiente. Problema 24. (Métodos de Especificación) ada la siguiente tabla de decisión que indica si es posible jugar a tenis o no dependiendo de condiciones climatológicas, escriba un módulo en pseudocódigo que implemente esta tabla. iccionario de datos: Viento = fuerte (f) débil (d) Temperatura = entero Lluvia = booleano Temperatura < 12 T F F T F F T F F T F F 12 <= Temperatura <= 30 F T F F T F F T F F T F Temperatura > 30 F F T F F T F F T F F T Lluvia T T T F F F T T T F F F Viento d d d d d d f f f f f f Jugar tenis F F F F T F F F F F T F Problema 25. (Métodos de Especificación) Construya la tabla de decisión para calcular la cuota a cobrar y si se asegura o no vehículos en una compañía de seguros según las siguientes reglas del negocio: La parte variable de los vehículos depende de la cilindrada de los mismos según la función: B = C *0,1. La base de la cuota es de 20. Si tiene una edad > 30 años se le aplica un descuento proporcional a la edad, según la función = (E-30) *0,01. Sólo se pueden hacer seguros a personas de 18 años o más años. Si el vehículo es una moto, sólo se aseguran a conductores mayores de 28 años y con carné de conducir con una antigüedad mayor de 5 años. A la cuota resultante del seguro de las motos se le aplica un factor de corrección de un 1,5 para obtener la cuota final. 28

29 Problema 26. (Métodos de Especificación) Escriba el pseudocódigo que se puede derivar de la tabla de decisión siguiente. Realice las simplificaciones que considere necesarias A > n V V V V F F F F B > m V V F F V V F F C > p V F V F V F V F Hacer X X X X X Hacer Y X X X X Nada X X Problema 27. (Guías de iseño) ibujar el diagrama de estructura para un programa que se encargue de leer 2 números enteros y positivos, calcule el producto de estos números e imprima el resultado. En caso de error debe desplegar un mensaje llamando al módulo de librería Mostrar Error. Problema 28. (Guías de iseño) Partiendo de los siguiente módulos ya implementados cuya especificación interfaz-función es: LeeratosNIF = PROCEIMIENTO() EVUELVE (NI: vector[caracteres]; Letra: carácter) Efectos: Pide al usuario que introduzca el NI y la Letra. Comprueba que el NI es una secuencia de dígitos y que la Letra es un carácter alfabético. evuelve el NI y la Letra. CalcularLetraNIF = PROCEIMIENTO (NI: vector[caracteres]) EVUELVE (Letra: carácter) Efectos: ado un NI calcula y devuelve la Letra asociada. dibuje la rama aferente de un iagrama de Estructura que devuelva el NIF de un USUARIO. Las validaciones que deben realizarse son las siguientes: a) Comprobar que la letra es la correcta y b) Verificar que el usuario está registrado en el almacén de datos de USUARIOS. En caso de que el NIF introducido no sea válido (por cualquiera de los dos motivos anteriores) el sistema debe informar de ello al usuario. Haga uso de las guía de edición por niveles y detalle (factorice) todas las tareas que se lleven a cabo. Problema 29. (Guías de iseño) La siguiente figura muestra la rama aferente de un sistema de matrículas de alumnos en asignaturas. 29

30 Matrícula Válida Matrícula Matrícula NroExpediente Válido No cumple prerrequisitos NroExpediente Leer NroExpediente Alumno NroExpediente Válido Validar Nro Expediente NroExpediente Repetida Validar Matrícula no repetida Asignaturas Válidas lista de asignaturas CodAsig Válido Asignatura Hay Repetidas Asignaturas Validar no repetidas Asignaturas Validar Total Créditos NroExpediente RegAlumno Excede Créditos Validar prerrequisitos Leer Reg Alumno Ok CodAsig RegAsig Leer Reg Asignatura Ok RegAlumno NroExpediente Leer Reg Alumno Ok RegMatrícula CodAsig NroExpediente eof CodAsig Leer Reg Matrícula Leer Código Asignatura Válida Validar asignatura RegAsig CodAsig Ok Leer Reg Asignatura - Asignaturas (Válidas) es una estructura que contiene el conjunto de códigos de las asignaturas matriculadas. - Matrícula (Válida) es una estructura que contiene el número de expediente y el conjunto de códigos de las asignaturas matriculadas. - La estructura RegAlumno contiene también la información relativa al historial del alumno, incluyendo las asignaturas ya cursadas. a) Qué modificaciones deberían realizarse para incorporar el tratamiento de errores. b) Qué modificaciones deberían hacerse para que los prerrequisitos se validen en el momento de introducir una asignatura. c) Presente una solución de diseño que evite las lecturas repetidas de la información del alumno y de las asignaturas. ibuje sólo la parte del E que se modifique. d) Escriba el código C que es posible deducir para el módulo lista de asignaturas y sus módulos subordinados (sólo los que necesiten ser codificados). Utilice sólo funciones void y considere las siguientes declaraciones, que deberá incluir en las funciones que las necesiten: typedef struct { int CodAsig, char NombreAsig[30], int Creditos, int Prerrequisitos[5] RegAsignatura; int AsignaturasValidas[10], Asignaturas[10], CodAsigValido; int Valida, Ok, HayRepetidas, ExcedeCreditos, CodAsig; RegAsignatura RegAsig; Problema 30. (Guías de iseño) Reestructure el iagrama de Estructura de la figura de manera que: a) Se elimine la memoria estática utilizando un cluster. Considere para ello que una línea puede dar lugar a muchos campos y que un campo da lugar a un único número. b) El módulo jefe reciba adicionalmente el número de línea actual. 30

31 Fin numero Modulo Jefe Número Fin campo numero campo es número Fin campo Campo Valido campo Convertir a Número Linea Campo Validar Campo Fin Leer Linea Problema 31. (Guías de iseño) ibuje la rama aferente de un E que pida al usuario su NIF y realice las validaciones siguientes: Comprobar que el formato del dato introducido es correcto (8 dígitos y una letra), Comprobar que la letra del NIF es la correcta y Verificar que el usuario está registrado en el almacén de datos de USUARIOS. Si el NIF introducido no es válido (por cualquiera de los tres motivos anteriores) el sistema debe informar de ello al usuario. Problema 32. (Guías de iseño) A partir de las siguientes operaciones sobre el fichero de pacientes de un hospital, dibuje el cluster o cúmulo de información que considere más oportuno. Las operaciones son: A partir de número de la seguridad social (NSS) leer el registro completo. Comprobar si el paciente lo es por primera vez. Ver el número de veces que un paciente ha asistido a consultas. Nota: considere que NSS es el campo clave para acceder al registro de pacientes en el cual está toda la información necesaria. Utilice cualquiera de las notaciones para cluster vistas en la asignatura. Problema 33. (Guías de iseño) Modifique el siguiente diagrama incorporando un CLUSTER para evitar el flujo vagabundo número de línea. La descripción del sistema es la siguiente: En la rama aferente: lee líneas a la entrada del sistema formadas por un número fijo de campos numéricos. Comprueba si cada línea tiene el formato adecuado y construye un registro válido formado a partir de los campos que conforman la línea. evuelve el registro (Registro Válido) y el número de línea actual (Núm. Línea). En la transformación central: calcula el total (valor acumulado de los campos) para una línea. En la rama eferente: genera un listado en el cual imprime por cada línea: el núm. de línea, los campos del registro y el Total. LíneaE = { Campo 10 Registro = { entero 10 LíneaS = Núm. Línea + { Campo 10 + Total Campo 31

32 Registro Válido Núm. Línea Generar Totales Fin Núm. Línea Línea Válida Fin Línea Válida Núm. Línea Núm. Línea Registro Válido Registro Válido nº error Núm. Línea Registro Válido Línea Válida Formar Registro Calcular Total Total Registro Válido Núm. Línea Total Formatear e Imprimir Totales Total LíneaE Error Línea LíneaE Validar Línea Campos Numéricos Es Válida Error Registro Válido Formatear Línea LíneaS error Escribir Línea LíneaS Problema 34. (Guías de iseño) Se plantea el problema de construir un registro que contiene 10 campos etiquetados con un número de campo (del 1 al 10). Los campos se leen de forma aleatoria. A continuación se presentan dos aproximaciones para resolver esta cuestión. En la segunda de ellas se ha factorizado la tarea de construcción del registro. Qué desventajas plantea esta aproximación sobre la primera?. Registro Registro # campo campo registro campo # campo # campo campo registro campo # campo registro completo campo Rechazar Campo duplicado campo Construir registro campo # campo Rechazar Campo duplicado Problema 35. (Guías de iseño) La siguiente rama aferente proporciona una fecha lectiva. Organice el diagrama de forma que se respete la edición por niveles de los datos de entrada. Añada el tratamiento de errores. Considere que el módulo Validar Fecha Correcta comprueba que el día es posible para ese mes y año. 32

DISEÑO DE FUNCIONES (TRATAMIENTOS)

DISEÑO DE FUNCIONES (TRATAMIENTOS) DISEÑO DE FUNCIONES (TRATAMIENTOS) Diseño Estructurado. Estrategias para Derivar el Diagrama de Estructura. Diseño de Módulos Programables. 1. DISEÑO ESTRUCTURADO El Diseño es el proceso por el cual se

Más detalles

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 9: CRITERIOS DE CALIDAD DE DISEÑO MODULAR

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 9: CRITERIOS DE CALIDAD DE DISEÑO MODULAR Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 9: CRITERIOS DE CALIDAD DE DISEÑO MODULAR CRITERIOS DE CALIDAD DE DISEÑO MODULAR Conceptos generales Cohesión y acoplamiento

Más detalles

TEMA 12: CUALIDADES DE UN BUEN DISEÑO

TEMA 12: CUALIDADES DE UN BUEN DISEÑO Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 12: CUALIDADES DE UN BUEN DISEÑO Prof. José Vicente Álvarez Bravo CRITERIOS DE CALIDAD Los criterios son el acoplamiento y la

Más detalles

Ejercicio 1 (2 puntos. Tiempo: 25 minutos)

Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Fecha de publicación de notas: jueves 18 de Julio. Fecha de revisión: viernes 19 de Julio a las 10:00h. Despacho C-209. Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Se desea desarrollar un programa en C

Más detalles

Examen escrito de Programación 1

Examen escrito de Programación 1 Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 2 de septiembre de 2015 Se debe disponer sobre la mesa en lugar visible un documento

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

Creación de Funciones de Conducción

Creación de Funciones de Conducción Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado

Más detalles

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la

Más detalles

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE Técnicas de prueba El desarrollo de Sistemas de software implica la realización de una serie de actividades predispuestas a incorporar errores (en la etapa de definición de requerimientos, de diseño, de

Más detalles

EXAMEN DE METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN EUI-FI-UPV JUNIO DE 1999 Solución

EXAMEN DE METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN EUI-FI-UPV JUNIO DE 1999 Solución EXAMEN DE METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN EUI-FI-UPV JUNIO DE 1999 Solución 1. (0.5) Siguiendo el ciclo de vida clásico real especifique qué documentación genera cada fase como entrada para

Más detalles

Empresarial y Financiero NIVEL AVANZADO

Empresarial y Financiero NIVEL AVANZADO Curso de Excel Empresarial y Financiero NIVEL AVANZADO Rosa Rodríguez SESION 2: INDICE ANALISIS DE SENSIBILIDAD (3h) Validación de datos n Restricciones a la entrada de datos n Lista Dependiente n Administrador

Más detalles

Primer Parcial de Programación 3 (1/10/2009)

Primer Parcial de Programación 3 (1/10/2009) Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión

Más detalles

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03.

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03. INFORMÁTICA Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial Curso 2013-2014 v1.0 (05.03.14) A continuación figuran una serie de ejercicios propuestos, agrupados

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

2 EL DOCUMENTO DE ESPECIFICACIONES

2 EL DOCUMENTO DE ESPECIFICACIONES Ingeniería Informática Tecnología de la Programación TEMA 1 Documentación de programas. 1 LA DOCUMENTACIÓN DE PROGRAMAS En la ejecución de un proyecto informático o un programa software se deben de seguir

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

CONFIDENCIAL. Sistema (software) de Gestión de Compras, Ventas, Inventario y producción.

CONFIDENCIAL. Sistema (software) de Gestión de Compras, Ventas, Inventario y producción. Sistema (software) de Gestión de Compras, Ventas, Inventario y producción. 1.1.- Módulos del Sistema: El software esta implementado en Visual Foxpro para Windows. Se compone de los módulos o funciones

Más detalles

IAP 1009 - TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO)

IAP 1009 - TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO) IAP 1009 - TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO) Introducción 1. Como se indica en la Norma Internacional de Auditoría 401, "Auditoría en un contexto informatizado", los objetivos globales

Más detalles

Ejercicio 1 (3 puntos).-

Ejercicio 1 (3 puntos).- URJC Ingeniería Técnica de Gestión Abril 2011 Asignatura: SOFTWARE AVANZADO Normas: La prueba consta de 2 ejercicios. La máxima nota del examen es un 8. Siendo la práctica la que añade los 2 puntos que

Más detalles

MANUAL DE AYUDA PARA LA IMPORTACIÓN DE DATOS AL LIBRO REGISTRO DE OPERACIONES ECONÓMICAS

MANUAL DE AYUDA PARA LA IMPORTACIÓN DE DATOS AL LIBRO REGISTRO DE OPERACIONES ECONÓMICAS Se ha incorporado al programa de ayuda del Libro Registro de Operaciones Económicas publicado por la Diputación Foral de Bizkaia un módulo que permite realizar la importación de los registros de dicho

Más detalles

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los

Más detalles

Mantenimiento de Sistemas de Información

Mantenimiento de Sistemas de Información de Sistemas de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ACTIVIDAD MSI 1: REGISTRO DE LA PETICIÓN...4 Tarea MSI 1.1: Registro de la Petición... 4 Tarea MSI 1.2: Asignación de la Petición... 5 ACTIVIDAD

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

Diseño orientado al flujo de datos

Diseño orientado al flujo de datos Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA Perfil Entidad Proveedora El objetivo del módulo de Gestión de Solicitudes vía Internet es facilitar el trabajo

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

Práctica 2: Simón dice

Práctica 2: Simón dice Práctica 2: Simón dice Fecha de entrega: 31 de enero de 2016 0.- Descripción del juego (Wikipedia.org) Simon dice es un juego electrónico, creado por Ralph Baer, que consiste en reproducir una secuencia

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) Luis José Sánchez 1. Realiza un programa que sume los 100 números siguientes a un número entero y positivo introducido por teclado. Se debe

Más detalles

OBJETIVOS. Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos.

OBJETIVOS. Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos. / OBJETIVOS Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos. LABORATORIO 6 MANEJO DE ARCHIVOS DE TEXTO Y BINARIOS Msc. Walter Fernandez

Más detalles

NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión

NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión Introducción...2 Tipos de documentos...2 Datos de Cabecera...3 Nuevo Documento... 3 Modificar Documento... 4 Añadir, modificar y eliminar Artículos...5

Más detalles

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE ÍNDICE ACCESO A LA APLICACIÓN... 2 1.- HOMOLOGACIÓN DE CURSOS... 4 1.1.- INICIAR EXPEDIENTE... 4 1.2.- CONSULTA DE EXPEDIENTES... 13 1.3.- RENUNCIA A LA HOMOLOGACIÓN... 16 2.- MECÁNICA DE CURSOS... 19

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

Tema 5 Sentencias de control de flujo. Fundamentos de Informática

Tema 5 Sentencias de control de flujo. Fundamentos de Informática Tema 5 Fundamentos de Informática Sentencias de Control Tipos de sentencias de control: Comprobación lógica para bifurcar el flujo de un programa. Sentencias de control condicional o alternativo Comprobación

Más detalles

Hacer clic sobre la figura, para extraer todos los registros o presionar la tecla F2.

Hacer clic sobre la figura, para extraer todos los registros o presionar la tecla F2. b) Adicionar grados Para llevar a cabo esta operación el usuario deberá realizar los siguientes pasos: Recuperar la información, para realizar esta operación el usuario puede hacerla de las siguientes

Más detalles

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; TEMA 5. CONTROL DE FLUJO DEL PROGRAMA 5.1 Sentencias Una sentencia es una expresión seguida de un punto y coma. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; El ; es obligatorio

Más detalles

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Introducción Con la finalidad de mantenerte informado respecto a todos los cambios y mejoras de los productos de CONTPAQ i, ponemos a tu disposición

Más detalles

5.8. REGISTRO DE FACTURAS.

5.8. REGISTRO DE FACTURAS. 5.8. REGISTRO DE FACTURAS. Una factura es un documento probatorio de la realización de una operación económica que especifica cantidades, concepto, precio y demás condiciones de la operación. Este módulo

Más detalles

EJEMPLO DE CÁTEDRA. Enunciado:

EJEMPLO DE CÁTEDRA. Enunciado: EJEMPLO DE CÁTEDRA Enunciado: Para el Sistema de gestión de una Empresa que brinda Servicios de TV e Internet por Cable desarrollar: Examen Análisis estructurado Diseño Estructurado Consideraciones Una

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

Departamento de Soporte Occidente. Módulo Archivos. Seleccionar Nómina:

Departamento de Soporte Occidente. Módulo Archivos. Seleccionar Nómina: 1 Seleccionar Nómina: En ésta ventana se pueden observar las diferentes nóminas que están creadas en el sistema. Asimismo seleccionando alguna de ellas, se activara dicha nómina. 2 Tipos de Nómina: En

Más detalles

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Por favor siga las siguientes indicaciones: Escriba con lápiz y de forma prolija. Escriba las hojas de un solo lado Escriba su nombre y número de documento

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO 1º) Considérese un número estrictamente positivo del sistema de números máquina F(s+1, m, M, 10). Supongamos que tal número es: z = 0.d 1 d...d s 10 e Responde

Más detalles

Manual Oficina Web de Clubes (FBM)

Manual Oficina Web de Clubes (FBM) Manual Oficina Web de Clubes (FBM) INTRODUCCIÓN: La Oficina Web de Clubes de Intrafeb es la oficina virtual desde la que un club podrá realizar las siguientes operaciones durante la temporada: 1. Ver información

Más detalles

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,

Más detalles

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4

Más detalles

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto

Más detalles

Guía paso a paso para la cumplimentación del formulario de candidatura

Guía paso a paso para la cumplimentación del formulario de candidatura Guía paso a paso para la cumplimentación del formulario de candidatura INDICE 1. INSTRUCCIONES GENERALES... 2 2. PARTENARIADO... 4 3. GRUPOS DE TAREAS... 8 4. INDICADORES... 14 5. CUMPLIMENTACIÓN DEL RESTO

Más detalles

1. Descripción y objetivos

1. Descripción y objetivos Pruebas 1 1. Descripción y objetivos Las pruebas son prácticas a realizar en diversos momentos de la vida del sistema de información para verificar: El correcto funcionamiento de los componentes del sistema.

Más detalles

1.- INTRODUCCIÓN 2.- PARÁMETROS

1.- INTRODUCCIÓN 2.- PARÁMETROS 1.- INTRODUCCIÓN Hemos diseñado una aplicación que facilite el envío a las entidades bancarias de las de cobro por domiciliación. La entrada de esta aplicación pueden ser, tanto ficheros cuyos formatos

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Modularización Relación de ejercicios

Modularización Relación de ejercicios Modularización Relación de ejercicios 1. Diseñe una clase Cuenta que represente una cuenta bancaria y permita realizar operaciones como ingresar y retirar una cantidad de dinero, así como realizar una

Más detalles

BANCOS. Manejo de Bancos. Como crear una ficha de Banco? Como modificar los datos de una ficha de Banco? Como borrar una ficha de Banco?

BANCOS. Manejo de Bancos. Como crear una ficha de Banco? Como modificar los datos de una ficha de Banco? Como borrar una ficha de Banco? BANCOS El Sistema de Gestión Administrativa permite el manejo de los movimientos bancarios. Seleccionada la opción de Bancos, el sistema presentara las siguientes opciones. Manejo de Bancos Manejo de movimientos

Más detalles

Manual para la utilización de PrestaShop

Manual para la utilización de PrestaShop Manual para la utilización de PrestaShop En este manual mostraremos de forma sencilla y práctica la utilización del Gestor de su Tienda Online mediante Prestashop 1.6, explicaremos todo lo necesario para

Más detalles

Este documento proporciona la secuencia de pasos necesarios para la construcción de un Diagrama de Flujo. www.fundibeq.org

Este documento proporciona la secuencia de pasos necesarios para la construcción de un Diagrama de Flujo. www.fundibeq.org DIAGRAMA DE FLUJO 1.- INTRODUCCIÓN Este documento proporciona la secuencia de pasos necesarios para la construcción de un Diagrama de Flujo. Muestra la importancia de dos aspectos clave en este proceso:

Más detalles

Tema 2: La clase string

Tema 2: La clase string : string Programación 2 Curso 2013-2014 Índice 1 Cadenas de caracteres en C 2 Entrada / salida 3 entre vectores de caracteres y string 4 5 Cadenas de caracteres en C En C, las cadenas de caracteres tienen

Más detalles

SIIGO Pyme. Informes de Saldos y Movimientos de Inventarios. Cartilla I

SIIGO Pyme. Informes de Saldos y Movimientos de Inventarios. Cartilla I SIIGO Pyme Informes de Saldos y Movimientos de Inventarios Cartilla I Tabla de Contenido 1. Presentación 2. Qué son Inventarios? 3. Qué son Informes? 4. Qué son Informes de Saldos y Movimientos en Inventarios?

Más detalles

Práctica 1 El juego de los chinos

Práctica 1 El juego de los chinos Práctica 1 El juego de los chinos Fecha de entrega: 6 de diciembre Según una teoría, el conocido como juego de los chinos nació en el año 1787 en un pequeño pueblo de León. Felipe Valdeón Triguero, un

Más detalles

Árboles. Cursos Propedéuticos 2015. Dr. René Cumplido M. en C. Luis Rodríguez Flores

Árboles. Cursos Propedéuticos 2015. Dr. René Cumplido M. en C. Luis Rodríguez Flores Árboles Cursos Propedéuticos 2015 Dr. René Cumplido M. en C. Luis Rodríguez Flores Contenido de la sección Introducción Árbol genérico Definición y representación Árboles binarios Definición, implementación,

Más detalles

Diseño de bases de datos Diapositiva 1

Diseño de bases de datos Diapositiva 1 Diseño o de bases de datos Objetivos del Diseño Principios del Diseño de BD Proceso de Diseño Normalización Diseño de Tablas: Claves Relaciones Integridad referencial Convenciones de nomenclatura Diseño

Más detalles

GENERALIDADES DE BASES DE DATOS

GENERALIDADES DE BASES DE DATOS GENERALIDADES DE BASES DE DATOS A fin de evitar que idénticos datos se encuentren repetidos en múltiples archivos, parece necesario que los comunes se almacenen en un archivo único y que este archivo sea

Más detalles

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE)

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE) QUÉ SON CONCEPTOS PARAMÉTRICOS? Los conceptos paramétricos de Presto permiten definir de una sola vez una colección de conceptos similares a partir de los cuales se generan variantes o conceptos derivados

Más detalles

MANUAL DE USUARIO. Se deben seguir los siguientes pasos para la correcta instalación del módulo descargable:

MANUAL DE USUARIO. Se deben seguir los siguientes pasos para la correcta instalación del módulo descargable: MANUAL DE USUARIO La aplicación para la convocatoria Parques Científicos y Tecnológicos consta de un programa descargable más un módulo web. Mediante el módulo descargable, es posible cumplimentar todos

Más detalles

SINAUTO. (Captura Requirimientos) GRUPO 03

SINAUTO. (Captura Requirimientos) GRUPO 03 SINAUTO (Captura Requirimientos) GRUPO 03 Iker Jauregi ikerjauregivicente@hotmail.com Iñigo Arregui bateman2012@gmail.com Javier Arce arcjav@hotmail.com Jorge García. jgfand@gmail.com Patxi Campos.patxi948@wanadoo.es

Más detalles

DE VIDA PARA EL DESARROLLO DE SISTEMAS

DE VIDA PARA EL DESARROLLO DE SISTEMAS MÉTODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS 1. METODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMAS. El desarrollo de Sistemas, un proceso

Más detalles

Manual de Usuario Software Restaurante

Manual de Usuario Software Restaurante Manual de Usuario Software Restaurante Ingresando al sistema (Manual) Se ingresa el usuario Se ingresa la clave Presiona Aceptar para ingresar el sistema Ingresando al Sistema (Táctil) Lista de Usuarios

Más detalles

Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online

Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online Guías _SGO Gestione administradores, usuarios y grupos de su empresa Sistema de Gestión Online Índice General 1. Parámetros Generales... 4 1.1 Qué es?... 4 1.2 Consumo por Cuentas... 6 1.3 Días Feriados...

Más detalles

UNIVERSIDAD DE JAÉN Servicio de Gestión Académica. Nuevo proceso en la tramitación de las devoluciones de precios públicos a través de UXXI-AC

UNIVERSIDAD DE JAÉN Servicio de Gestión Académica. Nuevo proceso en la tramitación de las devoluciones de precios públicos a través de UXXI-AC Nuevo proceso en la tramitación de las devoluciones de precios públicos a través de UXXI-AC PROCEDIMIENTO EN LA GESTIÓN DE LAS DEVOLUCIONES El sistema generará recibos negativos sobre la base de los importes

Más detalles

MANUAL DE USUARIO DEL MÓDULO TPV

MANUAL DE USUARIO DEL MÓDULO TPV MANUAL DE USUARIO DEL MÓDULO TPV DE ABANQ Índice de contenido MANUAL DE USUARIO: MÓDULO TPV......3 1. ÁREA DE FACTURACIÓN::TPV Datos Generales...3 2. ÁREA DE FACTURACIÓN::TPV Agentes de TPV...4 3. ÁREA

Más detalles

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado.

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado. Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE II: CONCEPTOS TEÓRICOS Y PRÁCTICOS DNI Apellidos y nombre 1. Responde a las siguientes cuestiones (2 puntos): a) Cita y comenta brevemente

Más detalles

Estructura de datos y de la información Boletín de problemas - Tema 7

Estructura de datos y de la información Boletín de problemas - Tema 7 Estructura de datos y de la información Boletín de problemas - Tema 7 1. Un concesionario de coches tiene un número limitado de M modelos, todos en un número limitado de C colores distintos. Cuando un

Más detalles

Informes de activos fijos Versión 1.1. Tabla de contenidos. Informes de activos fijos

Informes de activos fijos Versión 1.1. Tabla de contenidos. Informes de activos fijos Informes de activos fijos Fecha: 23/03/2015 Tabla de contenidos Servicio de Coordinación y Apoyo al Área Económica ucpe@pas.ucm.es Informes de activos fijos... 1 Informes de activos fijos... 2 Inventario

Más detalles

I. T. en Informática de Sistemas. Facultad de Informática

I. T. en Informática de Sistemas. Facultad de Informática I. T. en Informática de Sistemas. Facultad de Informática Construcción de Software Caso práctico para clase Modelo de casos de uso Objetivos del proyecto Los dos grandes objetivos de este proyecto son

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Generalidades y conceptos Combinar correspondencia Word, a través de la herramienta combinar correspondencia, permite combinar un documento el que puede ser una carta con el texto que se pretende hacer

Más detalles

Formularios. Formularios Diapositiva 1

Formularios. Formularios Diapositiva 1 Formularios Crear un formulario utilizando el Asistente para formularios Modificación en vista Diseño Adición de Controles a un Formulario Adición de un Subformulario a un formulario Formularios Diapositiva

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

SIIGO Pyme. Elaboración Factura de Venta de Productos y Servicios. Cartilla I

SIIGO Pyme. Elaboración Factura de Venta de Productos y Servicios. Cartilla I SIIGO Pyme Elaboración Factura de Venta de Productos y Servicios Cartilla I Tabla de Contenido 1. Presentación 2. Qué es una Factura de Venta? 3. Qué Aspectos se Deben Tener en Cuenta al Momento de Elaborar

Más detalles

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido

Más detalles

Informática I. While & do While

Informática I. While & do While Asignatura: Informática I Trabajo práctico Nº5 While & do While Estructura repetitiva MIENTRAS o while En C la sentencia while (condición o expresión) instrucciones; es seguramente la más utilizada. La

Más detalles

Introducción a la Programación en MATLAB

Introducción a la Programación en MATLAB Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos

Más detalles

Manual de Usuario Comprador. Módulo Compra Express. www.iconstruye.com. Iconstruy e S.A. Serv icio de Atención Telefónica: 486 11 11

Manual de Usuario Comprador. Módulo Compra Express. www.iconstruye.com. Iconstruy e S.A. Serv icio de Atención Telefónica: 486 11 11 Manual de Usuario Comprador www.iconstruye.com Módulo Compra Express Iconstruy e S.A. Serv icio de Atención Telefónica: 486 11 11 Índice ÍNDICE...1 DESCRIPCIÓN GENERAL...2 CONFIGURACIÓN...3 FUNCIONALIDAD...4

Más detalles

SIIGO Pyme. Elaboración Documentos Ventas de Inventarios. Cartilla I

SIIGO Pyme. Elaboración Documentos Ventas de Inventarios. Cartilla I SIIGO Pyme Elaboración Documentos Ventas de Inventarios Cartilla I Tabla de Contenido 1. Presentación 2. Qué es una Factura de Venta? 3. Qué Aspectos se Deben Tener en Cuenta al Momento de Elaborar una

Más detalles

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón.

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón. 11. RECIBOS. Desde esta opción de Menú vamos a completar el proceso de gestión de los diferentes tributos, generando recibos, informes de situación, impresiones, etc. 11.1. GENERACIÓN DE RECIBOS. Una vez

Más detalles

Análisis y Diseño de Aplicaciones Ejercicios Hoja 5ª

Análisis y Diseño de Aplicaciones Ejercicios Hoja 5ª Ejercicio 25 Se pretende desarrollar un sistema informático para llevar la gestión de préstamos de una biblioteca. Las operaciones que se van a contemplar son la petición de libros y la devolución de libros.

Más detalles

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8.

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. 1.) (HOLUB). Escribir un traductor que reconozca definiciones de C siguiendo el estilo antiguo, tal como: prueba(uno, dos, tres, cuatro,

Más detalles

Notas de actualización Discovery 3.71

Notas de actualización Discovery 3.71 Notas de actualización Discovery 3.71 La información contenida en esta publicación está sujeta a cambios periódicos que serán incorporados en nuevas ediciones de la misma sin previo aviso. Buenos Aires

Más detalles

SISTEMA DE GESTIÓN ACADÉMICA.

SISTEMA DE GESTIÓN ACADÉMICA. SISTEMA DE GESTIÓN ACADÉMICA. MANUAL DE USUARIO Módulos y funciones en Syllabus+. Sección Gestión 1 CONTENIDO GESTIÓN 1. PAQUETE DE GESTIÓN 5 2. IMPEDIMENTOS Y AUTORIZACIONES 7 2.1. IMPEDIMENTOS 7 2.1.1.

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

EXAMEN DE METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN EUI - FI - UPV Junio de 2002 Responda únicamente en el espacio adjunto a cada pregunta.

EXAMEN DE METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN EUI - FI - UPV Junio de 2002 Responda únicamente en el espacio adjunto a cada pregunta. EXAMEN DE METODOLOGÍA Y TECNOLOGÍA DE LA PROGRAMACIÓN EUI - FI - UPV Junio de 2002 Responda únicamente en el espacio adjunto a cada pregunta. TIEMPO = 3 horas APELLIDOS: COMPRUEBE QUE EL EXAMEN CONSTA

Más detalles

Patrones para persistencia (I) Ingeniería del Software II

Patrones para persistencia (I) Ingeniería del Software II Patrones para persistencia (I) Ingeniería del Software II 1 Patrones para la construcción del esquema relacional En todos los ejemplos realizaremos transformaciones del siguiente diagrama de clases: Figura

Más detalles

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS Una situación que se nos plantea algunas veces es la de resolver un problema hacia atrás, esto es, encontrar

Más detalles

Contabilidad y Estados Financieros Programas de Gestión

Contabilidad y Estados Financieros Programas de Gestión PROGRAMAS DE GESTIÓN Programas de Gestión En cada Programa de la aplicación puede acceder, mediante el botón Contenido a una ayuda sobre el mismo, en la que se explica su funcionalidad y los conceptos

Más detalles

PROCEDIMIENTOS DE TÍTULOS. Para solicitar los títulos al finalizar determinadas enseñanzas es preciso seguir un proceso en la aplicación Plumier XXI.

PROCEDIMIENTOS DE TÍTULOS. Para solicitar los títulos al finalizar determinadas enseñanzas es preciso seguir un proceso en la aplicación Plumier XXI. PROCEDIMIENTOS DE TÍTULOS Para solicitar los títulos al finalizar determinadas enseñanzas es preciso seguir un proceso en la aplicación Plumier XXI. EVALUACIÓN Cuando se ha cursado el último curso de una

Más detalles

SIIGO Pyme. Elaboración Documentos de Activos Fijos. Cartilla I

SIIGO Pyme. Elaboración Documentos de Activos Fijos. Cartilla I SIIGO Pyme Elaboración Documentos de Activos Fijos Cartilla I Tabla de Contenido 1. Presentación 2. DOCUMENTO TIPO I - REQUISICION 2.1 Qué es una Requisición de Activos Fijos? 2.2 Qué Aspectos se Deben

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

Adelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 -

Adelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 - Graballo+ Agosto de 2007-1 - Índice Índice...2 Introducción...3 Características...4 DESCRIPCIÓN GENERAL...4 COMPONENTES Y CARACTERÍSTICAS DE LA SOLUCIÓN...5 Recepción de requerimientos...5 Atención de

Más detalles

ESTE EJERCICIO ES DE TIPO MIXTO.

ESTE EJERCICIO ES DE TIPO MIXTO. junio, 1ª semana, nacional 2012 ESTE EJERCICIO ES DE TIPO MIXTO. ES IRRELEVANTE SI CONTESTA A LA PREGUNTA DE TEST O NO. SIN EMBARGO, SE DEBE ESCANEAR DICHA HOJA JUNTO CON EL RESTO DE LA CONTESTACIÓN DEL

Más detalles