SlideShare una empresa de Scribd logo
1 de 7
Instituto universitario politécnico
“Santiago Mariño”
Extensión Porlamar
Escuela de ingeniería de sistemas
Estructura de datos
Ejercicio de Listas simples
Bachiller:
Placencio Johana
C.I:19.909.628
Prof. Maria Langone
Porlamar, Febrero
#include "Lista.h"
#include "Carro.h"
#include "Furgoneta.h"
#include "Camion.h"
#include "Moto.h"
using namespace std;
Lista::Lista()
{
//aqui es cabeza = 0 y tama = o
cabeza = 0;
tama = 0;
}
bool Lista::existeElemento(string dato)
{
Nodo *actual = cabeza;
while(actual!=0)
if(actual->verDato()->verPlaca()==dato)
return true;
else
actual = actual->verSiguiente();
return false;
}
int tipos()
{
int tipo;
cout<<"Seleccione el tipo de vehiculo"<<endl;
cout<<"1 Carro"<<endl;
cout<<"2 Moto"<<endl;
cout<<"3 Furgoneta"<<endl;
cout<<"4 Camion"<<endl;
cin>>tipo;
return tipo;
}
void Lista::agregarNodo()
{
string placa,color,marca,modelo;
cout<<"Ingresar placa del auto"<<endl;
cin>> placa;
cout<<"Ingresar color del auto"<<endl;
cin>> color;
cout<<"Ingresar marca del auto"<<endl;
cin>> marca;
cout<<"Ingresar modelo del auto"<<endl;
cin>> modelo;
Vehiculos * vehiculo;
switch(tipos())
{
case 1: vehiculo = new Carro(placa,color,marca,modelo);break;
case 2: vehiculo = new Moto(placa,color,marca,modelo);break;
case 3: vehiculo = new
Furgoneta(placa,color,marca,modelo);break;
case 4: vehiculo = new Camion(placa,color,marca,modelo);break;
default:
cout<<"Tipo de vehiculo desconocido.nVehiculo no
agregado!"<<endl;
return;
}
agregarNodo(new Nodo(vehiculo));
}
Lista& Lista::operator<<(Nodo* dato)
{
if(cabeza==0) cabeza = dato;
Nodo *actual = cabeza;
for(int i=1; i<tama;i++)
actual = actual->verSiguiente();
actual->modificarSiguiente(dato);
tama++;
return *(this);
}
Nodo * Lista::operator[](int posicion)
{
Nodo *actual = cabeza;
for(int i=0; i>posicion-1; i++)
actual=actual->verSiguiente();
actual->modificarSiguiente(actual->verSiguiente()->verSiguiente());
return actual;
}
void Lista::agregarNodo(Nodo*dato)
{
if(cabeza==0) cabeza = dato;
Nodo *actual = cabeza;
for(int i=1; i<tama;i++)
actual = actual->verSiguiente();
actual->modificarSiguiente(dato);
tama++;
}
void Lista::imprimirLista()
{
Nodo *actual = cabeza;
Vehiculos * vehiculoActual;
while(actual!=0)
{
vehiculoActual = actual->verDato();
cout<<vehiculoActual->verPlaca()<<'t';
cout<<vehiculoActual->verTipo()<<'t';
cout<<vehiculoActual->verColor()<<'t';
cout<<vehiculoActual->verMarca()<<'t';
cout<<vehiculoActual->verModelo()<<'t';
cout<<endl;
actual = actual->verSiguiente();
}
}
int Lista::numeroNodos()
{
return tama; //solo dice return tama;
}
void Lista::eliminarElementoPorDato(const string& dato)
{
Nodo *anterior=0,*actual = cabeza;
while(actual!=0)
{
if( (actual->verDato()->verPlaca()==dato) && (anterior!=0) )
{
anterior->modificarSiguiente(actual->verSiguiente());
tama--;
return;
}
anterior = actual;
actual=actual->verSiguiente();
}
}
void Lista::eliminarElementoPorPosicion(int posicion)
{
Nodo *actual = cabeza;
for(int i=0; i>posicion-1; i++)
actual=actual->verSiguiente();
actual->modificarSiguiente(actual->verSiguiente()->verSiguiente());
tama--;
}
bool Lista::listaVacia()
{
if(tama==0)
return true;
return false;
}
}
bool Lista::listaVacia()
{
if(tama==0)
return true;
return false;
}

