SlideShare a Scribd company logo
1 of 5
Download to read offline
ÁREA DE ENERGÍA, INDUSTRIAS Y RECURSOS NATURALES NO RENOVABLES
CARRERA DE INGENIERÍA EN SISTEMAS
Trabajo de:
V Módulo “A”
Pertenece a:
Docente: Ing. Alex Padilla
LOJA-ECUADOR
2013-2014
MULTILISTAS
Observe el siguiente esquema, diseñe una estructura de datos que pueda representar los datos y
las relaciones entre ellos de manera adecuada. Defina una clase para las marcas y otra para
modelos.
/*
* Nodo.h
*
* Created on: 05/12/2013
* Author: Cristhian Rosales.
*/
#include <iostream>
#include <stdio.h>
#include <cstring>
#include <conio.h>
using namespace std;
class Nodo
{
private:
Nodo*sig;
Nodo*inferior;
Nodo*Primero;
string nombre;
public:
friend class MarcAyModelO;
Nodo(){
sig=NULL;
inferior=NULL;
nombre="";
Primero=NULL;
}
};
/*
* MarcAyModelO.cpp
*
* Created on: 05/12/2013
* Author: Cristhian Rosales.
*/
#include <iostream>
#include <stdio.h>
#include <cstring>
#include <conio.h>
#include "Nodo.h"
using namespace std;
class MarcAyModelO
{
private:
Nodo *PrimerMarca;
public:
MarcAyModelO(){
PrimerMarca=NULL;
}
void InsertarMarca(string marca){
Nodo *nuevo;
nuevo=new Nodo;
nuevo->nombre=marca;
if(PrimerMarca==NULL){
PrimerMarca=nuevo;
}else{
Nodo *aux;
aux=PrimerMarca;
while(aux->sig!=NULL){
aux=aux->sig;
}
aux->sig=nuevo;
}
}
void InsertarModelo(string marca2, string modelo){
if(PrimerMarca!=NULL){
Nodo*aux;
aux=PrimerMarca;
while(aux->nombre!=marca2 && aux->sig!=NULL){
aux=aux->sig;
}
if(aux->nombre==marca2){
Nodo*nuevo;
nuevo=new Nodo;
nuevo->nombre=modelo;
if(aux->inferior==NULL){
aux->inferior=nuevo;
aux->Primero=nuevo;
}else{
Nodo *aux2;
aux2=aux->Primero;
while(aux2->sig!=NULL){
aux2=aux2->sig;
}
aux2->sig=nuevo;
}
}else{
cout<<"No existe la marca ingresada!!"<<endl;
}
}else{
cout<<"Antes de ingresar un modelo, ingrese una marca"<<endl;
}
}
void Presentar(){
if(PrimerMarca!=NULL){
Nodo*aux;
aux=PrimerMarca;
while(aux->sig!=NULL){
cout<<"<<MARCA>>"+aux->nombre<<"n";
if(aux->Primero!=NULL && aux->inferior!=NULL){
Nodo *aux2;
aux2=aux->Primero;
while(aux2->sig!=NULL){
cout<<" <<MODELO>>"+aux2->nombre<<"n";
aux2=aux2->sig;
}
cout<<" <<MODELO>>"+aux2->nombre<<"n";
}else{
cout<<aux->nombre+" No tiene modelos"<<endl;
}
aux=aux->sig;
}
cout<<"<<MARCA>>"+aux->nombre<<"n";
if(aux->Primero!=NULL && aux->inferior!=NULL){
Nodo *aux2;
aux2=aux->Primero;
while(aux2->sig!=NULL){
cout<<" <<MODELO>>"+aux2->nombre<<"n";
aux2=aux2->sig;
}
cout<<" <<MODELO>>"+aux2->nombre<<"n";
}else{
cout<<aux->nombre+" No tiene modelos"<<endl;
}
}else{
cout<<"No hay datos para presentar"<<endl;
}
}
void menu()
{
int menu;
string marca;
string marca2;
string modelo;
do{
cout<<"-------------------------------------"<<endl;
cout<<"==========[[[[[[MENÚ]]]]]]==========="<<endl;
cout<<"-------------------------------------"<<endl;
cout<<"****[1] INSERTAR MARCA****"<<endl;
cout<<"****[2] INSERTAR MODELO DE UNA MARCA****"<<endl;
cout<<"****[3] PRESENTAR***"<<endl;
cout<<"****[4] SALIR ****"<<endl;
cout<<"-------------------------------------"<<endl;
cout<<" =======> Ingrese una opción:"<<endl;
cin>>menu;
switch(menu)
{
case 1:
cout<<"Escriba el nombre de la marca: "<<endl;
cin>>marca;
InsertarMarca(marca);
break;
case 2:
cout<<"Escriba el nombre de la marca a la que asignará
un modelo: "<<endl;
cin>>marca2;
cout<<"Escriba el nombre del modelo: "<<endl;
cin>>modelo;
InsertarModelo(marca2, modelo);
break;
case 3:
Presentar();
break;
default:
cout<<"FIN DEL PROGRAMA"<<endl;
break;
}
}while(menu<=3);
}
};
int main(){
MarcAyModelO lista;
lista.menu();
}

