Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - GABETORAP

#1
Programación C/C++ / Re: Pilas en c++
2 Diciembre 2011, 01:54 AM
lo siento soy nuevo!!
#2
Expliquenme linea  a linea!!
pilaPtr getpila(void)
{
pilaPtr p;
p=(pilaPtr)malloc(sizeof(struct nodo));
if(p != 0)
p->Next = 0;
return (p);
}
#3
Programación C/C++ / Pilas en c++
2 Diciembre 2011, 01:50 AM
Hola a todos
el siguiente programa FUNCIONA CORRECTAMENTE!!
Solo que necesito exponerlo y no entiendo bn las instrucciones
Por favor alguien podría explicarme linea a linea el codigo: gracias!

#include <iostream>
using namespace std;
struct nodo
{
  int dato;
  struct nodo* Next;
};

 typedef struct nodo *pilaPtr;
 pilaPtr Nuevo, Inicio, Aux, P;

  pilaPtr getpila(void)
{
pilaPtr p;
p=(pilaPtr)malloc(sizeof(struct nodo));
if(p != 0)
p->Next = 0;
return (p);
}

void freepila(pilaPtr p)
{
free(p);
}

void Imprime()
{
pilaPtr Aux;
Aux = Inicio;

if(Aux != 0)
{
do
{
cout << Aux->dato <<"\t ";
Aux = Aux->Next;

}
while(Aux != 0);
}
}

void Agregar(int X)
{
Nuevo = getpila();
if(Nuevo != 0)
{
Nuevo->Next = Inicio;
Inicio = Nuevo;
Inicio->dato = X;
}
}
void Menu()
{
system("cls");

cout << "\nMenu";
cout << "\n1 AGREGAR UN NODO A LA LISTA ";
cout << "\n2 ELIMINAR NODO";
cout << "\n3 IMPRIMIR LISTA";
cout << "\n4 SALIR\n\n";
}
int main()
{
 int Opc = 0, X;
  do
  {
     Menu();
   cout << "\n TECLEE UNA OPCION: ";
   cin >> Opc;

switch (Opc)
{
case 1:
{
cout << "\n TECLEE EL VALOR QUE DESEE AGREGAR ";
cin>>X;
Agregar(X);
break;
}
case 2:
{
P=Inicio;
Inicio=P->Next;
free(P);

system("PAUSE");
break;
}
case 3:
Imprime();

system("PAUSE");
break;
}
}
while(Opc != 4);

return EXIT_SUCCESS;
}
#4
Programación C/C++ / Pilas en c++
2 Diciembre 2011, 01:40 AM
Hola a todos
el siguiente programa FUNCIONA CORRECTAMENTE!!
Solo que necesito exponerlo y no entiendo bn las instrucciones
Por favor alguien podría explicarme linea a linea el codigo: gracias!

#include <iostream>
using namespace std;
struct nodo
{
   int dato;
   struct nodo* Next;
};

  typedef struct nodo *pilaPtr;
  pilaPtr Nuevo, Inicio, Aux, P;

   pilaPtr getpila(void)
{
pilaPtr p;
p=(pilaPtr)malloc(sizeof(struct nodo));
if(p != 0)
p->Next = 0;
return (p);
}

void freepila(pilaPtr p)
{
free(p);
}

void Imprime()
{
pilaPtr Aux;
Aux = Inicio;

if(Aux != 0)
{
do
{
cout << Aux->dato <<"\t ";
Aux = Aux->Next;

}
while(Aux != 0);
}
}

void Agregar(int X)
{
Nuevo = getpila();
if(Nuevo != 0)
{
Nuevo->Next = Inicio;
Inicio = Nuevo;
Inicio->dato = X;
}
}
void Menu()
{
system("cls");

cout << "\nMenu";
cout << "\n1 AGREGAR UN NODO A LA LISTA ";
cout << "\n2 ELIMINAR NODO";
cout << "\n3 IMPRIMIR LISTA";
cout << "\n4 SALIR\n\n";
}
int main()
{
  int Opc = 0, X;
   do
   {
      Menu();
    cout << "\n TECLEE UNA OPCION: ";
    cin >> Opc;

switch (Opc)
{
case 1:
{
cout << "\n TECLEE EL VALOR QUE DESEE AGREGAR ";
cin>>X;
Agregar(X);
break;
}
case 2:
{
P=Inicio;
Inicio=P->Next;
free(P);

system("PAUSE");
break;
}
case 3:
Imprime();

system("PAUSE");
break;
}
}
while(Opc != 4);

return EXIT_SUCCESS;
}