![]() |
Программа на турбо Паскале:Вычислить площадь (метод Монте-Карло)
Доброго времени суток! У меня сейчас мало времени и много задач. Вообще, я обожаю программирование, но сейчас просто не успеваю, ибо нужно написать 6 программ. Прошу Вашей помощи, форумчане! Напишите, плиз, программку на Turbo Pascal. Задача такая: Вычислить площадь по методу Монте-Карло. Алгоритм такой:
1. Вписываем сложную фигуру в другую фигуру, для которой легко вычислить площадь (прямоугольник, круг и.т.д). 2. Равномерно N точек со случайными координатами внутри прямоугольника. 3. Подсчитываем количество точек, попавших на фигуру: M. 4. Вычисляем площадь по формуле ![]() |
SunLine, а как определить, попала точка на фигуру или нет?
|
Можно взять круг, у меня такой набросок получился:
Случайные координаты x := R*random; y := R*random; Когда точка внутри круга x*x + y*y <= R*R then M := M+1 Как-то так... |
Напишите пожалуйста! Очень надо! Мне пересылать сегодня все эти 6 задач, а мне еще 2 с ЭТОЙ осталось набрать! Очень Вас прошу!
|
SunLine, ну у тебя же все написано! Если принадлежность точки к окружности с условной приемлемой степенью относится к фигуре, то M=M+1
Выяснить процент попаданий при от общего числа испытаний - не проблема. Задать достаточно большое число испытаний - то же. Найти из этого всего площадь, задача в одно действие. В чем просьба? |
Время: 15:00. |
Время: 15:00.
© OSzone.net 2001-