Atsitiktinė funkcija COBOL

Didinamasis stiklas ir akcijų sąrašai

Atsitiktinių skaičių generatorius COBOL padeda atlikti statistinius skaičiavimus.

Vaizdo kreditas: Hemera Technologies/Photos.com/Getty Images

COBOL programavimo kalba, viena iš seniausių vis dar nuolat naudojamų, turi didelį šališkumą verslo programoms, tokioms kaip apskaita, darbo užmokestis ir atsargų kontrolė. Tačiau naujesnėse COBOL versijose yra sudėtingų matematinių funkcijų, įskaitant vieną, skirtą atsitiktiniams skaičiams generuoti. Nors retai naudojami kasdienėje verslo apskaitoje, atsitiktiniai skaičiai padeda lengviau atlikti statistinius skaičiavimus ir tam tikrus skaitinius problemų sprendimo būdus.

Funkcijos

COBOL matematikos funkcijos yra kalbos procedūrų skyriaus dalis, programos dalis, kurią sudaro procedūriniai teiginiai. Funkcijos prasideda rezervuotu žodžiu „funkcija“, po kurio nurodomas funkcijos pavadinimas, pvz., „cos“, „atsitiktinis“ arba "rąstas". Funkcija paima vieną ar daugiau argumentų, su jais atlieka procesą ir grąžina rezultatą atgal į COBOL programa. Kai kurios funkcijos veikia su skaičiais ir skaitiniais kintamaisiais, o kitos – su simbolių duomenimis.

Dienos vaizdo įrašas

Atsitiktinis

Atsitiktinė funkcija paima neneigiamą sveikojo skaičiaus argumentą ir grąžina dešimtainį skaičių. Sveikojo skaičiaus argumentas yra neprivalomas. Tai yra pseudoatsitiktinio matematinio proceso sėkla, kuri nustato pirmąjį funkcijos grąžintą skaičių. Kompiuterinėmis kalbomis visi atsitiktiniai procesai iš tikrųjų yra ilgi, kartojasi skaičių serijos, kurios atrodo atsitiktinės. Tinkamai parinktas procesas kartojasi tik po milijardų reikšmių, todėl jis yra praktinis atsitiktinių skaičių šaltinis, net jei jis nėra teoriškai grynas. Jei pateiksite atsitiktinę funkciją su argumentu, ji sugeneruos tą pačią skaičių seką. Be argumento atsitiktinė funkcija generuoja kitą savo sekos skaičių.

Diapazonas ir pasiskirstymas

Atsitiktinė funkcija COBOL grąžina dešimtainius skaičius nuo nulio iki vieneto. Statistiškai atsitiktinių skaičių pasiskirstymas yra stačiakampis, o tai reiškia, kad kiekvienas skaičius yra vienodai tikėtinas. Ilgos atsitiktinių skaičių sekos grafikas turės palyginti plokščią liniją, besitęsiančią nuo nulio iki beveik vieneto. Tai prieštarauja normaliam arba Gauso pasiskirstymui, kuris sudaro varpo formos kreivę.

Naudokite

Patys savaime atsitiktinių funkcijų dešimtainiai skaičiai nėra labai naudingi, tačiau padauginę juos iš mastelio koeficiento, sukursite atsitiktinių skaičių diapazoną, tinkamą jūsų programai. Pavyzdžiui, norėdami gauti atsitiktinius sveikuosius skaičius nuo vieno iki 52, naudokite šį COBOL teiginį: COMPUTE RANDOM-VALUE = FUNCTION RANDOM (1) * 52 + 1.

Teiginyje atsitiktinė funkcija generuoja skaičius, didesnius arba lygius nuliui ir mažesnius už vienetą. Padauginus tai iš 52, gausite skaičius nuo nulio iki 51. Pridėjus vieną, gaunamas diapazonas nuo vieno iki 52.