Ver Mensaje Individual
  #17 (permalink)  
Antiguo 25/10/2010, 23:31
vnvnation
 
Fecha de Ingreso: marzo-2009
Mensajes: 74
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Error conversion from `TipoPila**' to non-scalar type `TipoPila' requested

Aver esta implementacion esta bien o mal

Código C++:
Ver original
  1. void Push (TipoPila *Stack,TipoElem *Elemen)
  2. {
  3.  *Elemen=Stack->Elementos[Stack->Tope=++];
  4.  
  5.  }
  6.  //Pop
  7. void Pop (TipoPila *Stack,TipoElem *Elemen)
  8. {
  9.   *Elemen=Stack->Elementos[Stack->Tope--];
  10.  
  11.  }

Edito: Creo que esta mal no se pero implemente este otro creo que esta bien no se aun por que no me correo el programa si me lo compila pero me manda un error y se cierra

Código C++:
Ver original
  1. #include <iostream.h>
  2. #include <conio.h>
  3. #define MAX 2
  4. #define VACIO -1
  5. typedef int TipoTope;
  6. typedef char TipoElem;
  7. typedef struct TipoPila{
  8.          TipoTope Tope ;
  9.           TipoElem Elementos [MAX];
  10.           }Pila;
  11. void InicializarPila (TipoPila *Stack);
  12. int PilaLlena(TipoPila *Stack);
  13. int PilaVacia(TipoPila *Stack);
  14. void Push (TipoPila *Stack,TipoElem Elemen);
  15. int Pop (TipoPila *Stack,TipoElem *Elemen);
  16. int Imprimir (TipoPila Stack);
  17. int Contar (TipoPila *Stack);
  18.  main ()
  19. {
  20. system ("color f9");
  21. TipoPila Pila;
  22. TipoTope Tope;
  23. TipoElem Elementos;
  24. int opcion1=0;
  25. while (opcion1!='s')
  26. {
  27. cout << "\n\nSELECCIONE UNA OPCION DE LAS SIGUIENTES:";
  28.  cout <<"\n1 Inicializar Pila: \n";
  29.   cout <<"2 Ingresar elementos a la pila: \n";
  30.   cout <<"3 Sacar elementos de la pila: \n";
  31.    cout <<"4 Imprimir elementos de la pila: \n";
  32.    cout <<"5 Contar elementos de la pila: \n";
  33.    cout <<"\n opcion:";
  34.  cin >> opcion1;
  35.  switch (opcion1)
  36. {
  37.        case 1:
  38.             InicializarPila(&Pila);
  39.        cout<<"Pila inicializada ...\n";
  40.        break;
  41.        case 2:
  42.              if(PilaLlena(&Pila)){
  43.           cout << "\nPila llena!!!!\n";}
  44.            else{
  45.      cout<<"Ingrese elementos a la pila:";
  46.      cin >> Elementos;
  47. Push(&Pila,Elementos);}
  48.      break;
  49.      case 3:
  50.           if(PilaVacia(&Pila)){
  51.           cout << "\nLa pila esta vacia ingrese elementos primero!!!!\n";
  52.           }
  53.           else{
  54.      Pop(&Pila,&Elementos);
  55.      cout <<"\n El elemento sacado de la pila es: "<<Elementos;
  56.      }
  57.      break;
  58.     /* case 4:
  59.           cout << Imprimir(Pila);
  60.           break;  
  61.      case 5:
  62.          cout <<  Contar(&Pila);
  63.          
  64.           break;        */
  65. }}getch ();}
  66. //InicializarPila
  67. void InicializarPila(TipoPila *Stack)
  68. {
  69.      Stack->Tope=VACIO;
  70.      }
  71. //PilaLlena
  72. int PilaLlena(TipoPila *Stack)
  73. {
  74.     return (Stack->Tope==MAX);
  75. }
  76. //PilaVacia
  77. int PilaVacia(TipoPila *Stack)
  78. {
  79.  return (Stack->Tope==VACIO);
  80. }
  81. //Push
  82. void Push (TipoPila *Stack,TipoElem Elemen)
  83. {
  84.  Stack->Tope++;
  85.  Stack->Elementos[Stack->Tope]=Elemen;
  86.  
  87.  }
  88.  //Pop
  89. int Pop (TipoPila *Stack,TipoElem *Elemen)
  90. {  
  91.  
  92.   *Elemen=Stack->Elementos[Stack->Tope];
  93.   Stack->Tope--;
  94.   return *Elemen;
  95.  }
  96.  /*/Imprimir
  97.  int Imprimir (TipoPila Stack)
  98.  {
  99. TipoElem Elementos;
  100. while (!PilaVacia(&Stack))
  101. {
  102.        Pop (&Stack,Elementos);
  103.        cout <<"\n"<<Elementos;
  104. }        
  105.       }
  106. //Contar
  107. int Contar (TipoPila *Stack)
  108. {
  109.  int contador=0;
  110.  TipoPila Aux;
  111.  TipoElem Elementos;  
  112.  InicializarPila (&Aux);
  113.  while (!PilaVacia(Stack))
  114.  {
  115.  Pop(&Stack,&Elementos);
  116.  contador=contador+1;
  117.  Push(&Aux,Elementos);
  118.  
  119. }
  120. }*/

Ahora me falta que cuente y que imprima espero no se me complique de nuevo que cren que este mal

Última edición por vnvnation; 26/10/2010 a las 00:21