29 / 29 / 0
Регистрация: 31.01.2020
Сообщений: 181

Найти приближённое значение Пи

05.03.2020, 20:02. Показов 14988. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ограничение времени
1 секунда
Ограничение памяти
64Mb
Ввод
стандартный ввод или input.txt
Вывод
стандартный вывод или output.txt

При помощи метода Монте-Карло определите приближённое значение числа π.
Метод Монте-Карло — общее название группы численных методов, основанных на получении большого числа реализаций стохастического (случайного) процесса, который формируется таким образом, чтобы его вероятностные характеристики совпадали с аналогичными величинами решаемой задачи.

Например, если мы будем случайным образом «бросать» на плоскость точки (случайно выбирать координаты x и y), то чем больше площадь фигуры, тем больше на нее попадёт точек. Если при этом число «бросков» стремится к бесконечности, то отношение количества точек, попавших на две фигуры, будет стремиться к отношению площадей этих фигур.

Из курса математики мы знаем, что площадь круга равна πR2. Значит, чтобы вычислить число π, достаточно узнать площадь круга радиусом 1. Для простоты вычисления возьмём четверть такого круга, лежащую в I квадранте Декартовой плоскости, а потом умножим результат на 4. Таким образом, координаты x и у будут меняться в диапазоне [0, 1].
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.03.2020, 20:02
Ответы с готовыми решениями:

Найти приближенное значение минимума функции
Помогитее пожалуйстаа написать код программы на Питоне Условие: Найти приближенное значение минимума функции f(x)=((2 * x - 43)...

Найти приближенное значение квадратного корня из 2 методом половинного деления с точностью 0.000001
from math import sqrt(x) def f(x): return sqrt(x) - 10 left, right = 1.0, 2.0 accuracy = 0.000001 while (right -...

Найти приближенное значение пи
При помощи метода Монте-Карло определите приближённое значение числа π. Метод Монте-Карло — общее название группы численных методов,...

2
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,759
05.03.2020, 22:12
Python
1
2
3
4
5
6
7
import random
n=100000
k=0.0
for i in range(n):
    c=complex(random.random(), random.random())
    k+=(abs(c)<1.0)
print(4*k/n)
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
06.03.2020, 03:26
Смущает затратная операция -- извлечение квадратного корня. Но ее можно избежать.
Python
1
2
3
4
5
6
7
8
import random
n=500000
k=0.0
for i in range(n):
    x = random.random()
    y = random.random()
    k+=(x*x + y*y < 1.0)
print(4*k/n)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.03.2020, 03:26
Помогаю со студенческими работами здесь

Найти приближённое значение Пи
При помощи метода Монте-Карло определите приближённое значение числа π. Метод Монте-Карло — общее название группы численных методов,...

Найти приближенное значение косинуса
Описать функцию Cos1(x, ε) вещественного типа (параметры x, ε — вещественные, ε &gt; 0), находящую приближенное значение функции cos(x): ...

Найти приближенное значение корня степени из числа
Описать рекурсивную функцию SqrtK(x,k,n) вещественного типа, находящую приближенное значение корня k-й степени из числа x по формуле: ...

Найти приближённое значение Пи методом Монте-Карло
При помощи метода Монте-Карло определите приближённое значение числа π. Метод Монте-Карло — общее название группы численных методов,...

приближенное значение функции
1. Дан одномерный массив числовых значений, насчитывающий N элементов. Добавить столько элементов, чтобы положительных и отрицательных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru