Prueba Técnica POO - 20190410 PDF
Prueba Técnica POO - 20190410 PDF
2. Algoritmos
Puede usar pseudocódigo o el lenguaje de su elección (C#, Java, etc.) para estos puntos.
a. Escriba un algoritmo que imprima los números del 1 al 100, pero con las siguientes
consideraciones:
Si el número es divisible por 3, se debe imprimir “Bin”
Si el número es divisible por 5, se debe imprimir “Go”
Si se cumplen ambas condiciones (divisible por 3 y por 5), se debe imprimir
“Bingo!”
c. Dada una cadena de texto compuesta por n palabras separadas por espacio (n > 1), escriba
un algoritmo para escribir las palabras de la cadena en orden inverso. Asuma la cadena
como un array de caracteres.
Ejemplo: Input: “prueba de lógica”, Output: “lógica de prueba”
1. Conceptos Básicos de Programación
Prueba Técnica 2. Algoritmos
3. Análisis y Modelado de Datos
Proceso Actual
ACME no cuenta con un sistema de información que administre los clientes, productos, cuentas de
ahorros, créditos entre otros, y el gerente de tecnología de ACME lo ha contratado a usted para
diseñar un modelado de datos que soporte y administre este nuevo volumen de información basado
en el siguiente requerimiento:
Historias de Usuario
Se necesita crear una base unificada de personas que corresponda a colaboradores, clientes
persona natural, clientes corporativos, proveedores, accionistas, representantes legales, entre
otros roles que ACME pueda definir más adelante. Una persona puede tener más de un rol.
Ejemplo: una persona puede ser cliente, accionista y colaborador a la vez. Las personas están
categorizadas en “Personas Naturales” y “Personas Jurídicas”.
Para Persona Natural se requiere almacenar datos básicos del individuo tales como Tipo de
Documento, Número de Documento, Nombres, Apellidos, Departamento de Residencia, y
Municipio de Residencia. Las Personas Naturales pueden ser mayores de edad con Cedula
de Ciudadanía, menores de edad con Tarjeta de Identidad y extranjeros con Pasaporte o con
Cedula de Extranjería.
Para Persona Jurídica se requiere almacenar los datos básicos de la empresa tales como NIT,
Razón Social, Tipo de Empresa (Sociedad Anónima, Limitada, Sociedad Colectiva etc.),
Representante Legal y Composición Accionaria (De uno a muchos accionistas); tanto el
representante legal como la composición accionaria pueden ser Personas Naturales y/o
Jurídicas. Las personas jurídicas solo manejan el tipo de documento NIT.
1. Conceptos Básicos de Programación
Prueba Técnica 2. Algoritmos
3. Análisis y Modelado de Datos
De acuerdo a la estrategia comercial, ACME desea crear dos nuevos productos orientados al
ahorro y el crédito rotativo llamados Cuenta de Ahorro y Tarjeta de Crédito.
Para el producto Tarjeta de Crédito se requiere generar un contrato de crédito que almacene
los datos de la franquicia (Visa, MasterCard, American Express o Diners), el Número de
Tarjeta emitida, el Cupo Aprobado, el Cupo Disponible, el Estado de la Tarjeta (ACTIVA o
INACTIVA) y los movimientos que han afectado los cupos como son Compras Nacionales
(-), Cuota de Manejo(-), Pago de Tarjeta(+) y Retiros por Avance(-), cada transacción debe
almacenar la Fecha de la Transacción y un Numero Único de Transacción. Una tarjeta de
crédito solo puede ser asignada a un titular.
Para dar cumplimiento a esta necesidad es necesario que usted complete los siguientes puntos:
1. Construir un modelo entidad relación que soporte las dos historias de usuario. El modelo
entidad relación debe contener las tablas y sus respectivas relaciones, los campos, tipos de
datos e información de llaves primarias y foráneas.
2. Sobre el modelado diseñado por usted, construya consultas de SQL para obtener los
siguientes resultados