예제 #1
0
void inicializaABC(Lista<TipoElemento>& l){
    Persona* x;
    posicion i;
    int valorClave=1,cuenta=0;

    for(i=l.primero();cuenta<MAX_ELEMENTOS_LISTA;cuenta++){
        cout << "Llenando con clave " << valorClave << endl;
        x=new Persona(valorClave++,"El ");
        x->nombre+=intToString(x->clave);
        x->nombre+="o.";
        l.inserta(x,i);
        i=l.siguiente(i);
    }
}
예제 #2
0
void inicializaABC(Lista<TipoElemento>& l){
    Persona x;
    posicion i;
    int valorClave=1;

    i=l.primero();
    while(!l.estaLlena()){
        cout << "Llenando con clave " << valorClave << endl;
        x.clave=valorClave++;
        x.nombre="El ";
        x.nombre+=intToString(x.clave);
        x.nombre+="o.";
        l.inserta(x,i);
        i=l.siguiente(i);
    }
}
예제 #3
0
int main()
{
    Lista lis;
    Persona buscable,insertable,recuperado;
    posicion p;

    imprimirCentrado("TDA Lista con clases","#");
    pausar();
    cout << endl;
    inicializaABC(&lis);
    pausar();
    cout << "Imprimiendo lista:" << endl;
    lis.imprimeLista();
    pausar();
    insertable.clave=26;
    insertable.nombre="El insertado 26 al principio";
    cout << "Tratando de insertar..." << endl;
    lis.inserta(&insertable,lis.primero());
    pausar();
    buscable.clave=5;
    buscable.nombre="Uno con clave 5";
    cout << "Buscando elemento..." << endl;
    lis.imprimeElemento(&buscable);
    cout << endl;
    pausar();
    p=lis.localiza(&buscable);
    cout << "Localizado elemento en posicion p=" << p << "..." << endl;
    pausar();
    cout << "Imprimiendo lo que recibi de posicion" << endl;
    lis.imprimeElemento(lis.recupera(p));
    cout << endl;
    pausar();
    recuperado=*lis.recupera(p);
    cout << "El elemento recuperado es: ";
    lis.imprimeElemento(&recuperado);
    cout << endl;
    pausar();
    cout << "Suprimiendo elemento en posicion p=" << p << endl;
    lis.suprime(p);
    lis.imprimeLista();
    cout << "Insertando al principio de la lista..." << endl;
    lis.inserta(&insertable,lis.primero());
    pausar();
    cout << "Imprimiendo lista:" << endl;
    lis.imprimeLista();
    cout << "Elemento recuperado antes de suprimir de la lista: ";
    lis.imprimeElemento(&recuperado);
    cout << endl << "Eliminando ultimo elemento de la lista" << endl;
    lis.suprime(lis.anterior(lis.fin()));
    pausar();
    lis.imprimeLista();
    cout << "Insertando al final de la lista" << endl;
    insertable.clave=27;
    insertable.nombre="El insertado 27 al final";
    lis.inserta(&insertable,lis.fin());
    pausar();
    lis.imprimeLista();
    pausar();
    imprimeListaInversa(&lis);
    return 0;
}