Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка_модуль 2.doc
Скачиваний:
5
Добавлен:
01.12.2018
Размер:
5.84 Mб
Скачать

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

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

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

Лабораторне заняття №4

Цикл з післяумовою при розробці програм мовою Turbo Pascal

Мета: Навчитися застосовувати оператор повторення REPEAT для розв’язування задач з повтореннями деяких наборів операцій.

Засвоїти поняття: оператор повторення Repeat.

Вміти:

  • описувати циклічні процеси за допомогою оператора Repeat;

  • будувати таблицю покрокового виконання;

  • використовувати особливості оператора Repeat.

Обладнання: комп’ютери з встановленою операційною системою Microsoft Windows XP, мова програмування Turbo Pascal 7.0.

Теоретичні відомості

Оператор повторення repeat використовують для програмування циклічних процесів. Він призначений для організації повторення операторів до тих пір, поки виконається деяка умова.

Загальна схема оператора повторення repeat,

де repeat (повторювати) і until (до) – службові слова:

На відміну від оператора while, оператор repeat не потребує використання оператора об’єднання, коли потрібно здійснити повторення виконання кількох операторів.

Схема виконання оператора Repeat

  1. послідовно виконуються оператори тіла циклу (розміщені між словами repeat і until);

  2. обчислюється Логічний Вираз;

  3. якщо результат TRUE, то виконання оператора repeat припиняється;

  4. якщо результат FALSE, то здійснюється перехід до п.1.

Виконання операторів тіла циклу завжди здійсниться принаймні один раз.

Проаналізуємо дію оператора repeat на прикладі.

Вивести в рядок N натуральних чисел a1, a2,…, aN, де ai (1 ≤ i N) є сумою i перших натуральних чисел

Таблиця покрокового виконання

Практичне заняття №1-2