====== 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á