números palÃndromo en una pila
Publicado por Niki (7 intervenciones) el 11/05/2021 23:01:31
Hola a todos, espero se encuentren bien!
Necesito agregar al menú una opción donde muestre si los números en la pila son palÃndromos o no...
PalÃndromo: palabra o número que es igual si se lee de izquierda a derecha que de derecha a izquierda.
Por ejemplo: 12321 es un número palÃndromo
Espero puedan ayudarme, gracias de ante mano!
Necesito agregar al menú una opción donde muestre si los números en la pila son palÃndromos o no...
PalÃndromo: palabra o número que es igual si se lee de izquierda a derecha que de derecha a izquierda.
Por ejemplo: 12321 es un número palÃndromo
Espero puedan ayudarme, gracias de ante mano!

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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
#include<stdio.h>
#include<conio.h>
#define MAX 5
typedef struct pila
{
int elem[MAX];
int tope;
};
void set(pila *);
int empty(pila);
int full(pila);
void push(pila *,int);
void pop(pila *,int *);
main()
{
pila p,t;
int x,opc,flag=0;
set(&p);
do
{
printf("\nMENU DE PILAS");
printf("\n\n1-> Insertar elemento ");
printf("\n2-> Eliminar elemento ");
printf("\n3-> Mostrar elementos ");
printf("\n4-> Salir");
printf("\n");
printf("\nDe su opci¢n : ");
scanf("%d",&opc);
switch(opc)
{
case 1:
if(!full(p))
{
printf("\nDe el elemento a insertar : ");
scanf("%d",&x);
push(&p,x);
}
else
{
printf("\nLa pila est llena");
}
break;
case 2:
if(!empty(p))
{
pop(&p,&x);
printf("\nEl elemento eliminado es %d",x);
}
else
{
printf("\nLa pila est vac¡a");
}
break;
case 3:
if(!empty(p))
{
printf("\nElementos de la pila");
printf("\n");
set(&t);//pila temporal
do
{
pop(&p,&x);
printf("\n%4d",x);
push(&t,x);
}while(!empty(p));
do
{
pop(&t,&x);
push(&p,x);
}while(!empty(t));
}
else
{
printf("\nLa pila est vac¡a\n");
}
break;
case 4:
flag=1;
break;
default:
printf("\nOpci¢n no v lida...");
}
if(!flag)
{
printf("\n\nPresione una tecla para continuar...");
getch();
}
}while(!flag);
printf("\nHa finalizado el programa, presione cualquier tecla...");
getch();
}
void set(pila *p)
{
(*p).tope=-1;
}
int empty (pila p)
{
return((p.tope)==-1);
}
int full(pila p)
{
return((p.tope)==(MAX-1));
}
void push(pila *p, int x)
{
if(!full(*p))
{
(*p).tope++;
(*p).elem[(*p).tope]=x;
}
else
{
printf("\nOVERFLOW");
}
return;
}
void pop(pila *p, int *x)
{
if(!empty(*p))
{
*x=(*p).elem[(*p).tope];
(*p).tope--;
}
else
{
printf("\nUNDERFLOW");
}
return;
}
Valora esta pregunta


-1