Generisanje slučajnih brojeva između 2 u C programskom jeziku
Sposobnost generiranja slučajnih brojeva može biti kritična u određenim tipovima zadataka kompjuterskog programiranja, posebno u dizajnu algoritama ili gdje je potrebna simulacija. U ovom članku ćemo se pozabaviti osnovnim aspektom C programiranja, a to je generiranje slučajnih brojeva. Pretpostavljamo da imate osnovno razumevanje programskog jezika C. C je moćan jezik opšte namene koji programerima daje veću kontrolu i efikasnost, što je odlično za programiranje na niskom nivou
Vjerovatno ste ovdje jer vam treba rješenje kako da generišete slučajni broj između 2 u C. Ovo je suštinska tehnika, posebno u igricama iu situacijama kada trebate simulirati nepredvidljivost u svojim programima. Hajde da zaronimo.
Razumijevanje rješenja
Konceptualno, ideja da se generiše slučajni broj između 2 u C uključuje upotrebu specifičnih bibliotečkih funkcija koje pruža jezik prvenstveno jezik rand() i srand() funkcije. The rand() koristi se za generiranje niza pseudoslučajnih brojeva, ali kako bismo osigurali da ti brojevi ne slijede prepoznatljiv obrazac, također koristimo srand() funkcija, koja postavlja generator slučajnih brojeva da bi nam dala bolju slučajnost.
Važno je da ćete možda morati podesiti kod prema rasponu unutar kojeg želite da nasumični brojevi padaju. Na primjer, ako želite nasumični broj između 1 i 2, upotrijebit ćete drugačiju jednadžbu nego kada želite broj između 2 i 100.
Korak po korak objašnjenje koda
Ovdje je kompletan blok koda za generiranje slučajnog broja između 2 koristeći programski jezik C:
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { srand(time(0)); int random_number = rand() % 2 + 1; printf("%dn", random_number); return 0; }
Hajde da razbijemo kod dio po dio:
- Prvo uključujemo neophodnu standardnu ulazno/izlaznu biblioteku stdio.h i standardnu biblioteku stdlib.h koji sadrži rand() i srand() funkcije.
- Koristimo generator slučajnih brojeva srand(vrijeme(0)). Ovo osigurava da dobijete drugačiji niz slučajnih brojeva svaki put kada pokrenete svoj program.
- Zatim generiramo slučajni broj koristeći rand() funkcija i rad modula % 2 + 1 ograničiti raspon generiranih brojeva od 1 do 2.
- Konačno, koristimo printf da ispišemo naš slučajni broj na konzolu.
Udubljivanje: biblioteke i funkcije
U ovom ćemo odjeljku zaroniti dublje u dvije glavne funkcije koje smo koristili, rand() i srand(), koji posluju u okviru stdlib.h biblioteka. Ove funkcije su neprocjenjive kada su potrebni slučajni brojevi. Međutim, oni se oslanjaju na pseudo-slučajni generator kojem je potreban početni unos kako bi se osiguralo da ne reproducira isti niz brojeva – situacija koja bi prkosila našoj svrsi postizanja slučajnosti. The srand() funkcija se posebno koristi u tom smislu.
U suštini, korištenje vrijeme(0) kao početni unos garantuje da svaki put kada pokrenete program, pseudo-slučajni generator uzima seme iz trenutnog vremena koje se kontinuirano menja i stoga je izlazni niz svaki put drugačiji.