Hola

Solo disponible en BuenasTareas
  • Páginas : 7 (1613 palabras )
  • Descarga(s) : 0
  • Publicado : 3 de marzo de 2011
Leer documento completo
Vista previa del texto
Curso 2009/2010 Estructura de Datos y de la Información I. Informática, I. T. Informática de Gestión y de Sistemas PRÁCTICA 1 1 El problema
El objetivo de este trabajo es practicar la independencia de la implementación en los tipos abstractos de datos (TADs). Se trata de implementar la gestión de partidas de cartas entre varios jugadores. Los jugadores se organizan en 2 equipos y se enfrentanpor rondas. En cada ronda se enfrentan 2 jugadores, uno de cada equipo, y la gana aquel con la mejor carta. Cada jugador llevará un contador de victorias, que indicará cuántas rondas lleva ganadas en la partida. En esta primera práctica se abordará las tareas de gestión de jugadores, incluyendo altas y bajas de los mismos así como la actualización de sus victorias, usando una lista ordenada.

2TAD Lista Ordenada
Para mantener la lista de jugadores se utilizará un TAD Lista Ordenada en el que se registran los jugadores de manera ordenada con respecto a su código. Se realizarán dos implementaciones del TAD Lista Ordenada: una estática con arrays (unit ListaOrdEstatica.pas) y otra dinámica, simplemente enlazada, con punteros (unit ListaOrdDinamica.pas). 2.1 Tipos de datos incluidos en elTAD Lista Ordenada Representa una lista ordenada alfabéticamente por código. Código de jugador (string). Número de victorias (entero). Dato de un elemento de la lista, compuesto por los campos CódigoJugador y Victorias que contienen el código asociado al jugador y el numéro de victorias asociado, respectivamente. Posición de un elemento de la lista. Constante utilizada para representar posicionesnulas.

● tListaOrd ● tCodigoJugador ● tNumVictorias ● tJugador

● tPos ● NULO 2.2

Operaciones incluidas en el TAD Lista Ordenada

Una precondición común para todas las operaciones (salvo ListaVacia) es que la lista debe estar previamente inicializada. ● ListaVacia (tListaOrd) → tListaOrd
Crea una lista vacía.

● esListaVacia (tListaOrd) → Boolean
Determina si la lista está vacía

●Primero (tListaOrd) → tPos
Devuelve la posición del primer elemento de la lista (o NULO si la lista está vacía).

● Ultimo (tListaOrd) → tPos
Devuelve la posición del último elemento de la lista (o NULO si la lista está vacía).

1

● Siguiente (tListaOrd, tPos) → tPos
Devuelve la posición en la lista del siguiente elemento a la posición indicada (o NULO si la posición no tiene siguiente).PreCD: La posición tiene que ser válida.

● Anterior (tListaOrd, tPos) → tPos
Devuelve la posición en la lista del anterior elemento a la posición indicada (o NULO si la posición no tiene anterior). PreCD: La posición tiene que ser válida.

● InsertarOrdenado(tListaOrd,tCodigoJugador,tNumVictorias)
Boolean



tListaOrd,

Inserta en la lista un nuevo jugador con código tCodigoJugadory número de victorias asociado tNumVictorias. La lista quedará ordenada con respecto al código de jugador. Devuelve un valor falso si no hay memoria suficiente para realizar la operación. PreCD: No existe en la lista un jugador con ese código.

● Borrar (tListaOrd, tPos) → tListaOrd
Borra de la lista el elemento que está en la posición indicada. PreCD: La posición tiene que ser válida.

●ObtenerDato (tListaOrd, tPos)→ tJugador
Devuelve la información que se encuentra en la posición indicada de la lista. PreCD: La posición tiene que ser válida.

● ActualizaDato(tListaOrd,tPos,tNumVictorias)→ tListaOrd
Actualiza con el nuevo número de victorias el jugador de la posición tPos de la lista. PreCD: La posición tiene que ser válida.

● Buscar (tListaOrd, tCodigoJugador) → tPosDevuelve la posición del elemento con código tCodigoJugador (o NULO si el elemento no existe).

3 Descripción de la tarea
El alumno diseñará un único programa principal (principal.pas) que lea, a través de un fichero, los diferentes jugadores que van a participar en el juego. El programa funcionará en modo batch (sin interactividad con el usuario) y de manera independiente con cada una de las dos...
tracking img