Advertisement
gmmmarcos

PRACTICO PILAS 1- ejercicio 12 (DIFICIL)

Apr 4th, 2019
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include "pila.h"
  4.  
  5. int main()
  6. {
  7. char OP='s';
  8. char PO='s';
  9. Pila DADA, MODELO, AUX1, AUX2, DESECHO;
  10. inicpila (&DADA);
  11. inicpila (&MODELO);
  12. inicpila(&AUX1);
  13. inicpila(&AUX2);
  14. inicpila(&DESECHO);
  15.  
  16. while (OP=='s')
  17. {
  18. printf("INGRESE UN VALOR A LA PILA DADA\n");
  19. leer (&DADA);
  20. printf("\n DESEA INGRESAR OTRO? s/n\n");
  21. fflush(stdin);
  22. scanf("%c",&OP);
  23. }
  24.  
  25. while (PO=='s')
  26. {
  27. printf("INGRESE UN VALOR A LA PILA MODELO\n");
  28. leer (&MODELO);
  29. printf("\n DESEA INGRESAR OTRO? s/n\n");
  30. fflush(stdin);
  31. scanf("%c",&PO);
  32. }
  33.  
  34.  
  35. while (!pilavacia(&MODELO))
  36. {
  37.  
  38. while (!pilavacia(&DADA))
  39. {
  40. if (tope(&DADA) == tope(&MODELO))
  41. {
  42. apilar (&DESECHO, desapilar(&DADA));
  43. }
  44. else
  45. {
  46. apilar (&AUX1, desapilar (&DADA));
  47. }
  48.  
  49. }
  50.  
  51. apilar (&AUX2, desapilar(&MODELO));
  52. while (!pilavacia(&AUX1))
  53. {
  54. apilar (&DADA, desapilar (&AUX1));
  55. }
  56. }
  57.  
  58.  
  59.  
  60. while (!pilavacia(&AUX2))
  61. {
  62. apilar (&MODELO, desapilar (&AUX2));
  63. }
  64.  
  65.  
  66.  
  67.  
  68. printf("\nPILA DADA");
  69. mostrar (&DADA);
  70.  
  71. printf("\nPILA MODELO");
  72. mostrar (&MODELO);
  73.  
  74.  
  75. return 0;
  76. }
  77.  
  78. /* Suponiendo la existencia de una pila MODELO (vacía o no),
  79. eliminar de la pila DADA todos los elementos que existan en MODELO. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement