====== Exámen Parcial - 75.41. Algoritmos y Programación II ====== **Cátedra:** Mandrafina\\ **Fecha:** Tercera Oportunidad - Segundo Cuatrimestre 2005\\ **Día:** 22/02/2006 Esta página está incompleta; podés ayudar completando el material. ===== Enunciado ===== ==== Punto I ==== Implementar una función, que dados dos punteros a vectores de Char de 2 posiciones, haga un SWAP de los contenidos, sin asignar referencias. ==== Punto II ==== En base a un TDA Carácter que existe, modelar e implementar el TDA Oración. Las características de una Oración son: - **//Divisible//**: puede obtenerse una Oración a partir de otra, mediante un rango de posiciones. - **//Concatenable//**: dadas dos oraciones, se crea una tercera como resultado de unir una con otra. - **//Posición//**: posición de un Carácter o secuencia de caracteres dentro de una Oración, si no existe, devuelve la constante correspondiente. ==== Punto III ==== La Empresa “ALGORITMIA” ha contratado el **diseño** y la **implementación** para la obtención de un Informe con todos los CLIENTES a los que NO se les despacharon sus pedidos: * Ordenado en forma descendente por CANTIDAD A ENTREGAR TOTAL del artículo. * Dentro de cada Grupo de Articulo en forma ascendente por FECHA de PEDIDO, según se muestra: **Nro_Artículo:** XXXX ^Nro_Cliente ^Razon_Social ^Fecha_Pedido ^Cantidad_Entregar ^ | 000001 | RS AAAAA | 01-01-2006 | 100 | | 000006 | RS BBBBB | 01-05-2006 | 300 | **Total:** 400 unidades **Nro_Artículo:** YYYY ^Nro_Cliente ^Razon_Social ^Fecha_Pedido ^Cantidad_Entregar ^ | 000017 | RS CCCCC | 03-05-2006 | 60 | | 010305 | RS DDDDD | 21-05-2006 | 200 | | 004789 | RS EEEEE | 18-08-2006 | 10 | **Total:** 270 unidades Para dicho informe se cuenta con la siguiente información: ^Pedidos ^Despachos ^Clientes ^ |**Nro_Pedido** (int)|**Nro_Pedido** (int)|**Nro_Cliente** (int)| |Nro_Cliente (int)|Fecha_Despacho (ddmmaaaa)|Razon_Social (string[50])| |Nro_Articulo (int)| | | |Cantidad_Unidades (int)| | | |Fecha_Pedido (ddmmaaaa)| | | Notas: * Hay un solo Artículo por Pedido. * Los Archivos se pueden recorrer secuencialemente, a lo sumo, una vez. ===== Resolución ===== ==== Punto I ==== #include using namespace std; void swap(char* a[2], char* b[2]){ char* aux[2]; *aux = *a; *a = *b; *b = *aux; } int main() { //declaro char* a[2]; char* b[2]; //inicializo *a = "aa"; *b = "bb"; //llamo a la función swap(a,b); return 0; } ===== Discusión ===== Si ves algo que te parece incorrecto en la resolución y no te animás a cambiarlo, dejá tu comentario acá