Sajan Temat założony przez niniejszego użytkownika |
Losowanie - liczb np. 14, 88, 143 » 2009-02-17 21:24:26 Czy da się zrobić tak aby wylosowana liczba była np. podzielna przez 3??? Jak zrobić aby wylosować jedna z liczb np. 14, 88, 143, 555, 12956??? Chodzi mi o to aby nie podawac zakresu tylko podac kilka liczb. |
|
lynx |
» 2009-02-17 21:40:12 Czy da się zrobić tak aby wylosowana liczba była np. podzielna przez 3???
|
Tak, najlepiej użyj pętelki for w której będzie losowana liczba aż do wylosowania podzielnej przez 3. Jak zrobić aby wylosować jedna z liczb np. 14, 88, 143, 555, 12956??? Chodzi mi o to aby nie podawac zakresu tylko podac kilka liczb. |
Losowanie liczby od zera do liczby liczb. :) I instukcja switch. |
|
Skala |
» 2009-02-18 12:50:47 @Sajan - 14, 88, 143, 555, 12956 Żadna z tych liczb nie jest podzielna przez 3 ;)
Ładna funkcja manfred |
|
Sajan Temat założony przez niniejszego użytkownika |
» 2009-02-18 15:48:00 @Skala Po pierwsze to podałem dwa różne pytania. Po drugie liczba 555 jest podzielna przez trzy <555:3=185>. Matematyka sie klania xD |
|
Skala |
» 2009-02-18 17:47:47 no tak :) przepraszam za spam Przyznaje Ci rację |
|
pekfos |
» 2009-02-18 18:29:19 if( losowa % 3 == 0 ) ; dziwne że nikt nie zastosował takiego warunku |
|
manfred |
» 2009-02-17 21:53:53 1. Serio najlepiej?? int podzielnaPrzez( int co, int max ) { return( rand() %(( max + co ) / co ) ) * co; } 2. Jaki switch?? int losowaZKilku( void ) { const int ILE_LICZB = 6; const int liczby[ ILE_LICZB ] = { 42, 69, 169, 666, 4761, 443556 }; return liczby[ rand() % ILE_LICZB ]; } Szybciej, ładniej i w ogóle lepiej niż na switchu. @up: Ty masz O(+inf) i O(log n), ja O(1) i O(1). Powiedz sam co ma mniejszą złożoność. |
|
manfred |
» 2009-02-18 18:43:57 No ej, ale on chce liczbę podzielną przez 3, a jeżeli wylosuje się inna, to trzeba losować jeszcze raz, a złożoność tego algo to nieskończoność (jak się nigdy podzielna przez 3 nie wylosuje)... O tym właśnie mówił Pietrzuch. Ja rzuciłem algo o złożoności STAŁEJ. Mniejszej już nie ma... |
|
« 1 » |