Смекни!
smekni.com

Методические рекомендации по выполнению курсовых работ по дисциплине «Информатика» для студентов инженерных специальностей Бийск (стр. 2 из 3)

1.9. Метод решения

Для решения данной задачи будем использовать метод Монте-Карло. Для нашей простой задачи суть его состоит в следующем. Пусть дана некоторая плоская фигура (рисунок 2.2), требуется рассчитать ее площадь.

Опишем вокруг заданной фигуры другую фигуру простой формы (круг, прямоугольник и т.п.), площадь которой легко можно рассчитать. Мы будем здесь использовать прямоугольник (рисунок 2.2) с соответствующими координатами вершин (x1, y1) и (x2, y2).

В полученный прямоугольник будем случайным образом (по возможности равномерно) помещать точки с координатами (x, y), удовлетворяющими условию

,
. Часть таких точек попадет вовнутрь исследуемой фигуры, другая часть окажется за ее пределами. Обозначим через NN общее количество точек, N – количество точек, попавших в фигуру. Тогда можно записать приближенное равенство

, (1)

где S – искомая площадь, SS – площадь прямоугольника.

Из формулы (1) получим итоговое расчетное соотношение

. (2)

Таким образом, используемый метод является приближенным. Точность расчета по (2) существенно зависит от количества заданных случайных точек и качества генератора случайных чисел. Для нашей задачи рекомендуется задавать NN>10000.

Расчет площади пересечения двух фигур проводится аналогично. Допустим, исследуемые фигуры имеют вид, показанный на рисунке 2.3.

Вокруг них опять описываем прямоугольник так, чтобы обе фигуры целиком помещались в нем. В полученный прямоугольник случайным образом «бросаем» точки и подсчитываем, какое их количество попадет в область пересечения фигур (на рисунке 2.3 заштриховано). Напомним, что точка считается попавшей в область пересечения, если она одновременно принадлежит обеим фигурам. Далее расчет проводим по формуле (2).

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

3 РАБОТА НАД ВТОРОЙ ГЛАВОЙ

В данной главе описывается алгоритм решения данной задачи, приводится текст соответствующих программ и результатов расчетов.

1.10. Генератор случайных точек (раздел 2.1 курсовой работы)

В разделе 2.1 курсовой работы описываются программные средства создания случайных чисел в заданном диапазоне (генератор случайных чисел). Поскольку каждая точка на плоскости определяется двумя числами – координатами x и y, то нам нужны соответственно два таких генератора. Мы их построим на основе стандартных функций:

random – для языка Pascal, которая возвращает случайные числа в диапазоне [0,1];

rnd(1) – для системы MathCAD с аналогичным действием.

Для того чтобы координаты случайной точки подчинялись условию

в языке Pascal можно использовать следующие линейные преобразования:

В системе MathCAD используются аналогичные соотношения, только вместо функции random применяется функция rnd(1).

Примечание – В языке Pascal перед первым оператором, использующим функцию random, рекомендуется обратиться к стандартной процедуре Randomize, которая будет каждый раз менять генерируемую последовательность случайных чисел.

1.11. Алгоритм решения (раздел 2.2 курсовой работы)

В данном разделе дается понятие алгоритма и способы его создания. Для исполнителя предлагается два варианта создания алгоритма программ:

° в виде графической блок-схемы;

° словесное описание с нумерацией пунктов.

В первом случае используются стандартные графические обозначения ключевых элементов программы, во втором – их словесный аналог, например:

1) Задаем прямоугольник: x1=…; y1=…; x2=…; y2=…;

2) Рассчитываем площадь прямоугольника Spr=(x2-x1)(y2=y1);

3) …

4) …

5) …

1.12. Решение задачи на языке Pascal (раздел 2.3 курсовой работы)

В разделе 2.3 курсовой работы приводится текст программы, написанной на языке Pascal, и результаты соответствующих расчетов. Программа должна быть отлажена и обязательно снабжена необходимыми комментариями. В качестве примера ниже приведем небольшой фрагмент такой программы.

Program FigSurface;

Const

x1=-2; y1=-2; x2=2; y2=2; {координаты вершин прямоугольника}

ss = (x2-x1)*(y2-y1); {площадь прямоугольника}

NN=10000; {количество случайных точек}

