heikkilaakso.com

           
        #include <cstdlib>
        #include <iostream>
        using namespace std;
        
        void tulosta ( int [  ] , int );
        void nollaus ( int [  ] , int );
        void luvut ( int [  ] , int [  ] , int, int );
        void lajittele ( int [  ] , int );
        void graafi ( int [  ] , int );
        
        int main(int argc, char *argv [  ] ) {
            const int n = 80, m = 8;
            int t [ n ] , l [ m ];
            srand ( time(NULL) );
            nollaus ( l, m );
            luvut ( t, l, n, m );
            cout << "Luvut:" << endl;
            tulosta ( t, n );
            lajittele ( t, n );
            cout << endl << "Luvut lajiteltuina:" << endl;
            tulosta ( t, n );
            cout << endl << "Määrät:" << endl;
            tulosta ( l, m );
            cout << endl;
            graafi ( l, m );
            system("PAUSE");
            return EXIT_SUCCESS;
        }
        void tulosta ( int taulu [  ] , int x ) { // t, n
             for ( int i = 0 ; i < x ; i++ ) {
                 cout.width (4); cout << right; cout << taulu [ i ]; 
             }
        }
        void nollaus ( int taulu [  ] , int x ) { // l, m
             for ( int i = 0 ; i < x ; i++ ) {
                 taulu [ i ]  = 0;
             }
        }
        void luvut ( int taulu1 [  ] , int taulu2 [  ] , int x, int y ) { // t, l, n, m
             for ( int i = 0 ; i < x ; i++ ) {
                 taulu1 [ i ]  = rand() % y;
                 taulu2 [ taulu1 [ i ]  ] ++;
             } 
        }
        void lajittele ( int taulu [  ] , int x ) { // t, n
             int i, j, apu;
             for ( i = 0 ; i < x ; i++ ) {
                 for ( j = 0 ; j < i ; j++ ) {
                     if ( taulu [ j ]  > taulu [ i ]  ) {
                        apu = taulu [ j ]; 
                        taulu [ j ]  = taulu [ i ]; 
                        taulu [ i ]  = apu;
                     }
                 }
             }
        }
        void graafi ( int taulu [  ] , int x ) { // l, m
            for ( int i = 0 ; i < x ; i++ ) {
                cout.width (2); cout << right; cout << i <<": ";
                for ( int j = 0 ; j < taulu [ i ]  ; j++ ) cout << "*";
                cout << endl;
            } 
        }