Dev - C++ - Ayuda con agregar opción para eliminar

 
Vista:
sin imagen de perfil

Ayuda con agregar opción para eliminar

Publicado por Roberto (4 intervenciones) el 21/11/2021 03:11:33
Me pueden ayudar a crear la opción 3 que le pregunte al usuario que elemento desea eliminar y una vez que lo teclee, lo busque en la lista y lo elimine, deberá de mantener el orden de los elementos existentes

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
#include <iostream>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
 
using namespace std;
 
struct NODO{
	int dato;
	struct NODO *sig;
};
 
typedef NODO *PTRNODO;
 
int main(){
	PTRNODO inicio, anterior, actual, nuevo;
 
	inicio=NULL;
	anterior=NULL;
	actual=NULL;
	nuevo=NULL;
 
	char resp;
	int elemento;
	int opc, dato, r;
 
	do{
	cout<<"\n******* Ejercicio listas *******"<<endl;
	cout<<" 1.Ingresar dato"<<endl;
	cout<<" 2.Mostrar datos"<<endl;
	cout<<" 3.Eliminar"<<endl;
	cout<<" 4.Salir"<<endl;
	cout<<"Su opcion es: "; cin>>opc;
 
	switch (opc){
		case 1:
 
		  do{
			system("cls");
			cout<<"Ingrese el elemento a insertar a la lista: ";
			cin>>elemento;
 
			nuevo = (NODO *) malloc (sizeof(NODO) );
 
			if (nuevo!=NULL){
				nuevo->dato=elemento;
				nuevo->sig=NULL;
 
				actual=nuevo;
 
				if(anterior==NULL){
					inicio=nuevo;
					inicio->sig=NULL;
 
					anterior=inicio;
				} else {
					anterior->sig=actual;
					anterior=actual;
				}
			} else
				cout<<"¡ERROR: No se logro asignar memoria!";
 
				cout<<"\nDesea capturar otro NODO: ";
				cin>>resp;
			} while (resp=='S' || resp=='s');
		break;
 
		case 2:
			system("cls");
			//impresion de la lista de nodos
			cout<<"\n La lista de Nodos es: ";
 
			while(inicio!=NULL){
				cout<<inicio->dato<<" - ";
				inicio=inicio->sig;
			}
			getch();
		break;
 
		case 3:
			system("cls");
			cout<<" 3.Eliminar"<<endl;
 
		break;
 
		case 4:
			cout<<"bye bye"<<endl;
		break;
	}
		cout<<"Regresas 1 si 0 no: "; cin>>r;
	}while(r==1);
}
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