More Related Content

What's hot

Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
Omarzingm
 
Lista de adyacencia
Lista de adyacenciaLista de adyacencia
Lista de adyacencia
Frank Doria
 
Unidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacion
LuiS YmAY
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
Guillermo Díaz
 

What's hot (20)

Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Inserción,borrado y búsqueda en Arboles Binarios(Java)
Inserción,borrado y búsqueda en Arboles Binarios(Java)Inserción,borrado y búsqueda en Arboles Binarios(Java)
Inserción,borrado y búsqueda en Arboles Binarios(Java)
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
Diagrama UML de Clases
Diagrama UML de ClasesDiagrama UML de Clases
Diagrama UML de Clases
 
7 Curso de POO en java - diagrama de clases
7 Curso de POO en java - diagrama de clases7 Curso de POO en java - diagrama de clases
7 Curso de POO en java - diagrama de clases
 
Diagramas de clases
Diagramas de clasesDiagramas de clases
Diagramas de clases
 
Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
 
Constructores en Java
Constructores en JavaConstructores en Java
Constructores en Java
 
Ventajas y Desventajas de la POO
Ventajas y Desventajas de la POOVentajas y Desventajas de la POO
Ventajas y Desventajas de la POO
 
Calculadora con operaciones básicas en java
Calculadora con operaciones básicas en javaCalculadora con operaciones básicas en java
Calculadora con operaciones básicas en java
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
 
Comandos java
Comandos javaComandos java
Comandos java
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
Lista de adyacencia
Lista de adyacenciaLista de adyacencia
Lista de adyacencia
 
Unidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacion
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
 
Modelo entidad relacion
Modelo entidad relacionModelo entidad relacion
Modelo entidad relacion
 
Arboles En Estructura de Datos
Arboles En Estructura de DatosArboles En Estructura de Datos
Arboles En Estructura de Datos
 

Viewers also liked (12)

Listas
ListasListas
Listas
 
Listas enlazadas doble exposicion
Listas enlazadas doble exposicionListas enlazadas doble exposicion
Listas enlazadas doble exposicion
 
Listas Encadenadas Jose Tannous
Listas Encadenadas Jose TannousListas Encadenadas Jose Tannous
Listas Encadenadas Jose Tannous
 
Estructura de datos_Listas encadenadas presentacion
Estructura de datos_Listas encadenadas  presentacionEstructura de datos_Listas encadenadas  presentacion
Estructura de datos_Listas encadenadas presentacion
 
Lista Doblemente Enlazada
Lista Doblemente EnlazadaLista Doblemente Enlazada
Lista Doblemente Enlazada
 
Listas
ListasListas
Listas
 
Listas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas CircularesListas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas Circulares
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Arboles Binarios
Arboles BinariosArboles Binarios
Arboles Binarios
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
 
concepto de estructuras de datos
concepto de estructuras de datosconcepto de estructuras de datos
concepto de estructuras de datos
 
Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 

Similar to Estructura de Datos, Multilistas

Ajax - Pablo Almeida Haro
Ajax - Pablo Almeida HaroAjax - Pablo Almeida Haro
Ajax - Pablo Almeida Haro
Pablo Almeida
 
Acceso a datos con ado.net en visual basic
Acceso a datos con ado.net en visual basicAcceso a datos con ado.net en visual basic
Acceso a datos con ado.net en visual basic
gerardd98
 

Similar to Estructura de Datos, Multilistas (20)

Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare
 
Bd oo presentacion
Bd oo presentacionBd oo presentacion
Bd oo presentacion
 
