Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Випадкові числа



Розглянемо засоби для отримання "випадкових" чисел. "Випадкові" числа мають широке застосування на практиці, зокрема, при моделюванні фізичних процесів, при створенні комп’ютерних ігор, тощо.

procedure Randomize;

Процедура ініціалізує вбудований генератор випадкових чисел за значеннями, отриманими від системного таймера. Якщо в програмі потрібно використати випадкові числа, достатньо один раз використати цю процедуру на початку програми.

function Random[(R: Word)];

Функція повертає випадкове число.

Якщо параметр R не вказано, то результат – дійсне число X із діапазону [0, 1).

Якщо параметр R вказано (вираз цілого типу), то результат – число типу Word із діапазону [0, R – 1].

Якщо R ≤ 0, то результат рівний нулю.

Типові задачі:

Отримати випадкове дійсне число X [ A, B ] X:= A + Random*(B – A)
Отримати випадкове ціле число X [ A, B ] X:= A + Random(B – A + 1)

Розглянемо приклад: отримати N випадкових чисел із діапазону [ A, B ].

В наведеному прикладі використовується оператор i:=i+ 1, за яким збільшується значення змінної i на одиницю. Є процедури аналогічного призначення, які виконуються ефективніше:

procedure Inc (Var X [,N ]: LongInt); Збільшує значення змінної X. procedure Dec (Var X [,N ]: LongInt); Зменшує значення змінної X.

Параметр X – змінна впорядкованого типу, N – вираз цілого типу. Значення змінної X збільшується при виконанні процедури Inc ( або зменшується при виконанні процедури Dec) на 1 (або на N, якщо параметр N задано). У наведеній нижче таблиці в кожному рядку подано оператори, що дають однакові результати:

Inc(i) i:= i + 1
Inc(i, n) i:= i + n
Dec(i) i:= i – 1
Dec(i, n) i:= i – n




Дата публикования: 2015-04-06; Прочитано: 313 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...