Más contenido relacionado

Destacado

A.student demonstration #2; preliminary decisions about the writing situation
A.student demonstration #2; preliminary decisions about the writing situationA.student demonstration #2; preliminary decisions about the writing situation
A.student demonstration #2; preliminary decisions about the writing situationEllen O'Meara
 
State of Equity Policy Agenda FINAL tagged
State of Equity Policy Agenda FINAL taggedState of Equity Policy Agenda FINAL tagged
State of Equity Policy Agenda FINAL taggedJessie Grogan
 
Equity-Report_12-14_150ppi
Equity-Report_12-14_150ppiEquity-Report_12-14_150ppi
Equity-Report_12-14_150ppiJessie Grogan
 
Configuracion secciones y estilos (1)
Configuracion secciones  y  estilos (1)Configuracion secciones  y  estilos (1)
Configuracion secciones y estilos (1)Dayanna96nena
 
Los Cromosomas
Los CromosomasLos Cromosomas
Los CromosomasOLIETH REA
 
Micro electronic pill
Micro electronic pillMicro electronic pill
Micro electronic pillSajan CK
 
25.11.2016 Голодомор
25.11.2016 Голодомор25.11.2016 Голодомор
25.11.2016 ГолодоморAlexey Musienko
 

Destacado (13)

A.student demonstration #2; preliminary decisions about the writing situation
A.student demonstration #2; preliminary decisions about the writing situationA.student demonstration #2; preliminary decisions about the writing situation
A.student demonstration #2; preliminary decisions about the writing situation
 
State of Equity Policy Agenda FINAL tagged
State of Equity Policy Agenda FINAL taggedState of Equity Policy Agenda FINAL tagged
State of Equity Policy Agenda FINAL tagged
 
Equity-Report_12-14_150ppi
Equity-Report_12-14_150ppiEquity-Report_12-14_150ppi
Equity-Report_12-14_150ppi
 
Configuracion secciones y estilos (1)
Configuracion secciones  y  estilos (1)Configuracion secciones  y  estilos (1)
Configuracion secciones y estilos (1)
 
Configuracion,secciones, estilos.
Configuracion,secciones, estilos.Configuracion,secciones, estilos.
Configuracion,secciones, estilos.
 
Los Cromosomas
Los CromosomasLos Cromosomas
Los Cromosomas
 
Saigua karina
Saigua karinaSaigua karina
Saigua karina
 
0221
02210221
0221
 
Micro electronic pill
Micro electronic pillMicro electronic pill
Micro electronic pill
 
25.11.2016 Голодомор
25.11.2016 Голодомор25.11.2016 Голодомор
25.11.2016 Голодомор
 
Sample report
Sample reportSample report
Sample report
 
Auditorium Acoustics
Auditorium AcousticsAuditorium Acoustics
Auditorium Acoustics
 
Menjadi Seperti Yesus
Menjadi Seperti YesusMenjadi Seperti Yesus
Menjadi Seperti Yesus
 

Más de Jakelin Placencio

Más de Jakelin Placencio (13)

Informe
InformeInforme
Informe
 
Presentación1
Presentación1Presentación1
Presentación1
 
Johana placencio
Johana placencioJohana placencio
Johana placencio
 
Mapa Conceptual
Mapa Conceptual Mapa Conceptual
Mapa Conceptual
 
Mapa Conceptual
Mapa Conceptual Mapa Conceptual
Mapa Conceptual
 
Mapa conceptual
Mapa conceptual Mapa conceptual
Mapa conceptual
 
Sistema de información
Sistema de información Sistema de información
Sistema de información
 
Mapa mental
Mapa mentalMapa mental
Mapa mental
 
Presentacion electiva v
Presentacion electiva vPresentacion electiva v
Presentacion electiva v
 
Presentacion electiva v [reparado]
Presentacion electiva v [reparado]Presentacion electiva v [reparado]
Presentacion electiva v [reparado]
 
Presentacion electiva v [reparado]
Presentacion electiva v [reparado]Presentacion electiva v [reparado]
Presentacion electiva v [reparado]
 
Presentacion electiva v [reparado]
Presentacion electiva v [reparado]Presentacion electiva v [reparado]
Presentacion electiva v [reparado]
 
