Nalutas: random na numero sa pagitan ng 2 sa C

Pagbuo ng Mga Random na Numero sa pagitan ng 2 sa C Programming Language

Ang kakayahang bumuo ng mga random na numero ay maaaring maging kritikal sa ilang uri ng mga gawain sa computer programming, partikular sa disenyo ng algorithm o kung saan kinakailangan ang simulation. Sa artikulong ito, susuriin natin ang isang pangunahing aspeto ng C programming, na bumubuo ng mga random na numero. Ipagpalagay namin na mayroon kang pangunahing pag-unawa sa C programming language. Ang C ay isang makapangyarihang pangkalahatang layunin na wika na nagbibigay sa mga programmer ng higit na kontrol at kahusayan, na napakahusay para sa programming sa mababang antas

Marahil ay narito ka dahil kailangan mo ng solusyon kung paano bumuo ng random na numero sa pagitan ng 2 sa C. Ito ay isang mahalagang pamamaraan, partikular sa mga laro at sa mga sitwasyon kung saan kailangan mong gayahin ang hindi mahuhulaan sa iyong mga programa. Sumisid tayo.

Pag-unawa sa Solusyon

Sa konsepto, ang ideya na bumuo ng isang random na numero sa pagitan ng 2 sa C ay nagsasangkot ng paggamit ng mga partikular na function ng library na ibinibigay ng wika lalo na ang rand() at srand() mga function. Ang rand() ay ginagamit upang bumuo ng isang serye ng mga pseudorandom na numero, ngunit upang matiyak na ang mga numerong ito ay hindi sumusunod sa isang nakikilalang pattern, ginagamit din namin srand() function, na nagbubunga ng random number generator para bigyan kami ng mas mahusay na randomness.

Mahalaga, maaaring kailanganin mong i-tweak ang code ayon sa saklaw kung saan mo gustong mahulog ang mga random na numero. Halimbawa, kung gusto mo ng random na numero sa pagitan ng 1 at 2, gagamit ka ng ibang equation mula sa kung kailan mo gustong magkaroon ng numero sa pagitan ng 2 at 100.

Hakbang-hakbang na Pagpapaliwanag ng Kodigo

Narito ang kumpletong bloke ng code para sa pagbuo ng random na numero sa pagitan ng 2 gamit ang C programming language:

#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;
}

Hatiin natin ang code nang paisa-isa:

  • Isama muna namin ang kinakailangang karaniwang input/output library stdio.h at ang karaniwang aklatan stdlib.h na naglalaman ng mga rand() at srand() function.
  • Binhi namin ang random number generator gamit srand(oras(0)). Tinitiyak nito na makakakuha ka ng ibang pagkakasunud-sunod ng mga random na numero sa tuwing pinapatakbo mo ang iyong programa.
  • Pagkatapos, bumubuo kami ng random na numero gamit ang rand() function at ang modulus operation % 2 + 1 upang paghigpitan ang hanay ng mga nabuong numero mula 1 hanggang 2.
  • Sa wakas, ginagamit namin printf upang i-print ang aming random na numero sa console.

Pagbuod ng Mas Malalim: Mga Aklatan at Pag-andar

Sa seksyong ito, sumisid kami nang mas malalim sa dalawang pangunahing pag-andar na ginamit namin, rand() at srand(), na gumagana sa loob ng stdlib.h aklatan. Ang mga function na ito ay napakahalaga kapag nangangailangan ng mga random na numero. Gayunpaman, umaasa sila sa isang pseudo-random na generator na nangangailangan ng seed input upang matiyak na hindi ito magre-reproduce ng parehong pagkakasunud-sunod ng mga numero โ€“ isang sitwasyon na salungat sa aming layunin ng pagkamit ng randomness. Ang srand() Ang function ay partikular na ginagamit sa bagay na ito.

Mahalaga, gamit oras(0) dahil ginagarantiyahan ng seed input na sa tuwing pinapatakbo mo ang program, kinukuha ng pseudo-random generator ang seed mula sa kasalukuyang oras na patuloy na nagbabago at samakatuwid, ang output sequence ay iba sa bawat oras.

Kaugnay na mga post:

Mag-iwan ng komento