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 - pakleisito

#1
Programación C/C++ / Re: nueva duda pila en C
18 Marzo 2011, 20:20 PM
ya se que no se usarlos correctamente ... pero me podrías explicar entonces que es lo que tengo que hacer para solucionarlo??

y si le quito los & entonces seria como si los apuntadores estuvieran de mas y el programa se truncaría.
#2
Programación C/C++ / Re: nueva duda pila en C
18 Marzo 2011, 20:08 PM
ahora tengo este
#include <iostream.h>
#include <stdlib.h>
#include <cstdlib>
int x=0,val=0,num=0,base=0;
typedef struct datos{
        int dato;
        struct datos *siguiente;
        }tipoNodo;

typedef tipoNodo *pNodo;
typedef tipoNodo *Pila;
Pila *pila;

void push (Pila *l,int val);
int pop (Pila *l);
void convertir (int num,int base);

main (){
     Pila pila = NULL;
     cout << "Codigo binario de un numero\nDigita el numero\n";
     cin>>num;
     cout << "Digita la base que deseas(2-5)\n";
     cin >>base;
     convertir (num,base);}
     
void push(Pila *pila,int val){
     pNodo nuevo;
     nuevo = (pNodo) malloc (sizeof(tipoNodo));
     nuevo->dato = val;
     nuevo->siguiente =*pila;
     *pila = nuevo;
     }

int pop(Pila *pila){
     pNodo aux;
     int v;
     aux = *pila;
     if (!aux) cout<<"\npila vacia\n";
     *pila = aux->siguiente;
     v = aux->dato;
     free (aux);
     return v;
     system ("pause");
     }

void convertir(int num,int base){
                  int aux=0;
                  aux=num;
                  do{
                  val=num%base;
                  num=num/base;
                  push(&pila,val);
                  }while (num>base);
                  cout<<"el numero es:" <<num;
                  do{
                  x=pop(&pila);
                  cout<<x;
                  }while (*pila!=NULL);
                  system("pause");
}



Pero tengo errores en las lineas:
Código (oobas) [Seleccionar]
52 E:\Estructuras\incompletos\Pila_binario.cpp cannot convert `tipoNodo***' to `tipoNodo**' for argument `1' to `void push(tipoNodo**, int)'

56 E:\Estructuras\incompletos\Pila_binario.cpp cannot convert `tipoNodo***' to `tipoNodo**' for argument `1' to `int pop(tipoNodo**)'
#3
Programación C/C++ / Re: nueva duda pila en C
18 Marzo 2011, 15:39 PM
pero por que me sale este error en la funcion convertir exactamente al llamar a push y pop
42 expected primary-expression before ',' token
44 expected primary-expression before ')' token

Gracias =)
#4
Programación C/C++ / Re: nueva duda pila en C
18 Marzo 2011, 15:33 PM
si mis problemas son exactamente con esas lineas.
pero me podrias decir entonces como SI se hace porfavor
Gracias :)
#5
Programación C/C++ / nueva duda pila en C
18 Marzo 2011, 07:25 AM
Esta es mi nueva duda ... al compilar me sale error en la funcion convertir cuando llamo a las funciones push y pop.

#include <iostream.h>
int num=0,base=0,val=0,x=0;
typedef struct datos{
        int dato;
        struct datos *siguiente;
        }tipoNodo;

typedef tipoNodo *pNodo;
typedef tipoNodo *Pila;
typedef Pila *pila;

void push (Pila *l,int val);
int pop (Pila *l);

void push(Pila *pila,int val){
     pNodo nuevo;
     nuevo = (pNodo) malloc (sizeof(tipoNodo));
     nuevo->dato = val;
     nuevo->siguiente =*pila;
     *pila = nuevo;
     }
     
int pop(Pila *pila){
     pNodo aux;
     int v;
     aux = *pila;
     if (!aux) cout<<"\npila vacia\n";
     *pila = aux->siguiente;
     v = aux->dato;
     free (aux);
     return v;
     system ("pause");
     }

void convertir(int num,int base){
            int x=0,val=0,aux=0;
                  aux=num;
                  do{
                  val=num%base;
                  aux=aux/base;
                  void push(&pila,val);
                  cout<<"el elemento insertado es:"<<val;
                  x=pop(&pila);
                  cout<<x;
                  system("pause");
                  }while(aux>base);
                 
            }     
                 


int main (){
     Pila pila = NULL;
     cout << "Codigo binario de un numero\nDigita el numero\n";
     cin>>num;
     cout << "Digita la base que deseas\n";
     cin >>base;
     void convertir (int num,int base);
     
}


Saludos