Taller # 14 grado 6 creación de carpetas
Taller # 14 grado 6 creación de carpetasTaller # 14 grado 6 creación de carpetas
Taller # 14 grado 6 creación de carpetas
 
Aplicacion
Aplicacion Aplicacion
Aplicacion
 
Reporte de practica 9 funciones y graficas
Reporte de practica 9 funciones y graficasReporte de practica 9 funciones y graficas
Reporte de practica 9 funciones y graficas
 
Glosario completo
Glosario completoGlosario completo
Glosario completo
 
LABORATORIO DE PROGRAMACIÓN I
LABORATORIO DE PROGRAMACIÓN ILABORATORIO DE PROGRAMACIÓN I
LABORATORIO DE PROGRAMACIÓN I
 
Ajax - Pablo Almeida Haro
Ajax - Pablo Almeida HaroAjax - Pablo Almeida Haro
Ajax - Pablo Almeida Haro
 
U3-ACT02-TBD-ISC-MSG.pdf
U3-ACT02-TBD-ISC-MSG.pdfU3-ACT02-TBD-ISC-MSG.pdf
U3-ACT02-TBD-ISC-MSG.pdf
 
Informe
InformeInforme
Informe
 
Glosario
GlosarioGlosario
Glosario
 
Posgres Sql2
Posgres Sql2Posgres Sql2
Posgres Sql2
 
base de datos orientado a dispositivos moviles
base de datos orientado a dispositivos movilesbase de datos orientado a dispositivos moviles
base de datos orientado a dispositivos moviles
 
Te enamoraste jeje
Te enamoraste jejeTe enamoraste jeje
Te enamoraste jeje
 
Glosario
GlosarioGlosario
Glosario
 
Fases para la creación de una base de datos
Fases para la creación de una base de datosFases para la creación de una base de datos
Fases para la creación de una base de datos
 
Guiapractica de bd completa
Guiapractica de bd completaGuiapractica de bd completa
Guiapractica de bd completa
 
Acceso a datos con ado.net en visual basic
Acceso a datos con ado.net en visual basicAcceso a datos con ado.net en visual basic
Acceso a datos con ado.net en visual basic
 
Acceso a datos con ado.net en visual basic
Acceso a datos con ado.net en visual basicAcceso a datos con ado.net en visual basic
Acceso a datos con ado.net en visual basic
 
Administracion de base de datos
Administracion de base de datosAdministracion de base de datos
Administracion de base de datos
 

Recently uploaded

SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
EdwinC23
 
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
samuelsan933
 
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
GustavoAdolfoDiaz3
 

Recently uploaded (20)

Presentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potablePresentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potable
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
 
Cereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. CerealesCereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. Cereales
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
Manual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdfManual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdf
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 
TRABAJO N°2 GERENCIA DE PROYECTOS (4).pdf
TRABAJO N°2 GERENCIA DE PROYECTOS (4).pdfTRABAJO N°2 GERENCIA DE PROYECTOS (4).pdf
TRABAJO N°2 GERENCIA DE PROYECTOS (4).pdf
 
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
 
3er Informe Laboratorio Quimica General (2) (1).pdf
3er Informe Laboratorio Quimica General  (2) (1).pdf3er Informe Laboratorio Quimica General  (2) (1).pdf
3er Informe Laboratorio Quimica General (2) (1).pdf
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
portafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidenciasportafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidencias
 
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
Matrices Matemáticos universitario pptx
Matrices  Matemáticos universitario pptxMatrices  Matemáticos universitario pptx
Matrices Matemáticos universitario pptx
 
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALESCAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
Auditoría de Sistemas de Gestión
Auditoría    de   Sistemas     de GestiónAuditoría    de   Sistemas     de Gestión
Auditoría de Sistemas de Gestión
 

