| | |
| Stránka: 1 z 1
| [ Príspevkov: 4 ] | |
Autor | Správa |
---|
Registrovaný: 22.10.12 Prihlásený: 21.10.15 Príspevky: 18 Témy: 5 |
Prosím Vás ako spravím v C výber náhodných čísel bez opakovania sú to čísla z intervalu <1,80> a vyberám 20 čísel? Vopred ďakujem za Vaše odpovede
|
|
Registrovaný: 11.01.09 Prihlásený: 25.04.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 08.03.2013 16:58 | |
|
Jednoducho si kontrolujes, ci uz sa take cislo nevygenerovalo, nic zlozite: Kód: #include <stdio.h> #include <stdlib.h> #include <time.h>
int main() {
int i, j, match, myNumbers[20];
srand( time( NULL ) );
for ( i = 0; i < 20; i++ ) { do { match = 0; myNumbers[i] = rand() % 80 + 1; for ( j = 0; j < i; j++ ) if ( myNumbers[i] == myNumbers[j] ) { match = 1; break; } } while( match != 0 ); }
/* skuska */ for ( i = 0; i < 20; i++ ) printf( "%d ", myNumbers[i] ); printf( "\n" );
return 0;
}
_________________ Ak potrebujete pomoc s diagnostikou/opravou vasej elektroniky ( notebook, motherboard, GPU, a ine ), kontaktujte ma cez SS. |
|
Registrovaný: 22.10.12 Prihlásený: 21.10.15 Príspevky: 18 Témy: 5 | |
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 08.03.2013 17:37 | |
|
Viem, že toto asi stačí, ale nedá mi to - toto je také "lajdácke" riešenie Trošku krajšie a rovnako jednoduché, by bolo: Vygeneruješ si pole 80 čísel a naplníš ho číslami svojho indexu (na indexe 1 bude 1, na 2 bude 2 atď) Vyberieš náhodný index, uložíš si jeho hodnotu ako "náhodné číslo" a toto číslo vymeníš s posledným prvkom v poli. Potom veľkosť poľa znížiš o jedna (zrazu nebude posledný 80, ale 79) A celý postup zopakuješ 20 krát. Tak sa ti určite nestane, že vyberieš dva krát to isté (lebo ich "vyradzuješ" z generovania)
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
| Stránka: 1 z 1
| [ Príspevkov: 4 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| vyber z databazy bez opakovania v PHP, ASP | 6 | 310 | 14.06.2013 12:47 chodnik | | SW generator nahodnych cisel v Ostatné programy | 0 | 1193 | 16.02.2009 10:28 markog | | viac nahodnych obrazkov v JavaScript, VBScript, Ajax | 0 | 560 | 01.09.2008 9:08 daoc | | [VYRIESENE] Generator nahodnych cisiel v PHP, ASP | 17 | 1238 | 22.02.2009 16:58 stenley | | Stráca signál v náhodných intervaloch v nVidia grafické karty | 1 | 261 | 26.12.2013 0:37 Suit | | vyber medzi lcd s a bez dvi v Monitory, televízory a projektory | 5 | 725 | 05.10.2008 22:13 beast | | pc na hry bez taktovania 650-700e bez monitora bez OS v PC zostavy | 9 | 1339 | 03.12.2012 19:52 brmbo | | Herne PC do 600e bez periferii, bez OS, bez HDD v PC zostavy | 9 | 1209 | 26.11.2011 15:59 Ondr00 | | Generovanie cisel v PHP, ASP | 5 | 921 | 06.02.2010 17:44 Ďuri | | Z cisel text? v PHP, ASP | 3 | 426 | 21.03.2010 10:27 Ďuri | | Java - súčin čisel v Assembler, C, C++, Pascal, Java | 3 | 589 | 08.10.2014 20:31 Lessik | | Generátor pseudonáhodných čísel v Assembler, C, C++, Pascal, Java | 11 | 1045 | 14.10.2007 19:35 Integer | | Zoradenie cisel Java v Assembler, C, C++, Pascal, Java | 2 | 1665 | 09.11.2012 8:54 fista1 | | Problem s urcenim cisel v PHP, ASP | 1 | 349 | 07.03.2009 14:17 Ďuri | | Delphi : Edit nacitanie cisel v Delphi, Visual Basic | 5 | 758 | 05.10.2011 12:40 Memorex88 | | C++ Čitanie znakov/čísel v Assembler, C, C++, Pascal, Java | 6 | 565 | 09.05.2014 12:04 Lukys12345 |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|