Понедельник, 28.07.2025, 11:15
Приветствую Вас Гость | RSS
Меню сайта
Календарь
«  Июль 2025  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031
Поиск по сайту
На сайте
Excel для учащихся Профильное образование расчёты учителю информатики экономика учебная программа практикум интернет элективный 8 класс файлы контроль Всемирный день информации Олимпиада Командная конкурс «ВИРТУАЛЬНЫХ ОТКРЫТИЙ» Агрба урок авторские разработки аппроксимация Экзамен учителей agrba аттестация Испытания ответы квалификационные тест информатика Программирование контрольная работа анализ выполнения ИКТ решение алгоритмические структуры Базовые результат Весна алгоритмические конструкции Open Office.org Сalc новый год Праздник поздравление афоризмы дети безопасность ГИА 2014 3 декабря акция кода час будущее час кода паскаль 32 64 lenoit базы данных 10 класс pascal выпускник Профессия баллы итоги презентация безопасности Домашнее задание 10Б 11Б 2016 21 век ОГЭ Тренировочная работа 9 класс STREAM-игра разминочная работа 24 C1 Безопасность в сети Интернет информатике! Web-квест защита информации 16 22 8 марта 23 февраля 14 часть с 25 Подготовка 26 Web-квест для семиклассников 11 класс ЕГЭ Диагностическая работа arduino
Статистика


Rambler's Top100
Онлайн всего: 1
Гостей: 1
Пользователей: 0


Гость
Прямая связь
Новости
  САЙТ УЧИТЕЛЯ ИНФОРМАТИКИ

Учебный проект "Площадь круга"

 
Компьютерные модели, построенные с использованием метода Монте-Карло, на языке Pascal
Разработаем на языке Pascal компьютерную модель, позволяющую методом Монте-Карло определять площадь круга и число п. 
Проект "Методом Монте-Карло" на языке Pascal. 
1. Поместить на форму:
• графическое поле Image1, в котором будет отображаться процесс случайной генерации точек;
 
• два текстовых поля: Editl — для ввода радиуса окружности и Edit2 — для ввода количества генерируемых точек;
 
• надпись Labe11 для вывода значения площади круга;
 
• надпись Label2 для вывода числа п.
 
2. Установить размер графического поля: с помощью окна Object Inspector присвоить свойству Size значение 2 0 0; 2 0 0.
3. Ввести в начало программного кода в оператор uses модуль Math, который обеспечивает подключение математических функций (Cos (), Tan () и т. д.).
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Math;
4. Поместить на форму кнопку Buttonl и создать для нее событийную процедуру TForml. ButtonlClick (), которая обеспечивает:
• стирание результатов предыдущего опыта;
 
• ввод значения радиуса окружности в переменную R;
 
• ввод количества генерируемых точек и присваивание его переменной N;
 
• генерацию случайных координат точек;
 
• рисование в графическом поле квадрата со стороной 2*R и окружности радиуса R;
 
• подсчет в переменной М количества точек, попавших внутрь круга;
 
• вычисление и вывод значений площади круга и числа п на надписи.
var R: integer; //радиус N: integer; //количество "брошенных" точек X: real; //координата точек X Y: real; //координата точек Y М: integer; //количество точек, попавших //в круг I: integer; //счетчик цикла procedure TForml.ButtonlClick(Sender: TObject); begin //Стирание Imagel.Canvas.Brush.Color := clWhite; Imagel.Canvas.Rectangle(100-R,100-R,100+R,100+R); Imagel.Canvas.FillRect(Rect(100-R, 100-R, 100+R, 100+R)); M:=0; //Ввод значений R:=StrToInt(Editl.Text); N:=StrToInt(Edit2.Text); //Рисование квадрата и круга Imagel.Canvas.Rectangle(100-R,100-R,100+R,100+R); Imagel.Canvas.Ellipse(100-R, 100-R,100+R, 100+R); //Генерация точек Randomize; For I:=l To N do begin X:=Random(2*R)-R; Y:=Random(2*R)-R; Imagel.Canvas.Pixels[Round(X)+100, Round(Y)+100]:=clBlack; If Sqr(X)+Sqr(Y)<=Sqr(R) Then M:=M+1 end; //Площадь
Labell.Caption:=FloatToStr(4*Sqr(R)*M/N); //Число PI Label2.Caption:=FloatToStr(4*M/N); end; end.
5. Ввести радиус окружности и количество генерируемых точек. После щелчка по кнопке Пуск в графическом поле будет отображен процесс генерации случайных точек, а на надписи будут выведены значение площади круга и число п (см. рис. ниже).
Использованная литература :  
Н.Д. Угринович Информатика и ИКТ 11 Класс
Автор статьи Деманин Роман 11 "A"