Código
# include <conio> # include <iostream> # include <stdlib> # define cant 4 class nodo {public: int info; nodo *sig; nodo(int a) {info=a; sig=NULL;} }; class listac {public: nodo *cab; listac(){cab=NULL;} void insertar(int a); void mostrar(); bool buscar(int a); void extraer(int a); }; int main() {int a=0; listac obj; for(int i=1;i<=cant+1;i++) {cout<<"Digite El Elemento "<<i<<" De La Lista: "; cin>>a; cout<<endl; obj.insertar(a);} obj.mostrar(); cout<<"Digite El Numero a Buscar: "; cin>>a; if(obj.buscar(a)==true) cout<<"El Numero Buscado Existe En La Lista"; else cout<<"El Numero Buscado No Existe En La Lista"; cout<<"Digite El Numero a Extraer De La Lista: "; cin>>a; obj.extraer(a); obj.mostrar(); getch(); return 0; } void listac::insertar(int a) {nodo *nuevo=new nodo(a); if(!cab) {nuevo->sig=nuevo; cab=nuevo;} else {nuevo->sig=cab->sig; cab->sig=nuevo;} }//cierro Insertar void listac::mostrar() {nodo *p=cab; do{p=p->sig; cout<<p->info<<" ";} while(p!=cab); } bool listac::buscar(int a) {nodo *p=cab; do{p=p->sig; if(p->info==a) {return true;}} while (p!=cab); return false;} void listac::extraer(int a) {nodo*p=cab; do{p=p->sig; if(p->info=a) {while(cab->sig!=p) {cab=cab->sig; cab->sig=p->sig; delete p; break;}//cierro while }//cierro if }//cierro do while (p!=cab); }