рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

ЛАБОРАТОРНАЯ РАБОТА № 4

ЛАБОРАТОРНАЯ РАБОТА № 4 - раздел Программирование, Программирование алгоритмов сортировки массивов Вещественная Арифметика   1. Генератор Псевдослучайных...

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

 

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

 

Для многих задач программирования, связанных с математическими моделями случайных явлений, необходимо иметь в распоряжении последовательности чисел, которые можно рассматривать как последовательности значений независимых случайных величин. В большинстве случаев такие последовательности получаются с помощью ЭВМ. Существует много различных программ, вырабатывающих детерминированные последовательности чисел, которые имеют достаточно сложную нерегулярную структуру, и поэтому похожи на последовательности случайных чисел. Такие программы называют датчиками псевдослучайных чисел. Все 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 сравниваются и обосновываются результаты.

 

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

 

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

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

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

 

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

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

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

=,

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

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

 

– Конец работы –

Эта тема принадлежит разделу:

Программирование алгоритмов сортировки массивов

Государственное образовательное учреждение... Высшего профессионального образования... Санкт Петербургский государственный университет...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: ЛАБОРАТОРНАЯ РАБОТА № 4

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Санкт-Петербург
Составители: Т.М.Максимова   Рецензент: В.П.Попов     В методические указания включены краткие теоретические сведения, необходимые д

ОБЩИЕ ТРЕБОВАНИЯ К СОДЕРЖАНИЮ ОТЧЕТОВ
  В методические указания включены задания на 8 лабораторных работ, содержанием которых является разработка программы на языке С. Процесс разработки программы студент должен отразить

Текст программы
  void sort(int *a, char n) //функция сортировки n первых элементов (n<=100) массива a { bool f=true; //признак выполнения операции обмена char

ЛАБОРАТОРНАЯ РАБОТА N 1
Встроенные типы данных   1. Основные типы данных Язык С поддерживает несколько базовых типов данных, которые также называют простыми. Перечислим некоторые из них.

ЛАБОРАТОРНАЯ РАБОТА N 2
Программирование операций ввода-вывода   1.Некоторые библиотечные функции для работы с файлами   Функции файлового ввода-вывода используют указатель фа

ЛАБОРАТОРНАЯ РАБОТА № 3
Целочисленная арифметика   1. Введение в постановку задачи 1.1. Позиционные системы счисления При записи числа в позиционной системе счисления вклад каждой

ЛАБОРАТОРНАЯ РАБОТА № 5
Операции над многословными операндами   1. Многословные операнды   Арифметические выражения в языке C представляют собой формулы для вычисления значени

ЛАБОРАТОРНАЯ РАБОТА N 6
Работа со структурами   1 Понятие табличной структуры данных   Таблицей называется структура данных, элементы которой представляют собой записи, состоя

ЛАБОРАТОРНАЯ РАБОТА N 7
Операции над списковыми структурами   1.Принципы реализации динамических структур данных   Линейный список является примером динамической структуры дан

ЛАБОРАТОРНАЯ РАБОТА N 8
Шаблоны функций   1.Перегрузка и шаблоны функций   В одной программе может быть размещено несколько функций с одним и тем же именем, если списки формал

БИБЛИОГРАФИЧЕСКИЙ СПИСОК
  1. Вирт Н. Алгоритмы и структуры данных. - М.: Мир,1989. - 360с. 2. Карпов Б., Баранова Т. С++: Специальный справочник. – СПб.: Питер, 2001. – 480с. 3. Кнут Д. Иск

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги