ÁREA DE ENERGÍA, INDUSTRIAS Y RECURSOS NATURALES NO RENOVABLES
CARRERA DE INGENIERÍA EN SISTEMAS
Trabajo de:
V Módulo “A”
...
MULTILISTAS
Observe el siguiente esquema, diseñe una estructura de datos que pueda representar los datos y
las relaciones ...
/*
* MarcAyModelO.cpp
*
* Created on: 05/12/2013
* Author: Cristhian Rosales.
*/
#include <iostream>
#include <stdio.h>
#i...
Nodo *aux2;
aux2=aux->Primero;
while(aux2->sig!=NULL){
aux2=aux2->sig;
}
aux2->sig=nuevo;
}
}else{
cout<<"No existe la mar...
void menu()
{
int menu;
string marca;
string marca2;
string modelo;
do{
cout<<"-------------------------------------"<<end...
Upcoming SlideShare
Loading in...5
×

Estructura de Datos, Multilistas

887

Published on

En el presente se muestra la solución de un ejercicio de multilistas del libro: Estructura de Datos Orientada a Objetos, Algoritmos con C++ de Silvia Guardatti, en el capitulo de Listas.

Published in: Engineering
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
887
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
24
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Estructura de Datos, Multilistas

  1. 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. 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. 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. 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. 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(); }

×