Den tilfældige funktion i COBOL

Forstørrelsesglas og lagerlister

En tilfældig talgenerator i COBOL hjælper statistiske beregninger.

Billedkredit: Hemera Technologies/Photos.com/Getty Images

COBOL-programmeringssproget, et af de ældste, der stadig bruges regelmæssigt, har en stærk bias over for forretningsapplikationer, såsom regnskab, løn og lagerstyring. Nyere versioner af COBOL har dog sofistikerede matematiske funktioner, herunder en til at generere tilfældige tal. Selvom de sjældent bruges til det daglige forretningsregnskab, hjælper tilfældige tal med at lette statistiske beregninger og visse former for numeriske problemløsningsteknikker.

Funktioner

COBOL matematiske funktioner er en del af sprogets procedureinddeling, den del af programmet, der består af proceduremæssige udsagn. Funktioner begynder med det reserverede ord "funktion" efterfulgt af funktionsnavnet, såsom "cos", "tilfældig" eller "log." En funktion tager et eller flere argumenter, udfører en proces på dem og returnerer et resultat tilbage til COBOL program. Nogle funktioner fungerer på tal og numeriske variable, mens andre arbejder på tegndata.

Dagens video

Tilfældig

Den tilfældige funktion tager et ikke-negativt heltalsargument og returnerer et decimaltal. Heltalsargumentet er valgfrit. Det er kimen til en pseudo-tilfældig matematisk proces, der bestemmer funktionens første returnerede tal. På computersprog er alle tilfældige processer i virkeligheden lange, gentagende rækker af tal, der ser ud til at være tilfældige. En velvalgt proces gentager sig først efter milliarder af værdier, så det er en praktisk kilde til tilfældige tal, selvom det ikke er en teoretisk ren. Hvis du forsyner den tilfældige funktion med et argument, vil den generere den samme rækkefølge af tal. Uden argumentet genererer den tilfældige funktion det næste tal i sin rækkefølge.

Rækkevidde og distribution

Den tilfældige funktion i COBOL returnerer decimaltal i et interval fra nul til en. Statistisk set har de tilfældige tal en rektangulær fordeling, hvilket betyder, at hvert tal er lige sandsynligt. En graf over en lang række af tilfældige tal vil have en relativt flad linje, der strækker sig fra nul til næsten én. Dette står i kontrast til normal- eller gaussfordelingen, som danner en klokkeformet kurve.

Brug

I sig selv er tilfældige decimaltal ikke særlig nyttige, men hvis du gange dem med en skaleringsfaktor, opretter du en række tilfældige tal, der passer til din applikation. For at opnå tilfældige heltal mellem 1 og 52, skal du f.eks. bruge følgende COBOL-sætning: COMPUTE RANDOM-VALUE = FUNCTION RANDOM (1) * 52 + 1.

I sætningen genererer den tilfældige funktion tal større end eller lig med nul og mindre end én. Hvis du multiplicerer dette med 52, får du tal mellem nul og 51. Tilføjelse af en giver dig intervallet fra en til 52.