Багатьом програмам потрібні (псевдо)випадкові значення, щоб імітувати події реального світу.
Ось кілька звичних і знайомих прикладів:
Генерування справді випадкових значень на компʼютері - напрочуд складна технічна задача, саме тому існують також «псевдовипадкові» генератори.
Функцію Math.random() НЕ можна використовувати в застосунках, повʼязаних із безпекою та криптографією!
Щоб дізнатися більше, заверште навчальну вправу (вправи) про цю концепцію
У JavaScript ми можемо генерувати псевдовипадкові числа за допомогою функції Math.random().
Вона повертає псевдовипадкове число з плаваючою комою від 0 (включно) до 1 (не включно).
Мері дуже любить серіал Star Trek: The Next Generation. Вона часто грає в настільні рольові ігри, де разом із друзями перевтілюється в екіпаж зорельота «Ентерпрайз». Мері грає роль капітана Пікара, а це означає, що їй треба вести капітанський журнал. Їй подобається творча частина гри, але не подобається генерувати випадкові дані на ходу.
Допоможіть Мері: створіть генератори випадкових даних, які часто трапляються в капітанському журналі.
«Ентерпрайз» (реєстраційний номер NCC-1701) не єдиний зореліт у космосі! Коли він зустрічає інший зореліт, Мері треба записати реєстраційний номер цього зорельота.
Реєстраційні номери починаються з префікса «NCC-», а далі йде число від 1000 до 9999 (включно).
Реалізуйте функцію randomShipRegistryNumber(), яка повертає випадковий реєстраційний номер зорельота.
randomShipRegistryNumber();
// => "NCC-1947"
Який сенс у журналі, якщо в ньому немає дат?
Зоряна дата - це число з плаваючою комою. Пригоди зорельота «Ентерпрайз» у першому сезоні The Next Generation відбуваються між зоряними датами 41000.0 і 42000.0. «4» позначає 24-те століття, а «1» - перший сезон.
Реалізуйте функцію randomStardate, яка повертає число з плаваючою комою від 41000.0 (включно) до 42000.0 (не включно).
randomStardate();
// => 41458.15721310934
Під час мандрівок зореліт «Ентерпрайз» зустрічає багато планет. Планети у всесвіті Star Trek поділяються на категорії за їхніми властивостями. Наприклад, Земля належить до планет класу M. Усі можливі класи планет: D, H, J, K, L, M, N, R, T і Y.
Реалізуйте функцію randomPlanetClass().
Вона має повертати один із класів планет навмання.
randomPlanetClass();
// => "K"
Зареєструйтеся на Exercism, щоб вивчати й опановувати JavaScript, а також 37 концепцій159 вправ та справжнє наставництво від людей, і все це безкоштовно.