Урок 23. Вычисление значения числа Пи методом Монте-Карло

Цель урока: научиться использовать формулу нахождения числа pi методом Монте-Карло при построении компьютерной модели.


Построим базовый квадрат и круг в прямоугольной системе координат следующим образом.

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

Для вычисления значения числа Пи воспользуемся выведенной ранее формулой , которая для единичного круга получит вид . Оказалось, что для вычисления значения числа Пи достаточно вычислить площадь единичного круга.


Это изображение имеет пустой атрибут alt; его имя файла - homework.png

Задания

Задание 1. Создайте в системе программирования PascalABC.NET программу для вычисления числа π методом Монте-Карло.

const n=1000;//общее количество точек
var k:integer;
p,x,y:real;
begin
  k:=0;
  for var i:=1 to n do
  begin
    x:=2*random;
    y:=2*random;
    if sqr(x-1)+sqr(y-1)<=1
    then k:=k+1;
  end;
  p:=4*k/n;
  writeln('pi= ',p);
end.

Используя программу, проведите серию опытов и заполните таблицу.

Количество точек100500100010000100000200000500000
№ опытаЧисло πЧисло πЧисло πЧисло πЧисло πЧисло πЧисло π
1       
2       
Среднее значение       

Задание 2. Дополните программу, полученную в задании 1, командами, которые позволяют имитировать выполнение метода Монте-Карло. Цвет каждой точки должен быть задан случайным образом. Задайте единичный отрезок, равный 100 пикселям.

1. Создайте изображение квадрата и круга. Для этого в программе напишите команды:

rectangle(0,50,200,250);
circle(100,150,100);

2. Добавьте экранные координаты точки. Для этого:

  • В разделе Var опишите переменные: x1, y1:integer;
  • в программе напишите команды:
x1:=round(200*random);
y1:=round(200*random)+50;

3. Выводите точки с задержкой 5 мс:

sleep(5);
setpixel(x1,y1,RGB(random(256),random(256),random(256)));

Задание 3. Создайте в табличном процессоре MS Excel компьютерную модель для вычисления числа π методом Монте-Карло. Проведите серию опытов и заполните таблицу:

1.В ячейку А1 введите название: Вычисление числа Пи методом Монте-Карло.

2.В ячейки диапазона A3:D3 введите заголовки столбцов расчетной таблицы.

3.Ячейки диапазона А4:А1003 заполните числами от 1 до 1000.

4.В ячейку В4 введите формулу для вычисления случайного числа:

=2*СЛЧИС().

Скопируйте ее на диапазон ячеек В4:С1003.

5.В ячейку D4 введите формулу для проверки, попала ли точка внутрь круга:

=ЕСЛИ(((B4-1)^2+(C4-1)^2)<=1;1;0)

6.В ячейку Е4 введите формулу для подсчета количества точек, попавших в круг:

=СУММ(D4:D1003)

7.В ячейку F4 введите формулу для подсчета числа π:

=4*E4/1000.


Это изображение имеет пустой атрибут alt; его имя файла - hw-e1653285769766.png

Домашнее задание

§ 8 электронного пособия, ответить на вопросы


Форма отправки

Форма видна только зарегистрированным пользователям.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *