Advertisement
Gilgamesh858

Ordine_di_Array

Nov 18th, 2014
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.04 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cstdlib>
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9.     /*
  10.      *Avere due Array di numeri e inserirli in un terzo array dove i numeri saranno ordinati
  11.      * Realizzato da Trupia Ludovico
  12.      */
  13.  
  14.     const int MAX_M = 6, MAX_N = 4;
  15.  
  16.     int m[6], n[4], mPiuN[MAX_M + MAX_N];
  17.  
  18.     int minimo = 7;
  19.  
  20.     srand(time(NULL));
  21.  
  22.     for (int i = 0; i < MAX_M; i++)
  23.     {
  24.         m[i] = rand() % 5 + 1;
  25.     }
  26.  
  27.     for( int i = 0; i < MAX_N; i++)
  28.     {
  29.         n[i] = rand() % 5 + 1;
  30.     }
  31.  
  32.     cout << endl << "M // ";
  33.  
  34.     for( int i = 0; i < MAX_M; i++ )
  35.     {
  36.         cout << m[i] << " ";
  37.     }
  38.  
  39.     cout << endl << endl << "N // ";
  40.  
  41.     for( int i = 0; i < MAX_N; i++ )
  42.     {
  43.         cout << n[i] << " ";
  44.     }
  45.     cout << endl << endl;
  46.  
  47.     int i = 0, ripetizioni = 0, conta_Terzo = 0;
  48.     int esci = 1;
  49.  
  50.     while( esci > 0 )
  51.     {
  52.         if( esci == 1 )
  53.         {
  54.             if( n[i] != 0 )
  55.             {
  56.                 if(  n[i] < minimo )
  57.                 {
  58.                     minimo = n[i];
  59.                 }
  60.             }
  61.             i++;
  62.  
  63.             if( i >= MAX_N )
  64.             {
  65.                 i = 0;
  66.                 esci = 2;
  67.             }
  68.  
  69.         }
  70.  
  71.         if( esci == 2)
  72.         {
  73.             if(  m[i] < minimo && m[i] != 0 )
  74.             {
  75.                 minimo = m[i];
  76.                 ripetizioni = 0;
  77.             }
  78.             i++;
  79.  
  80.             if( i >= MAX_M )
  81.             {
  82.                 i = 0;
  83.                 esci = 3;
  84.             }
  85.         }
  86.  
  87.         if( esci == 3 )
  88.         {
  89.             if( n[i] == minimo && n[i] != 0 )
  90.             {
  91.                 n[i] = 0;
  92.                 ripetizioni++;
  93.             }
  94.  
  95.             i++;
  96.  
  97.             if( i >= MAX_N )
  98.             {
  99.                 i = 0;
  100.                 esci = 4;
  101.             }
  102.         }
  103.  
  104.         if( esci == 4 )
  105.         {
  106.             if( m[i] == minimo )
  107.             {
  108.                 m[i] = 0;
  109.                 ripetizioni++;
  110.             }
  111.  
  112.             i++;
  113.  
  114.             if( i >= MAX_M )
  115.             {
  116.                 i = 0;
  117.                 esci = 5;
  118.             }
  119.         }
  120.  
  121.         if( esci == 5 )
  122.         {
  123.             if( i != ripetizioni )
  124.             {
  125.                 mPiuN[conta_Terzo] = minimo;
  126.                 conta_Terzo++;
  127.                 i++;
  128.             }
  129.             else
  130.             {
  131.                 if( i == ripetizioni )
  132.                 {
  133.                     esci = 6;
  134.                     ripetizioni = 0;
  135.                     i = 0;
  136.                     minimo = 7;
  137.                 }
  138.             }
  139.         }
  140.  
  141.         if( esci == 6 )
  142.         {
  143.             if( conta_Terzo == MAX_M + MAX_N )
  144.             {
  145.                 esci = 0;
  146.             }
  147.             else
  148.             {
  149.                 esci = 1;
  150.             }
  151.         }
  152.  
  153.     }
  154.  
  155.     cout << endl << endl << "F // ";
  156.  
  157.     for( int i = 0; i < MAX_M + MAX_N; i++)
  158.     {
  159.         cout << mPiuN[i] << " ";
  160.     }
  161.  
  162.     cout << endl << endl;
  163.     return 0;
  164. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement