Планирование уроков на учебный год (по учебнику Н.Д. Угриновича, профильный уровень)



Уроки 11 - 12
§1.4. Вероятностные модели




Содержание урока

1.4.1. Построение информационной модели с использованием метода Монте-Карло
1.4.2. Компьютерные модели, построенные с использованием метода Монте-Карло, на языке Visual Basic

Проект «Метод Монте-Карло» на языке Visual Basic

Компьютерный эксперимент

Контрольные вопросы

1.4.3. Компьютерные модели, построенные с использованием метода Монте-Карло, на языке Turbo Delphi

1.4.2. Компьютерные модели, построенные с использованием метода Монте-Карло, на языке Visual Basic


Проект «Метод Монте-Карло» на языке Visual Basic


Разработаем на языке Visual Basic компьютерную модель, позволяющую методом Монте-Карло определять площадь круга и число π.

1. Поместить на форму (рис. 1.21):

• графическое поле PictureBox1, в котором будет отображаться процесс случайной генерации точек;
• два текстовых поля: TextBox1 — для ввода количества генерируемых точек и TextBox2 — для ввода радиуса окружности;
• две надписи для вывода значения площади круга и числа π;
• кнопку Button1 для запуска обработчика события.

2. Установить размер графического поля: с помощью окна Свойства присвоить свойству Size значение 200;200.

3. Создать обработчик события, который обеспечивает:

• стирание результатов предыдущего опыта;
• ввод количества генерируемых точек и присваивание его переменной N;
• ввод значения радиуса окружности и присваивание его переменной R;
• генерацию случайных координат точек;
• рисование в графическом поле квадрата со стороной 2*R и окружности радиуса R;
• подсчет в переменной М количества точек, попавших внутрь круга;
• вычисление и вывод значения площади круга и числа π на надписи.


Dim Graph1 As Graphics
Dim Pen1 As New Pen (Color. Black, 1)
Dim I, N, M, X, Y, R As Long
Private Sub Button1_Click (...)
Graph1=Me.PictureBox1.CreateGraphics()
'Стирание
Graph1.Clear(Color.White)
'Ввод данных
N=Val(TextBox1,Text)
R=Val(TextBox2,Text)
'Сдвиг по осям X и У
Graph1.TranslateTransform (100,100)
'Рисование круга и квадрата
Graph1.DrawEllipse(Pen2,-R,-R,2*R,2*R)
Graph1.DrawRectangle(Pen2,-R,-R,2*R,2*R)
For I = 1 To N
'Генерация случайных координат точек и рисование точек в графическом поле
X=Int(Rnd()*2*R)-R
Y=Int(Rnd()*2*R)-R
Graph1.DrawEllipse(Penl, X, Y, 1,1)
'Подсчет точек, попавших внутрь круга
If Xˆ2+Yˆ2<=Rˆ2 Then M=M+1 Next I
'Вывод площади круга и числа Pi
Label1.Text=4*(M/N)*(Rˆ2)
Label2.Text=4*(M/N)
End Sub

4. Ввести количество генерируемых точек и радиус окружности (от 1 до 100).

Щелкнуть по кнопке Выполнить, в графическом поле будет отображен процесс генерации случайных точек, а на надписи будут выведены значение площади круга и число π (см. рис. 1.21).

Рис. 1.21. Проект «Метод Монте-Карло» на языке Visual Basic



Следующая страница Компьютерный эксперимент



Cкачать материалы урока





Наверх