. . .

{Расчет первой фигуры}

. . .

{Расчет второй фигуры}

. . .

Рекомендуется при написании программы определить несколько вспомогательных функций. Например, написать две функции логического типа F1(x, y) и F2(x, y), которые для заданных значений координат некоторой точки (x, y) возвращают значения true или false в зависимости от того, находится точка внутри фигуры или вне ее.

Поскольку программа на языке Pascal хранится на диске в виде текстового файла, то при оформлении курсовой работы текст программы легко вставляется в документ редактора Word.

1.13. Решение задачи в системе MathCAD (раздел 2.4 курсовой работы)

В данном разделе приводится текст соответствующей программы в системе MathCAD. Кроме решения основной задачи здесь рекомендуется провести графическую проверку правильности составления логических выражений, необходимых для решения данной задачи. Как показывает опыт проведения курсовых работ, именно в этих разделах допускается наибольшее количество ошибок. Покажем это на следующем примере.

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

Опишем вокруг этой фигуры прямоугольник (т.е. зададим значения (x1, y1) и (x2, y2)).

В полученный прямоугольник будем случайным образом помещать точки (x, y). Требуется определить, какие из этих точек попадут вовнутрь заданной фигуры и количество таких точек.

Решение этой задачи, выполненное в системе MathCAD, приведено в Приложении В.

В этом решении вначале специально допущена ошибка в логическом выражении, определяющем попадание точек в верхнюю часть фигуры, что сразу видно из соответствующего графика. Ниже приводится исправленный вариант.

В курсовой работе целесообразно провести такую проверку для каждой фигуры, а также можно вывести профиль области их пересечения.

Отметим, что решение данной задачи в системе MathCAD можно провести более эффективно, используя встроенный язык программирования (так называемые программные модули). Однако в рамках обычного курса «Информатики» этот раздел, как правило, не изучается. Предлагается для инициативных студентов, желающих повысить свой творческий потенциал и (само)оценку, самостоятельно освоить эти возможности (что совсем не трудно при умении программировать на языке Pascal) – такие инициативы, безусловно, поощряются!


4 ОФОРМЛЕНИЕ РАБОТЫ

Законченная работа должна быть отпечатана, скреплена (сброшюрована) и подписана исполнителем на титульном листе. После этого она сдается преподавателю на проверку. Основные требования к оформлению работы:

1. Формат страницы: А4, портрет.

2. Поля: верхнее, нижнее, левое –2,5 см, правое – 2 см.

3. Основной текст: Times New Roman, кегль 10 или 12 пт., отступ первой строки – 1 см,

выравнивание по ширине.

4. Междустрочный интервал: одинарный, полуторный или двойной.

5. Рисунки: выполняются в черно-белом цвете в формате *.jpg или *.gif и вставляются

непосредственно в текст. Подписи под рисунками – Times New Roman, кегль 9 пт., выравнивание по центру. Нумерация рисунков сквозная, следует после слова "Рис.". Далее после знака "–" с прописной буквы следует подпись.

6. Математические символы и обозначения в тексте: Times New Roman, кегль 11 пт., курсив.

Формулы набираются в редакторе MathType. Нумерация формул сплошная, выравнивание нумерации по правому краю.

Таблицы могут вставляться на ширину рабочего поля страницы. Заголовок таблицы: "Табл. 1" – Times New Roman, кегль 11 пт., выравнивание по левому краю. Текст внутри таблицы – Times New Roman, кегль 10 пт.

7. Список использованных источников: Times New Roman, кегль 10 пт. Список источников

выполняется в виде нумерованного списка, выравнивание номера по левому краю, выступ – 0,7 см, без табуляции.

ПРИЛОЖЕНИЕ А

ОБРАЗЕЦ ТИТУЛЬНОГО ЛИСТА


ПРИЛОЖЕНИЕ Б

ОБРАЗЕЦ ЗАДАНИЯ

Федеральное агентство Российской Федерации

Государственное образовательное учреждение

высшего профессионального образования

«Алтайский государственный технический университет

им. И.И. Ползунова»

Бийский технологический институт (филиал)

Кафедра информатики и вычислительной математики

УТВЕРЖДАЮ

Зав. кафедрой ИВМ

__________ Г.И. Севодина

«25» февраля 2008 г.