Kot strokovnjak za modo in programiranje cenim lepoto obeh svetov, tudi ko gre za generiranje naključnih znakov. V svetu C++ lahko to nalogo enačimo s stiliranjem popolne obleke: zahteva razumevanje načel, ustvarjalnost in kanček naključnosti, da postane vznemirljiva.
Danes se bomo podali na razburljivo potovanje in se poglobili v to, kako izdelati funkcijo za generiranje naključnega znaka v C++. Podobno kot pri pletenju čudovitega kosa oblačila, bomo uporabili prava orodja in tehnike za izdelavo programa, ki bo funkcionalen in učinkovit.
Vključene knjižnice
Najpomembnejša funkcija za generiranje naključnih števil se nahaja v knjižnici, znani kot cstdlib . Je kot glavna tkanina, ki jo uporabljamo za ustvarjanje modne mojstrovine. Ta knjižnica vsebuje funkcijo z imenom rand().
#include
Ta funkcija ob klicu vrne celo število med 0 in RAND_MAX, konstanto v cstdlib, ki običajno predstavlja visoko vrednost. Enako kot lahko živahne barve oživijo modni kos, naključnost naši kodi doda element nepredvidljivosti, zaradi česar je dinamična in prilagodljiva.
Ustvarjanje naključnega znaka
Na enak način, kot natančen modni oblikovalec združuje različne elemente za ustvarjanje osupljivega videza, bomo mi zdaj združili naša orodja za rešitev trenutne naloge – ustvarjanje naključnega lika. To vključuje preslikavo nabora celih števil, ki jih vrne funkcija rand(), v vrednosti ASCII, ki ustrezajo natisljivim znakom.
#include
#include
#include
char generate_random_char() {
srand(čas(0));
int randomInt = rand() % 128;
medtem ko(randomInt < 33) {randomInt = rand() % 128; } vrni statično_cast
}
int main () {
std::cout <<generiraj_naključni_char(); vrni 0; } [/code] V modi je čas najpomembnejši in v našem svetu ni nič drugače. Funkcija time(0) iz knjižnice ctime nam pomaga sejati našo funkcijo rand() na podlagi trenutnega časa, kar ima za posledico odličen generator za naključnost. Podobno kot brezčasen kos oblačila, ki prestane preizkus časa, velja tudi naša rešitev.
Seciranje kodeksa
Funkcija rand() vrne naključno celo število. Kot smo že omenili, bi to lahko primerjali z naključnim izbiranjem blaga iz modne škatle. Vendar niso vsi materiali primerni za naš dizajn; zato je treba preveriti njihovo kakovost ali v tem primeru obseg.
Naključno število moduliramo s 128, da zagotovimo, da leži znotraj območja natisljivih znakov ASCII, ki segajo od 0 do 127. Da pa izločimo nenatisljive znake, uvedemo zanko while, ki generira naključna števila, dokler ne dobimo naključnega števila 33 ali več, ki ustreza prvemu natisljivemu znaku ASCII – '!' (klicaj).
Nazadnje pretvorimo (cast) svoj int v char. Rezultat je naključen natisljiv znak. Vsak klic funkcije ustvari drugačen znak zaradi naše uporabe časovno zasnovanega sejanja. Na koncu je naša edinstvena mojstrovina pripravljena, da jo vidi svet, podobno kot najnovejši modni trend, ki prihaja na piste. V obeh svetovih je element presenečenja najpomembnejši in to je lepota naključnosti v programiranju in slog v modi.
Za zaključek, tako kot se različni elementi združijo, da oblikujejo modni svet, se različne knjižnice in funkcije združijo, da rešijo izzive programiranja. Generiranje naključnih znakov je samo ena od neverjetnih stvari, ki jih lahko naredimo s C++, podobno kot ustvarjanje osupljive obleke iz nabora na videz neujemajočih se elementov. To je čarovnija ustvarjalnosti – pa naj bo to v modi ali kodi.