/*prova-lista-doppia.cpp*/

using namespace std;

#include <iostream>
#include "lista-doppia.h"

int main (void)
{
// Dichiara una lista
nodo *L;

// Inizializza la lista appena dichiarata
inizializza (L);

// Ciclo di inserimento dei dati nella lista ordinata
int n;
do {
cout << "Elemento da inserire (zero per terminare): ";
cin >> n;
if ( n != 0 )
inserisci_ordinato (L, n);
} while ( n != 0 );

cout << "Ecco il contenuto della lista:\n";
stampa (L);

// Ciclo di eliminazione di alcuni dati dalla lista
do {
cout << "Elemento da eliminare (zero per terminare): ";
cin >> n;

nodo *p = cerca (L, n);

if ( p != NULL ) {
cout << "Trovato! Ora lo cancello...\n";
cancella (L, p);
cout << "Ecco la lista dopo la cancellazione:\n";
stampa (L);
}
else
cout << "L'elemento da cercare non e' stato trovato.\n";
} while ( n != 0 );

return 0;
}