Srand (jazyk C): Rozdiel medzi revíziami
Skočit na navigaci
Skočit na vyhledávání
(Vytvorená stránka „{{Funkcie jazyka c}} __NOTOC__ ==Funkcia system== <properties> knižnica=stdlib.h popis=spustí externý program </properties> Úplný funkčný prototyp: <source lan…“) |
d (→Príklad) |
||
(6 medziľahlých úprav od 3 ďalších používateľov nie je zobrazených) | |||
Riadok 1: | Riadok 1: | ||
{{Funkcie jazyka c}} | {{Funkcie jazyka c}} | ||
__NOTOC__ | __NOTOC__ | ||
− | ==Funkcia | + | ==Funkcia srand== |
<properties> | <properties> | ||
knižnica=stdlib.h | knižnica=stdlib.h | ||
− | popis= | + | popis=Nastaví ''seed'' generátoru pseudonáhodných čísel. |
</properties> | </properties> | ||
Riadok 13: | Riadok 13: | ||
==Podrobný popis funkcie== | ==Podrobný popis funkcie== | ||
− | + | Inicializuje generátor pseudonáhodných čísel, ktorý využíva funkcia [[Rand (jazyk C)|rand]]. Inicializácia spočíva v nastavení parametru ''seed'', teda počiatočnej iniciačnej hodnoty. Zvyčajne sa ako ''seed'' používa systémový čas, pretože nikdy nie je rovnaký. | |
==Parametre== | ==Parametre== | ||
Riadok 26: | Riadok 26: | ||
int random(int min, int max) { | int random(int min, int max) { | ||
− | + | return (rand() % (max - min + 1)) + min; | |
} | } | ||
int main() { | int main() { | ||
− | + | time_t t; | |
− | + | int n = 5; //počet vypísaných čísel | |
− | + | srand((unsigned)time(&t)); //inicializuje generátor náhodných čísel podľa času | |
− | + | ||
− | + | for (int i = 0; i < n; i++) { | |
− | + | printf("%d\n", random(1,50)); //vypíše náhodné číslo od 1 po 50 | |
− | + | } | |
− | + | return 0; | |
− | |||
− | |||
} | } | ||
</source> | </source> | ||
− | Výstup (môže sa líšiť): | + | ''Výstup (môže sa líšiť):'' |
7 | 7 | ||
33 | 33 | ||
Riadok 50: | Riadok 48: | ||
43 | 43 | ||
− | == | + | ==Referencie== |
Aktuálna revízia z 23:20, 19. máj 2020
<ctype.h> | <limits.h> | <stdio.h> | <stdlib.h> | <math.h> | <string.h> | <time.h> |
---|---|---|---|---|---|---|
isalnum |
printf |
system |
Funkcia srand
knižnica | stdlib.h |
popis | Nastaví seed generátoru pseudonáhodných čísel. |
Úplný funkčný prototyp:
void srand(unsigned int seed)
Podrobný popis funkcie
Inicializuje generátor pseudonáhodných čísel, ktorý využíva funkcia rand. Inicializácia spočíva v nastavení parametru seed, teda počiatočnej iniciačnej hodnoty. Zvyčajne sa ako seed používa systémový čas, pretože nikdy nie je rovnaký.
Parametre
- seed
- Celé číslo, ktoré sa má použiť ako seed generátoru pseudonáhodných čísel.
Príklad
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <time.h>
4
5 int random(int min, int max) {
6 return (rand() % (max - min + 1)) + min;
7 }
8
9 int main() {
10 time_t t;
11 int n = 5; //počet vypísaných čísel
12 srand((unsigned)time(&t)); //inicializuje generátor náhodných čísel podľa času
13
14 for (int i = 0; i < n; i++) {
15 printf("%d\n", random(1,50)); //vypíše náhodné číslo od 1 po 50
16 }
17 return 0;
18 }
Výstup (môže sa líšiť):
7 33 31 30 43