Estructura de Datos, Multilistas

  • 1. ÁREA DE ENERGÍA, INDUSTRIAS Y RECURSOS NATURALES NO RENOVABLES CARRERA DE INGENIERÍA EN SISTEMAS Trabajo de: V Módulo “A” Pertenece a: Docente: Ing. Alex Padilla LOJA-ECUADOR 2013-2014
  • 2. MULTILISTAS Observe el siguiente esquema, diseñe una estructura de datos que pueda representar los datos y las relaciones entre ellos de manera adecuada. Defina una clase para las marcas y otra para modelos. /* * Nodo.h * * Created on: 05/12/2013 * Author: Cristhian Rosales. */ #include <iostream> #include <stdio.h> #include <cstring> #include <conio.h> using namespace std; class Nodo { private: Nodo*sig; Nodo*inferior; Nodo*Primero; string nombre; public: friend class MarcAyModelO; Nodo(){ sig=NULL; inferior=NULL; nombre=""; Primero=NULL; } };
  • 3. /* * MarcAyModelO.cpp * * Created on: 05/12/2013 * Author: Cristhian Rosales. */ #include <iostream> #include <stdio.h> #include <cstring> #include <conio.h> #include "Nodo.h" using namespace std; class MarcAyModelO { private: Nodo *PrimerMarca; public: MarcAyModelO(){ PrimerMarca=NULL; } void InsertarMarca(string marca){ Nodo *nuevo; nuevo=new Nodo; nuevo->nombre=marca; if(PrimerMarca==NULL){ PrimerMarca=nuevo; }else{ Nodo *aux; aux=PrimerMarca; while(aux->sig!=NULL){ aux=aux->sig; } aux->sig=nuevo; } } void InsertarModelo(string marca2, string modelo){ if(PrimerMarca!=NULL){ Nodo*aux; aux=PrimerMarca; while(aux->nombre!=marca2 && aux->sig!=NULL){ aux=aux->sig; } if(aux->nombre==marca2){ Nodo*nuevo; nuevo=new Nodo; nuevo->nombre=modelo; if(aux->inferior==NULL){ aux->inferior=nuevo; aux->Primero=nuevo; }else{
  • 4. Nodo *aux2; aux2=aux->Primero; while(aux2->sig!=NULL){ aux2=aux2->sig; } aux2->sig=nuevo; } }else{ cout<<"No existe la marca ingresada!!"<<endl; } }else{ cout<<"Antes de ingresar un modelo, ingrese una marca"<<endl; } } void Presentar(){ if(PrimerMarca!=NULL){ Nodo*aux; aux=PrimerMarca; while(aux->sig!=NULL){ cout<<"<<MARCA>>"+aux->nombre<<"n"; if(aux->Primero!=NULL && aux->inferior!=NULL){ Nodo *aux2; aux2=aux->Primero; while(aux2->sig!=NULL){ cout<<" <<MODELO>>"+aux2->nombre<<"n"; aux2=aux2->sig; } cout<<" <<MODELO>>"+aux2->nombre<<"n"; }else{ cout<<aux->nombre+" No tiene modelos"<<endl; } aux=aux->sig; } cout<<"<<MARCA>>"+aux->nombre<<"n"; if(aux->Primero!=NULL && aux->inferior!=NULL){ Nodo *aux2; aux2=aux->Primero; while(aux2->sig!=NULL){ cout<<" <<MODELO>>"+aux2->nombre<<"n"; aux2=aux2->sig; } cout<<" <<MODELO>>"+aux2->nombre<<"n"; }else{ cout<<aux->nombre+" No tiene modelos"<<endl; } }else{ cout<<"No hay datos para presentar"<<endl; } }
  • 5. void menu() { int menu; string marca; string marca2; string modelo; do{ cout<<"-------------------------------------"<<endl; cout<<"==========[[[[[[MENÚ]]]]]]==========="<<endl; cout<<"-------------------------------------"<<endl; cout<<"****[1] INSERTAR MARCA****"<<endl; cout<<"****[2] INSERTAR MODELO DE UNA MARCA****"<<endl; cout<<"****[3] PRESENTAR***"<<endl; cout<<"****[4] SALIR ****"<<endl; cout<<"-------------------------------------"<<endl; cout<<" =======> Ingrese una opción:"<<endl; cin>>menu; switch(menu) { case 1: cout<<"Escriba el nombre de la marca: "<<endl; cin>>marca; InsertarMarca(marca); break; case 2: cout<<"Escriba el nombre de la marca a la que asignará un modelo: "<<endl; cin>>marca2; cout<<"Escriba el nombre del modelo: "<<endl; cin>>modelo; InsertarModelo(marca2, modelo); break; case 3: Presentar(); break; default: cout<<"FIN DEL PROGRAMA"<<endl; break; } }while(menu<=3); } }; int main(){ MarcAyModelO lista; lista.menu(); }