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

Лабораторная работа № 4. Генератор псевдослучайных чисел



Вещественная арифметика

Генератор псевдослучайных чисел

Для многих задач программирования, связанных с математическими моделями случайных явлений, необходимо иметь в распоряжении последовательности чисел, которые можно рассматривать как последовательности значений независимых случайных величин. В большинстве случаев такие последовательности получаются с помощью ЭВМ. Существует много различных программ, вырабатывающих детерминированные последовательности чисел, которые имеют достаточно сложную нерегулярную структуру, и поэтому похожи на последовательности случайных чисел. Такие программы называют датчиками псевдослучайных чисел. Все IBM PC используют в качестве такого датчика показания регистра счетчика канала таймера.

Функция int rand() возвращает псевдослучайное число в диапазоне от 0 до RAND_MAX. Делением числа, полученного rand(), на RAND_MAX можно получить псевдослучайное число в диапазоне от 0 до 1. Для улучшения «случайности» получаемых чисел может быть использована функция

void srand(unsigned int seed), которая устанавливает начальное значение последовательности случайных чисел. В качестве ее аргумента рекомендуется использовать текущее системное время: srand(time(NULL)). Необходимые файлы заголовков: stdlib.h, time.h.

Набор тестов (пункт 3 отчета) в данной работе следует оформить в результате проведения эксперимента с программой; в пункте 6 сравниваются и обосновываются результаты.

Задание на лабораторную работу

Написать функции вычисления числа p двумя способами. Сравнить результаты вычислений.

1-ый способ - статистический.

Полагая число p равным отношению 4Sкр/Sкв, где Sкв- площадь четвертой части квадрата со стороной, равной 2, а Sкр- площадь сектора, составляющего четвертую часть круга, вписанного в вышеуказанный квадрат, оценить Sкр и Sкв количеством случайных точек, попавших в сектор и в часть квадрата соответственно. Положение каждой случайной точки определить с помощью генератора псевдослучайных чисел rand, интерпретируя пару случайных чисел как координаты точки в двумерной системе координат с началом в центре круга. Количество экспериментов по созданию случайной точки считать входным параметром функции, вычисляющей p.

2-ой способ - геометрический.

Геометрический способ вычисления числа p использует известное определение числа p как предела отношения периметра ломаной, вписанной в полукруг единичного радиуса, при условии, что число сторон ломаной стремится к бесконечности.

Полагая число p равным половине длины окружности единичного радиуса, оценить его суммой длин отрезков ломаной, вписанной в эту дугу. Каждое очередное приближение числа p получить из предыдущего удвоением количества отрезков ломаной, воспользовавшись при этом рекуррентным соотношением:

= ,

где - длина отрезка ломаной.

Погрешность вычисления числа p считать входным параметром разрабатываемой функции.





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



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