// експоненціально
{r_num; float root, right; _num = rand ();/* отримання випадкового цілого
/числа */= ((float) r_num)/(RAND_MAX +1)/* проекція на інтервал (0; 1) */=-log (1-right)/mu;/ * обчислення значення зворотної
/функції */(root);
} get_uniform (int a, int b)
{//Генерація рівномірно розподіленим величини a + bx, y; = rand ()% (b +1); = rand ()% 2; (y == 0) return (ax); (a + x);
}
get_triangle (float A, float B, float C)
{r_num; float root, right; _num = rand ();// отримання випадкового цілого
// числа = ((float) r_num)/(RAND_MAX +1);// проекція на інтервал (0; 1). p align="justify">// Константа RAND_MAX = 32767 (215-1) визначена в cstdlib (right <(CA)/(BA)) root = A + sqrt (right * (BA) * (CA)); root = B-sqrt ((1-right) * (BA) * (BC)); (root);
} get_pareto (float A, float B)
{r_num; float root, right; _num = rand ();/* отримання випадкового цілого числа */= (float) r_num/RAND_MAX +1;/* проекція на інтервал (0; 1) */= A/(pow (1-right, (float) 1.0/B))/* обчислення значення зворотної функції */(root);
}
Лістинг програми файл List.h
template // це постійна В«заставкаВ»
// к Класа і функцій
// c парметрізірованним тіпомListNode {: * next;// покажчик на наступний елемент списку * data;// покажчик на дані зберігаються в елементі списку: (Type * d, ListNode ; * n);// конструктор
~ ListNode ();// деструктор * Data ();// метод для читання даних * Next ();// метод для читання покажчика
// на наступний елементPutNext (ListNode * n);// метод для запису покажчика
// на наступний елементPrint ();// друк вмісту елемента списку
}; :: ListNode (Type * d, ListNode * n): next (n), data (d)
{
} :: ~ ListNode ()
{data;
} * ListNode :: Data ()
{data;
} * ListNode :: Next ()
{next;
} ListNode :: PutNext (ListNode * n)
{= n;
} ListNode :: Print ()
{> Print ();// предпологается наявність методу Print () для класу
// ім'я якого буде підставлений в призначеному для користувача коді
}
// Опис класу-шаблону з...