Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.43 KB | None | 0 0
  1. int main()
  2. {
  3.     Pila dada, menor, aux;
  4.     inicpila(&dada);
  5.     inicpila(&menor);
  6.     inicpila(&aux);
  7.  
  8.     /*
  9.         printf("________________________________________________________________________\n");
  10.         printf("________________________________________________________________________\n");
  11.         printf("________________________________EJERCICIO 4_____________________________\n\n");
  12.  
  13.         leer(&dada);
  14.         leer(&dada);
  15.         leer(&dada);
  16.         leer(&dada);
  17.         leer(&dada);
  18.  
  19.         system("cls");
  20.  
  21.         mostrar(&dada);
  22.         printf("PILA: Dada (inicial).\n\n");
  23.         system("pause");
  24.         apilar(&menor, desapilar(&dada));
  25.  
  26.         while(!pilavacia(&dada))
  27.         {
  28.             if(tope(&menor) > tope(&dada))
  29.             {
  30.                 apilar(&aux, desapilar(&menor));
  31.                 apilar(&menor, desapilar(&dada));
  32.             }
  33.             else
  34.                 apilar(&aux, desapilar(&dada));
  35.         }
  36.  
  37.         while(!pilavacia(&aux))
  38.             apilar(&dada, desapilar(&aux));
  39.  
  40.         mostrar(&menor);
  41.         printf("PILA: Menor.\n\n");
  42.  
  43.         mostrar(&dada);
  44.         printf("PILA: Dada (final).\n\n");
  45.  
  46.         printf("____________________________FIN EJERCICIO 4_____________________________\n");
  47.         printf("________________________________________________________________________\n");
  48.         printf("________________________________________________________________________\n");
  49.  
  50.     */
  51.     system("CLS");
  52.  
  53.  
  54.     printf("________________________________________________________________________\n");
  55.     printf("________________________________________________________________________\n");
  56.     printf("________________________________EJERCICIO 5_____________________________\n\n");
  57.  
  58.  
  59.     ///Insertar un elemento en una pila ordenada de menor a mayor (tope a base).
  60.     ///de forma tal que conserve el orden (sin usar variables).
  61.  
  62.     Pila dada5, ordenada, aux5, insertar;
  63.     inicpila(&dada5);
  64.     inicpila(&ordenada);
  65.     inicpila(&aux5);
  66.     inicpila(&insertar);
  67.  
  68.     printf("Cargue una pila DADA:\n\n\t");
  69.     leer(&dada5);
  70.     printf("\t");
  71.     leer(&dada5);
  72.     printf("\t");
  73.     leer(&dada5);
  74.     printf("\t");
  75.     leer(&dada5);
  76.     printf("\t");
  77.     leer(&dada5);
  78.  
  79.     mostrar(&dada5);
  80.     printf("PILA: Dada.\n\n");
  81.  
  82.     while(!pilavacia(&dada5))
  83.     {
  84.         apilar(&ordenada, desapilar(&dada5));
  85.  
  86.         while(!pilavacia(&dada5))
  87.         {
  88.             if(tope(&dada5) > tope(&ordenada))
  89.             {
  90.                 apilar(&aux5, desapilar(&ordenada));
  91.                 apilar(&ordenada, desapilar(&dada5));
  92.             }
  93.             else
  94.                 apilar(&aux5, desapilar(&dada5));
  95.         }
  96.  
  97.         while(!pilavacia(&aux5))
  98.             apilar(&dada5, desapilar(&aux5));
  99.     }
  100.  
  101.  
  102.     mostrar(&ordenada);
  103.     printf("PILA: Ordenada.\n\n");
  104.  
  105.     printf("\nQue numero desea insertar en la pila ORDENADA?\n");
  106.     printf("\n\t ");
  107.     leer(&insertar);
  108.  
  109.     while(!pilavacia(&ordenada) && !pilavacia(&insertar))
  110.     {
  111.         if(tope(&insertar) > tope(&ordenada))
  112.             apilar(&aux5, desapilar(&ordenada));
  113.         else
  114.             apilar(&ordenada, desapilar(&insertar));
  115.     }
  116.  
  117.     if(!pilavacia(&insertar))
  118.         apilar(&ordenada, desapilar(&insertar));
  119.  
  120.     while(!pilavacia(&aux5))
  121.         apilar(&ordenada, desapilar(&aux5));
  122.  
  123.     mostrar(&ordenada);
  124.     printf("PILA: Ordenada.\n\n");
  125.  
  126.     return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement