Hola a todos, soy nueva en este foro y no se muy bien como va... :S . Mi duda es la siguiente, he empezado al carrera de licenciada en matematicas y desgraciadamente me suspendieron el lenguje C++ y ahora tengo que realizar un trabajo de listas y cadenas. EL programa me pide que dado un usuario todos los numeros que quiera, me muestre por pantalla los numeros introducidos de mayor a menos...y este es el codigo que yo he relaizado hasta ahora:
struct Valor
{
int num;
};
struct Nodo;
typedef Nodo *PNodo;
struct Nodo
{
Valor info;
PNodo sig;
};
typedef PNodo Lista;
int main (void)
{
Lista l;
int x;
char op;
PNodo anterior,nuevo,aux;
l=NULL;
do
{
cout << "\nNumero: ";
cin >> x;
nuevo=new(Nodo);
nuevo->info.num=x;
if (l==NULL)
l=nuevo;
else
anterior->sig=nuevo;
anterior =nuevo;
cout << "Ya has acabado de introducir numeros";
cout << " (s/S)?";
cin >> op;
}
while ((op!='s') && (op!='S'));
nuevo->sig=NULL;
cout<<"\nLa lista generada de mayor a menos es: \n"<< endl;
aux=l;
while (aux!=NULL)
{
cout <<(*aux).info.num << " " ;
aux=(*aux).sig ;
}
cout << "\n" << endl;
system ("pause");
return 0;
}
pero el programa con este codigo lo que me hace es mostrarme la lista simplemente, alguien me puede decir donde tengo el error??
Muchas gracias