/** Considere el TAD Tabla no acotada (también llamado Mapping o Asociación) con elementos del dominio D y elementos del rango R, conteniendo un conjunto mínimo de operaciones para: -Crear una Tabla vacía. -Determinar si una Tabla es vacía o no. -Insertar parejas (d, r), con d en D y r en R, tal que se define T(d) = r, independientemente de que T(d) estuviera ya definido. -Determinar si T(d) está definido. -Supresiones, que borran T(d) de la tabla, si está definido. Recuperar el valor T(d), si está definido en la tabla. */ //Devuelve una tabla vacia no acotada Tabla crearTabla(); //Devuelve True si y solo si la tabla t es vacia bool esVaciaTabla(Tabla t); //Asocia a d en la tabla t el valor r. Si d ya estaba asociado a otro valor, lo asocia al nuevo r. void insertarTabla(Tabla &t, D d, R r); //Devuelve true si y solo si d esta definido en t bool estaDefinidoTabla(Tabla t, D d); //Borra a d de la tabla t //PRE: estaDefinidoTabla(t,d) void borrarEnTabla(Tabla &t, D d); //Retorna el valor de r asociado a d en la tabla t //PRE: estaDefinidoTabla(t,d) R recuperarEnTabla(Tabla t, D d); /* ¿Qué modificaciones deberían hacerse a la especificación anterior para obtener una especificación del TAD Tabla acotada?*/ //Devuelve una tabla vacia acotada de tamano N (cantidad de asociaciones (d,r)) Tabla crearTabla(int N); //Devuelve true si y solo si la tabla esta llena (llego a su tope de asociaciones) bool estaLlenaTabla(Tabla t); //Asocia a d en la tabla t el valor r. Si d ya estaba asociado a otro valor, lo asocia al nuevo r. //PRE: estaDefinidoTabla(Tabla t, D d) || !estaLlenaTabla(Tabla t) void insertarTabla(Tabla &t, D d, R r); #include int main() { printf("Hello World"); return 0; }