Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/06/2010, 21:08
1antares1
 
Fecha de Ingreso: marzo-2006
Mensajes: 43
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Problemas con C++! Urgente! :(

Y el de COLAS:

Código

Código C++:
Ver original
  1. #include<stdlib.h>
  2. #include<stdio.h>
  3.  
  4. typedef struct nodo
  5. {
  6. int valor;
  7. struct nodo *siguiente;
  8. } tipoNodo;
  9.  
  10. typedef tipoNodo *pNodo;
  11.  
  12. /* Funciones con colas: */
  13.  
  14. void Anadir(pNodo *primero, pNodo *ultimo, int v);
  15. int Leer(pNodo *primero, pNodo *ultimo);
  16. int main()
  17. {
  18.     pNodo primero=NULL, ultimo= NULL;
  19.  
  20.     Anadir(&primero, &ultimo, 20);
  21.     printf("Añadir (20)\n");
  22.     Anadir(&primero, &ultimo, 10);
  23.     printf("Añadir (10)\n");
  24.     printf("Leer: %d\n", Leer(&primero, &ultimo));
  25.     Anadir(&primero, &ultimo, 40);
  26.     printf("Añadir (40)\n");
  27.     Anadir(&primero, &ultimo, 30);
  28.     printf("Añadir (30)\n");
  29.     printf("Leer: %d\n",Leer(&primero, &ultimo));
  30.     printf("Leer: %d\n",Leer(&primero, &ultimo));
  31.     Anadir(&primero, &ultimo, 90);
  32.     printf("Añadir (90)\n");
  33.     printf("Leer: %d\n",Leer(&primero, &ultimo));
  34.     printf("Leer: %d\n",Leer(&primero, &ultimo));
  35.  
  36.     system("PAUSE");
  37.     return 0;
  38. }
  39.  
  40. void Anadir(pNodo *primero, pNodo *ultimo, int v)
  41. {
  42. pNodo nuevo;
  43.  
  44. /* Crear un nodo nuevo */
  45.  
  46. nuevo=
  47. (pNodo)malloc(sizeof(tipoNodo));
  48. nuevo->valor=v;
  49.  
  50. /* Este sera el ultimo nodo, no debe tener siguiente */
  51.  
  52. nuevo->siguiente=NULL;
  53. /* Si la cola no estaba vacia, añadimos el nuevo a continuacion de ultimo */
  54. if(*ultimo) (*ultimo)->siguiente=nuevo;
  55.  
  56. /* Si primero es NULL, la cola estaba vacia, ahora primero apuntara tambien el nuevo nodo */
  57.  
  58. if(!*primero) *primero=nuevo;
  59. }
  60.  
  61. int Leer(pNodo *primero, pNodo *ultimo)
  62. {
  63.  
  64. pNodo nodo; /* Variable auxiliar para manipular nodo */
  65.  
  66. int v; /* Variable auxiliar para retorno */
  67.  
  68. /* Nodo apunta al primer elemento de la pila */
  69.  
  70. nodo=*primero;
  71. if(!nodo) return 0; /* Si no hay nodos en la pila retornamos 0 */
  72. /* Asignamos a primero la direccion del segundo nodo */
  73. *primero=nodo->siguiente;
  74. /*Guardamos el valor de retorno */
  75. v=nodo->valor;
  76. /* Borrar el nodo */
  77. free(nodo);
  78. /*Si la cola quedo vacia, ultimo debe ser NULL tambien */
  79. if(!*primero) *ultimo=NULL;
  80. return v;
  81. }



Eso es todo. Solo pasar el PROYECTO A LISTAS ENLAZADAS.

No importa como sea, con tal que tenga listas enlazadas. Como colocar el numero de visitantes por orden, etc. Cualquier modificacion que tenga listas enlazadas.

Y los ejercicios, solo el menu.

Muchas gracias amigo de corazón, me hace falta éste momento su ayuda. Saludos!
__________________
:si: ANTARES:si: