Documentos de Académico
Documentos de Profesional
Documentos de Cultura
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <iomanip>
#include <cstring>
struct Datos{
char Equip[30];
int ParJug;
float MedGol;
double MedFalt;
};
Datos LeerDatos( )
Datos L;
return(L);
class Nodo
Datos Dato;
Nodo *ant, *sig;
public:
Datos RegDatos(){return(Dato);}
char *RegEquip(){return(Dato.Equip);}
int RegParJug(){return(Dato.ParJug);}
float RegMedGol(){return(Dato.MedGol);}
double RegMedFalt(){return(Dato.MedFalt);}
Nodo *RegAnt(){return(ant);}
Nodo *Regsig(){return(sig);}
};
class LSE
public:
LSE( ) {st=ed=gen=NULL;}
void Imprimir();
void Eliminar();
};
void LSE::Insertar(Datos L)
if(st==NULL){
gen=new Nodo(L);
if(gen==NULL){
exit(1);
st=ed=gen;
else{
Nodo *p=gen;
gen=new Nodo(L);
if(gen==NULL){
exit(1);
p->ModSig(gen);
ed=gen;
void LSE::InsOrd(Datos L)
{
Nodo *p, *q;
if (st = NULL){
gen=new Nodo(L);
if(gen==NULL){
exit(1);
st=ed=gen;
else{
p=st;
gen=new Nodo(L,NULL,p);
p->ModAnt(gen);
st=gen;
else{
p=ed;
gen=new Nodo(L,p);
if(gen==NULL){
exit(1);
p->ModSig(gen);
ed=gen;
else{
p=st;
while(strcmp(L.Equip,p->RegEquip()) > 0){
p=p->Regsig();
q=p->RegAnt();
gen=new Nodo(L,p);
if(gen==NULL){
exit(1);
p->ModAnt(gen);
q->ModSig(gen);
aux=st;
while(strcmp(A,aux->RegEquip())!=0){
aux1=aux;
aux1=aux1->RegAnt();
aux=aux->Regsig();
if(aux==NULL){
return;
cout<<"Valor encontrado:";
cout<< aux->RegEquip()<<endl;
return;
void LSE::Modificar()
Datos NvoVal;
NvoVal=LeerDatos();
aux->ModDatos(NvoVal);
cout<<aux->RegEquip()<<"\t"
<<aux->RegParJug()<<"\t"
<<aux->RegMedGol()<<"\t"
<<aux->RegMedFalt()<<endl;
void LSE::Eliminar()
if(aux==st){
st=aux;
st=aux->Regsig();
aux->ModSig(NULL);
delete(aux);
else{
if(aux==ed){
ed=aux1;
aux1->ModAnt(aux->RegAnt());
aux1->ModAnt(NULL);
delete(aux);
void LSE::Imprimir()
cout<<endl<<"\t"<<i->RegEquip()<<"\t"<<
i->RegParJug()<<"\t"<<
i->RegMedGol()<<"\t"<<
i->RegMedFalt()<<endl<<endl;
cout<<i->RegEquip()<<"\t"<<
i->RegParJug()<<"\t"<<
i->RegMedGol()<<"\t"<<
i->RegMedFalt()<<endl<<endl;
int main ()
{
LSE E;
Datos S;
char valor[30];
char opc;
do
system("cls");
<<"\n1. Insertar"
<<"\n3. Modificar"
<<"\n4. Eliminar"
<<"\n5. Imprimir"
<<"\n0. Salir"
cin>>opc;
switch(opc)
case '1':
S=LeerDatos();
E.Insertar(S);
break;
case '2':
S=LeerDatos();
E.InsOrd(S);
E.Imprimir();
break;
case '3':
E.Imprimir();
cin>>valor;
E.Buscar(valor);
E.Modificar();
break;
case '4':
E.Imprimir();
cout<<"Buscar: ";
cin>>valor;
E.Buscar(valor);
E.Eliminar();
E.Imprimir();
break;
case '5':
E.Imprimir();
break;
system("pause");
}while(opc !='0');
return 0;