Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
Mr.X
Эксперт С++
3178 / 1705 / 435
Регистрация: 03.05.2010
Сообщений: 3,867
29.10.2010, 13:52 0

Вычисление числа Пи методом Монте-Карло

29.10.2010, 13:52. Просмотров 4282. Ответов 2
Метки (Все метки)

Лучший ответ Сообщение было отмечено yardie как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//////////////////////////////////////////////////////////////////////////////////////
#include <cstdlib>
#include <ctime>
#include <iostream>
//////////////////////////////////////////////////////////////////////////////////////
typedef double  T_real;
//////////////////////////////////////////////////////////////////////////////////////
T_real  get_Monte_Carlo_pi(int  n)
{    
    int  count = 0;
    for(int i = 0; i < n; ++i)
    {
        T_real  X_coord = -1.0 + static_cast<T_real>(rand()) / RAND_MAX * 2.0;    
        T_real  Y_coord = -1.0 + static_cast<T_real>(rand()) / RAND_MAX * 2.0;
        if(X_coord * X_coord + Y_coord * Y_coord < 1.0)
        {
            ++count;
        }
    }
    return  static_cast<T_real>(count) / n * 4.0;
}
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
    srand(static_cast<unsigned>(time(0)));
    std::cout << "Введите число испытаний: ";
    int n = 0;
    std::cin >> n;
    std::cout << "При "
              << n
              << " испытаний по методу Монте-Карло число ПИ равно: "
              << get_Monte_Carlo_pi(n)
              << std::endl;
}


Вернуться к обсуждению:
Вычисление числа Пи методом Монте-Карло
2
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.10.2010, 13:52
Готовые ответы и решения:

Вычисление числа Пи методом Монте-Карло
Всем доброго время суток. Написать программу для вычисления значения \pi с...

Вычисление интеграла методом Монте-Карло
Здравствуйте! Задача такая: пользователь в текстовом файле задает координаты...

Вычисление площади методом Монте-Карло
Всем доброго время суток. Написать программу для вычисления методом Монте-Карло...

Вычисление интеграла методом Монте-Карло
Здравствуйте. Помогите в написании программы. Вычислить приближенно интеграл...

Вычисление интеграла методом Монте-Карло
Нужно вычислить интеграл, как показано на первой картинке внизу темы. На второй...

2
Другие темы раздела
C++ блок-схема http://www.cyberforum.ru/cpp-beginners/thread182902.html
Напишите пожалуйста блок-схему к этой задаче Заранее Благодарен:scratch: #include<iostream.h> char glas1(char n) { switch (n) { case 'e': case 'a': case 'u': case 'y':
C++ вывести значение элемента массива..ребят,срочно..сижу на зачете! Осталось пол часа! введите длину массива и массив типа инт. Вывести значение элемента массива с наибольшим и наименьшим двоичным весом и их индексы http://www.cyberforum.ru/cpp-beginners/thread182901.html
C++ Вычисление функции
Привет. Условие : если x1<=x2<=x3 то y = a2,a1<a2;a1,a1=a2; в противном случае y=a3. ...
C++ Ввести строку символов, вывести строку так, чтобы каждое второе слово было выведено в обратном порядке
Млин люди помогите как можно скорей всего час у нас в аудитории... Надо срочно Добавлено через 32 минуты ну помогите же Добавлено через 1 минуту ну помогите же
C++ упорядочить(переставить) строки матрицы по неубыванию значений наименьших элементов строк http://www.cyberforum.ru/cpp-beginners/thread182887.html
Здравствуйте, помогите решить задачу!! Дана действительная матрица размером n x m упорядочить(переставить) строки матрицы по неубыванию значений наименьших элементов строк!! Заранее спасибо!
C++ Вопрос про классы Такой пример. Базовый класс First, и два производных от него класса Second и Third. First*ar={new First(параметры),new Second(параметры), new Third(параметры)}; В примере: Слева массив указателей... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru