[C++] Program jest słabo zooptymalizowany, do tego generuje liczby na każdą z zmiennych osobno.
Ostatnio zmodyfikowano 2017-03-04 17:52
tomasz532 Temat założony przez niniejszego użytkownika |
[C++] Program jest słabo zooptymalizowany, do tego generuje liczby na każdą z zmiennych osobno. » 2017-03-04 17:20:38 Witam. Mam problem, a dokładniej ze złą optymalizacją ( ten kod spowalnia strasznie kompilator ), czy mógłby ktoś poprawić kod , tak, żeby program nie musiał losować liczb , jedną na każdą zmienną osobno (a przy okazji trochę odciążyć komputer)? #include <iostream> #include <cstdlib> #include <ctime> using namespace std;
int Terrain;
int Generator1; int Generator2; int Generator3; int Generator4; int Generator5; int Generator6; int Generator7; int Generator8; int Generator9; int Generator10; int Generator11; int Generator12;
int Nothing;
int main() { srand( time( NULL ) ); for( Terrain = 1; Terrain <= 10; ) { Generator1 =( std::rand() % 5 ) + 1; Generator2 =( std::rand() % 5 ) + 1; Generator3 =( std::rand() % 5 ) + 1; Generator4 =( std::rand() % 5 ) + 1; Generator5 =( std::rand() % 5 ) + 1; Generator6 =( std::rand() % 5 ) + 1; Generator7 =( std::rand() % 5 ) + 1; Generator8 =( std::rand() % 5 ) + 1; Generator9 =( std::rand() % 5 ) + 1; Generator10 =( std::rand() % 5 ) + 1; Generator11 =( std::rand() % 5 ) + 1; Generator12 =( std::rand() % 5 ) + 1; cout << Generator1 << Generator2 << Generator3 << Generator4 << Generator5 << Generator6 << Generator7 << Generator8 << Generator9 << Generator10 << Generator11 << Generator12 << endl; Terrain++; } std::cin >> Nothing; return 0; }
|
|
maly7 |
» 2017-03-04 17:52:09 #include <iostream> #include <cstdlib> #include <ctime> using namespace std;
int main() { int Nothing; srand( time( NULL ) ); for( int Terrain = 0; Terrain < 10; Terrain++ ) { for( int Terrain2 = 0; Terrain2 < 12; Terrain2++ ) cout << rand() % 5 + 1; cout << endl; } std::cin >> Nothing; return 0; }
Jeśli chcesz faktycznie losować tyle liczb, to przy każdej rand się przydaje, nie skrócisz tego. Po co tyle zmiennych globalnych, jeśli losowe liczby musisz zapisywać możesz utworzyć jedną tablice, jeśli tylko wypisywać, zmienna nie potrzebna. Po co na końcu terrain++ skoro pętla for robi to za ciebie. Najlepiej powiedz jakie liczby ma losować i w jaki sposób, wtedy będzie można coś myśleć. |
|
« 1 » |