Ley Orgánica de Procedimientos Administrativos
Ley Orgánica de Procedimientos AdministrativosLey Orgánica de Procedimientos Administrativos
Ley Orgánica de Procedimientos Administrativos
 

Último

codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxCeciliaGuerreroGonza1
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfMARIAPAULAMAHECHAMOR
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 

Último (20)

codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 

Listas vehículos

  • 1. Instituto universitario politécnico “Santiago Mariño” Extensión Porlamar Escuela de ingeniería de sistemas Estructura de datos Ejercicio de Listas simples Bachiller: Placencio Johana C.I:19.909.628 Prof. Maria Langone Porlamar, Febrero
  • 2. #include "Lista.h" #include "Carro.h" #include "Furgoneta.h" #include "Camion.h" #include "Moto.h" using namespace std; Lista::Lista() { //aqui es cabeza = 0 y tama = o cabeza = 0; tama = 0; } bool Lista::existeElemento(string dato) { Nodo *actual = cabeza; while(actual!=0) if(actual->verDato()->verPlaca()==dato) return true; else actual = actual->verSiguiente(); return false; } int tipos() { int tipo; cout<<"Seleccione el tipo de vehiculo"<<endl; cout<<"1 Carro"<<endl; cout<<"2 Moto"<<endl; cout<<"3 Furgoneta"<<endl; cout<<"4 Camion"<<endl; cin>>tipo; return tipo;
  • 3. } void Lista::agregarNodo() { string placa,color,marca,modelo; cout<<"Ingresar placa del auto"<<endl; cin>> placa; cout<<"Ingresar color del auto"<<endl; cin>> color; cout<<"Ingresar marca del auto"<<endl; cin>> marca; cout<<"Ingresar modelo del auto"<<endl; cin>> modelo; Vehiculos * vehiculo; switch(tipos()) { case 1: vehiculo = new Carro(placa,color,marca,modelo);break; case 2: vehiculo = new Moto(placa,color,marca,modelo);break; case 3: vehiculo = new Furgoneta(placa,color,marca,modelo);break; case 4: vehiculo = new Camion(placa,color,marca,modelo);break; default: cout<<"Tipo de vehiculo desconocido.nVehiculo no agregado!"<<endl; return; } agregarNodo(new Nodo(vehiculo)); } Lista& Lista::operator<<(Nodo* dato) { if(cabeza==0) cabeza = dato; Nodo *actual = cabeza; for(int i=1; i<tama;i++) actual = actual->verSiguiente();
  • 4. actual->modificarSiguiente(dato); tama++; return *(this); } Nodo * Lista::operator[](int posicion) { Nodo *actual = cabeza; for(int i=0; i>posicion-1; i++) actual=actual->verSiguiente(); actual->modificarSiguiente(actual->verSiguiente()->verSiguiente()); return actual; } void Lista::agregarNodo(Nodo*dato) { if(cabeza==0) cabeza = dato; Nodo *actual = cabeza; for(int i=1; i<tama;i++) actual = actual->verSiguiente(); actual->modificarSiguiente(dato); tama++; } void Lista::imprimirLista() { Nodo *actual = cabeza; Vehiculos * vehiculoActual; while(actual!=0) { vehiculoActual = actual->verDato(); cout<<vehiculoActual->verPlaca()<<'t'; cout<<vehiculoActual->verTipo()<<'t'; cout<<vehiculoActual->verColor()<<'t'; cout<<vehiculoActual->verMarca()<<'t';
  • 5. cout<<vehiculoActual->verModelo()<<'t'; cout<<endl; actual = actual->verSiguiente(); } } int Lista::numeroNodos() { return tama; //solo dice return tama; } void Lista::eliminarElementoPorDato(const string& dato) { Nodo *anterior=0,*actual = cabeza; while(actual!=0) { if( (actual->verDato()->verPlaca()==dato) && (anterior!=0) ) { anterior->modificarSiguiente(actual->verSiguiente()); tama--; return; } anterior = actual; actual=actual->verSiguiente(); } } void Lista::eliminarElementoPorPosicion(int posicion) { Nodo *actual = cabeza; for(int i=0; i>posicion-1; i++) actual=actual->verSiguiente(); actual->modificarSiguiente(actual->verSiguiente()->verSiguiente()); tama--;