Dev - C++ - Lista Circulares Doblemente Enlazadas

 
Vista:
sin imagen de perfil
Val: 2
Ha disminuido su posición en 7 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Lista Circulares Doblemente Enlazadas

Publicado por José Luis (2 intervenciones) el 06/05/2018 22:54:43
Tengo una duda, en este código como hago que me almacene e imprima el dato edad que esta dentro de la estructura nodo ??
Con este codigo solo me almacena el nombre y lo muestra pero no se como agregar el dato "edad"


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <string>
 
using namespace std;
 
struct nodo
{
	string nombre;
	int edad; // como ingreso este dato ??
	nodo *anterior;
	nodo * siguiente;
} *primero=NULL, *ultimo=NULL;
 
void insertar_nodo();
void ver_lista_PaU();
 
int main(){
	int opc;
	std::cout << "Zapatito Blanco" << '\n';
	do {
			system("cls");
			std::cout << "menu";
			std::cout << "\n1-Insertar 			5-Desplegar PaU";
			std::cout << "\n2-Buscar			6-Desplegar UaP";
			std::cout << "\n3-Modificar			7-Salir";
			std::cout << "\n4-Eliminar";
			std::cout << "\nOpccion  ";
			std::cin >> opc;
 
			switch (opc) {
				case 1:
						std::cout << "Insertar" << '\n';
						insertar_nodo();
						getch();
				break;
				case 2:
						std::cout << "Buscar" << '\n';
						getch();
				break;
				case 3:
						std::cout << "Modificar" << '\n';
						getch();
				break;
				case 4:
						std::cout << "Eliminar" << '\n';
						getch();
				break;
				case 5:
						std::cout << "Desplegar PaU" << '\n';
						ver_lista_PaU();
						getch();
				break;
				case 6:
						std::cout << "Desplegar UaP" << '\n';
						getch();
				break;
				case 7:
						std::cout << "Salir" << '\n';
						getch();
				break;
				default:
						std::cout << "opcion no valida" << '\n';
			}
 
	} while(opc!=7);
 
	return 0;
}
 
 
//67,23,8,12
// Primero=67		ultimo=12 		nuevo=***
//lista Circular Doble =		(12) <-67-> <-23-> <-8-> <-12-> (67)
void insertar_nodo(){
	nodo *nuevo = new nodo();
	std::cout << "Ingresa el nombre del niño ";
	std::cin >> nuevo -> nombre;
 
	if (primero==NULL) {
		primero=nuevo;
		ultimo=nuevo;
		primero -> siguiente=primero;
		primero -> anterior=ultimo;
	}else{
		ultimo -> siguiente=nuevo;
		nuevo -> anterior=ultimo;
		nuevo -> siguiente=primero;
		ultimo=nuevo;
		primero -> anterior=ultimo;
	}
	std::cout << "Dato ingresado" << '\n';
};
 
 
//Primero=67		ultimo=12 		nuevo=***		actual=	12
//ver_lista_PaU= 		67,23,8,
//lista Circular Doble =		(12) <-67-> <-23-> <-8-> <-12-> (67)
void ver_lista_PaU() {
	nodo *actual = new nodo();
	actual = primero;
	if (primero!=NULL) {
		do {
			std::cout << '\n' << actual -> nombre << '\n';
			actual = actual -> siguiente;
		} while(actual!=primero);
	}else{
		std::cout << "Lista vacia" << '\n';
	}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Lista Circulares Doblemente Enlazadas

Publicado por Lulu (1 intervención) el 12/04/2021 18:08:31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <string>
 
using namespace std;
 
struct nodo
{
	string nombre;
	int edad; // como ingreso este dato ??
	nodo *anterior;
	nodo * siguiente;
} *primero=NULL, *ultimo=NULL;
 
void insertar_nodo();
void ver_lista_PaU();
 
int main(){
	int opc;
	std::cout << "Zapatito Blanco" << '\n';
	do {
			system("cls");
			std::cout << "menu";
			std::cout << "\n1-Insertar 			5-Desplegar PaU";
			std::cout << "\n2-Buscar			6-Desplegar UaP";
			std::cout << "\n3-Modificar			7-Salir";
			std::cout << "\n4-Eliminar";
			std::cout << "\nOpccion  ";
			std::cin >> opc;
 
			switch (opc) {
				case 1:
						std::cout << "Insertar" << '\n';
						insertar_nodo();
						getch();
				break;
				case 2:
						std::cout << "Buscar" << '\n';
						getch();
				break;
				case 3:
						std::cout << "Modificar" << '\n';
						getch();
				break;
				case 4:
						std::cout << "Eliminar" << '\n';
						getch();
				break;
				case 5:
						std::cout << "Desplegar PaU" << '\n';
						ver_lista_PaU();
						getch();
				break;
				case 6:
						std::cout << "Desplegar UaP" << '\n';
						getch();
				break;
				case 7:
						std::cout << "Salir" << '\n';
						getch();
				break;
				default:
						std::cout << "opcion no valida" << '\n';
			}
 
	} while(opc!=7);
 
	return 0;
}
 
 
//67,23,8,12
// Primero=67		ultimo=12 		nuevo=***
//lista Circular Doble =		(12) <-67-> <-23-> <-8-> <-12-> (67)
void insertar_nodo(){
	nodo *nuevo = new nodo();
 
	cout << "Ingresa el nombre del niño  y edad: "<<endl;
	cin >> nuevo->nombre;
	cin >> nuevo->edad;
 
	if (primero==NULL) {
		primero=nuevo;
		ultimo=nuevo;
		primero -> siguiente=primero;
		primero -> anterior=ultimo;
	}else{
		ultimo-> siguiente=nuevo;
		nuevo-> anterior=ultimo;
		nuevo-> siguiente=primero;
		ultimo=nuevo;
		primero-> anterior=ultimo;
	}
 
	cout << "Dato ingresado" << '\n';
};
 
 
//Primero=67		ultimo=12 		nuevo=***		actual=	12
//ver_lista_PaU= 		67,23,8,
//lista Circular Doble =		(12) <-67-> <-23-> <-8-> <-12-> (67)
 
void ver_lista_PaU() {
	nodo *actual = new nodo();
	actual = primero;
	if (primero!=NULL) {
		do {
			cout <<actual->nombre<<" "<<actual->edad <<"->";
			actual = actual -> siguiente;
		} while(actual!=primero);
	}else{
		std::cout << "Lista vacia" << endl;
	}
 
}
 
 
 
//use tu código solo le añadí unas cuantas cosas y ya puede leer y arrojar la variable edad//
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar