Você está na página 1de 3

Grupo

Actividad obligatoria N 6
Tads a utilizar: automvil y lista.
El TAD automvil se contiene los tipos de datos y mdulos vinculados a TAD2
ne los tipos de datos y mdulos relacionados con...
Contenido del TAD1: automovil

lista

Los tipos de datos del TAD1 son:


typedef struct{
t_cadena patente;
t_cadena nombre;
long telefono;
long fecha;
short complejidad;
}Tauto;
Estos tipos de datos son utilizados para el uso del registro Tauto, Estos tipos
de datos son pblicos, por lo tanto esta definicin est contenida en el archivo autom
ovil.h.
Los mdulos del TAD automovil son:
CargarUno.
MostrarUno.
Retornarcomplejidad.
Retornarfecha.
Cargaruno:Es utilizado para cargar los campos del registro TAuto . Este modulo es p
ublico, el prototipo se encuentra definido en automovil.h
el prototipo del modulo es:
Tauto CargarUno(); no tiene parametros.
MostrarUno:Utilizado para mostrar todos los campos del registro, Este modulo es
publico, el prototipo se encuentra definido en automovil.h
el prototipo del modulo es:
void MostrarUno(Tauto); Recibe por parametros un registro Tauto que es utilizado p
ara mostrar cada campo del registro.
Retornarcomplejidad: retorna la complejidad de reparacin de cada auto,
su prototipo tiene como parmetro un registro de tipo Tauto, que es utilizado par
a tomar el valor que tiene el campo complejidad . su prototipo es:
short Retornarcomplejidad(Tauto);
Retornarfecha:: retorna la fecha de ingreso de cada auto,
su prototipo tiene como parmetro un registro de tipo Tauto, que es utilizado par
a tomar el valor que tiene el campo fecha . su prototipo es:
long Retornarfecha(Tauto);
leecad carga una cadena de caracteres, se pueden cargar los campos "patente" y "
nombre" este modulo es privado por lo tanto nose encuentra en automovil.h y su p
rototipo es int leeCad(t_cadena cadena, int tam).
Los mdulos del TAD lista

son:

Iniciar: Inicializa el tamao de la lista en cero; Este modulo es publico y se enc


uentra en lista.h el prototipo del modulo es: void Iniciar(Tlistadeautos*);
ListaVacia Retorna un entero corto 1 si la lista esta vacia, 0 si no lo esta, el
prototipo del modulo es
short ListaVacia(int);

contie

ListaVacia Retorna un entero corto 1 si la lista esta llena, 0 si no lo esta, el


prototipo del modulo es
short ListaLlena(int); al igual que listavacia recibe como parametro un entero q
ue es el tamao de la lista.
RetornarTamanio retorna el tamao de la lista, su prototipo es
int RetornarTamanio(Tlistadeautos);
Insertar inserta en una posicion del vector un registro, el prototipo es
void Insertar(Tlistadeautos*,Tauto, int); tiene como parametros al la lista de r
egistros que es pasado por referencia por que la lista va a ser modificada, un v
ector pasado por valor que va a ser insertado en una posicion que tambien es pas
ada por valor como parametro.
Borrar elimina un elemento en una posicion de la lista, el prototipo es
void Borrar(Tlistadeautos *, int); recibe la lista por valor, por que va a ser m
odificada, y tambien recibe la posicion del elemento a eliminar.
Ordenar ordena el vector, void Ordenar(Tlistadeautos *, int); ordena el vector s
egun el campo "fecha" recibe como parametro la lista de registro por referencia.
Mostrar muestra todos los elementos de la lista, su prototipo es void Mostrar(Tl
istadeautos);
Buscar busca una patente en la lista, su prototipo es: int Buscar(T_listadeauto,
long); tiene como parametro la lista de auto por valor ya que no va a ser modifi
cada, y tambien una cadena de caracteres ese tipo de dato.
principal.c:
#include "lista.h"
#include <stdio.h>
void mostraropc();
int elegiropc();
int main(void){
int opc,gc;
long patente;
Tlistadeautos lista;
mostraropc();
elegiropc();
Insertar(&lista,CargarUno(lista.lis),RetornarTamanio(lista));
do{
switch(opc){
case 1: Insertar(&lista,CargarUno(lista.lis),RetornarTamanio(lis
ta));
break;
case 2:
printf("\n Ingresar un grado de complejidad");
scanf("%d", &gc);
Ordenar(&lista, gc);
break;
case 3:
printf("\n Ingresar una patente ");
scanf("%ld", &patente);
Borrar(&lista,(Buscar(lista,patente)));
break;
case 4: Mostrar(lista);

break;
}
}while(opc!=0);
return 0;
}
void mostraropc(){
printf("1-\nIngresar a una lista de espera los vehculos a reparar.");
printf("2-\nDado un grado de complejidad (gc), listar ordenado segn antige
dad");
printf("3-\nDada la patente de un vehculo, quitarlo de la lista de espera
.");
printf("4-\nMostrar el o los vehculos ms antiguos en la lista de espera.")
;
printf("-0 salir");
}
int elegiropc(){
int opc;
do{
printf("\nIngresar opcion");
scanf("%d", &opc);
} while((opc<4)&&(opc<0));
return opc;
}

Você também pode gostar