Случајна функција у ЦОБОЛ-у

Лупа и листа акција

Генератор случајних бројева у ЦОБОЛ-у помаже у статистичким прорачунима.

Кредит за слику: Хемера Тецхнологиес/Пхотос.цом/Гетти Имагес

Програмски језик ЦОБОЛ, један од најстаријих који се још увек редовно користи, има снажну пристрасност према пословним апликацијама, као што су рачуноводство, платни списак и контрола залиха. Међутим, новије верзије ЦОБОЛ-а имају софистициране математичке функције, укључујући и ону за генерисање случајних бројева. Иако се ретко користе за свакодневно пословно рачуноводство, насумични бројеви помажу у олакшавању статистичких прорачуна и одређених врста нумеричких техника решавања проблема.

Функције

Математичке функције ЦОБОЛ-а су део процедуралне поделе језика, део програма који се састоји од процедуралних исказа. Функције почињу резервисаном речју „функција“ праћеном именом функције, као што је „цос“, „рандом“ или "Пријава." Функција узима један или више аргумената, извршава процес на њима и враћа резултат назад у ЦОБОЛ програм. Неке функције раде на бројевима и нумеричким варијаблама, док друге раде на знаковним подацима.

Видео дана

Рандом

Случајна функција узима аргумент који није негативан цео број и враћа децимални број. Целобројни аргумент је опциони. То је семе за псеудо-случајни математички процес, који одређује први враћени број функције. У компјутерским језицима, сви случајни процеси су у ствари дуги, понављајући низ бројева који изгледају као случајни. Добро одабран процес се понавља тек након милијарди вредности, тако да је практичан извор случајних бројева, чак и ако није теоријски чист. Ако насумичну функцију доставите аргументом, она ће генерисати исти низ бројева. Без аргумента, насумична функција генерише следећи број у свом низу.

Распон и дистрибуција

Случајна функција у ЦОБОЛ-у враћа децималне бројеве у опсегу од нула до један. Статистички гледано, случајни бројеви имају правоугаону дистрибуцију, што значи да је сваки број подједнако вероватан. Графикон дугог низа случајних бројева имаће релативно равну линију која се протеже од нуле до скоро један. Ово је у супротности са нормалном, или Гаусовом, дистрибуцијом, која формира кривину у облику звона.

Користите

Сами по себи, децимални бројеви насумичне функције нису много корисни, али ако их помножите фактором скалирања, креирате низ насумичних бројева погодних за вашу апликацију. На пример, да бисте добили насумичне целе бројеве између један и 52, користили бисте следећу ЦОБОЛ изјаву: ЦОМПУТЕ РАНДОМ-ВАЛУЕ = ФУНЦТИОН РАНДОМ (1) * 52 + 1.

У исказу, насумична функција генерише бројеве веће или једнаке нули и мање од један. Множењем овога са 52 добијате бројеве између нула и 51. Додавањем једног добијате опсег од један до 52.