Advertisement
gmmmarcos

PILA AVANZADO - ejercicio 6 (hardcoremachinegun)

Apr 10th, 2019
444
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 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. Pila DADA, MENOR, AUXDADA, AUXMENOR;
  9. inicpila (&DADA);
  10. inicpila (&MENOR);
  11. inicpila (&AUXDADA);
  12. inicpila (&AUXMENOR);
  13.  
  14. while (OP=='s')
  15. {
  16. printf("INGRESE UN VALOR A LA PILA DADA\n");
  17. leer (&DADA);
  18. printf("\n DESEA INGRESAR OTRO? s/n\n");
  19. fflush(stdin);
  20. scanf("%c",&OP);
  21. }
  22.  
  23. do
  24. {
  25. apilar (&MENOR, desapilar (&DADA));
  26.  
  27. while (!pilavacia(&DADA))
  28. {
  29. if (tope(&DADA)< tope(&MENOR))
  30. {
  31. apilar (&AUXDADA, desapilar (&MENOR));
  32. apilar (&MENOR, desapilar(&DADA));
  33. }
  34. else
  35. {
  36. apilar (&AUXDADA, desapilar (&DADA));
  37. }
  38. }
  39.  
  40. while (!pilavacia(&AUXDADA))
  41. {
  42. apilar (&DADA, desapilar (&AUXDADA));
  43. }
  44. }while (!pilavacia(&DADA));
  45.  
  46. printf("\n PILA DADA\n");
  47. mostrar (&DADA);
  48.  
  49. printf("\n PILA DADA ORDENADA\n");
  50. mostrar (&MENOR);
  51.  
  52.  
  53. return 0;
  54. }
  55.  
  56. /* 6) Usando lo resuelto en el ejercicio 4, pasar los elementos de una pila a otra
  57. de forma tal que la segunda pila quede ordenada de mayor (tope) a menor (base).
  58. Esto se llama método de ordenación por selección. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement