Sortowanie i przekazywanie tablic.
Ostatnio zmodyfikowano 2012-01-13 15:36
damian4646 Temat założony przez niniejszego użytkownika |
Sortowanie i przekazywanie tablic. » 2012-01-13 12:54:21 Witam. Mam problem z zadaniem, który ma dwa zbiory, musi je posortować i wypisać. Problem polega na tym, że zbiory wypełnione losowo są takie same. #include <cmath> #include <iostream> #include <iomanip> #include <cstdlib> #include <time.h>
using namespace std;
const int N = 10; const int M = 10;
int ZbiorA( int A[ N ], int i ) { int j, p; cout << "Wersja przed sortowaniem i po: ;" << endl; srand(( unsigned ) time( NULL ) ); for( i = 0; i < N; i++ ) A[ i ] = rand() % 100; for( i = 0; i < N; i++ ) cout << setw( 4 ) << A[ i ]; cout << endl; for( j = N - 1; j > 0; j-- ) { p = 1; for( i = 0; i < j; i++ ) if( A[ i ] > A[ i + 1 ] ) { swap( A[ i ], A[ i + 1 ] ); p = 0; } if( p ) break; } } int ZbiorB( int B[ M ], int x ) { int j, p; cout << "Wersja przed sortowaniem i po: ;" << endl; srand( time( NULL ) ); for( x = 0; x < M; x++ ) B[ x ] = rand() % 100; for( x = 0; x < M; x++ ) cout << setw( 4 ) << B[ x ]; cout << endl; for( j = M - 1; j > 0; j-- ) { p = 1; for( x = 0; x < j; x++ ) if( B[ x ] > B[ x + 1 ] ) { swap( B[ x ], B[ x + 1 ] ); p = 0; } if( p ) break; } } int main() { cout << "Zbior A: " << endl; int moja_tablica[ N ]; ZbiorA( moja_tablica, N ); int i = 0; do { cout << moja_tablica[ i ] << ", "; i++; } while( i < N ); cout << "\nZbior B: " << endl; int moja_tablica1[ M ]; ZbiorB( moja_tablica1, M ); int j = 0; do { cout << moja_tablica1[ j ] << ", "; j++; } while( i < M ); return 0; } |
|
DejaVu |
» 2012-01-13 15:36:14 srand(( unsigned ) time( NULL ) );
Wywołaj raz na początku programu, a nie przy każdym wywołaniu funkcji.
|
|
« 1 » |