Реферат: Разработка программы для решения геометрических задач средствами алгоритмического языка vba в среде msecxel Студент: группы рФ-09-2 - Refy.ru - Сайт рефератов, докладов, сочинений, дипломных и курсовых работ

Разработка программы для решения геометрических задач средствами алгоритмического языка vba в среде msecxel Студент: группы рФ-09-2

Остальные рефераты » Разработка программы для решения геометрических задач средствами алгоритмического языка vba в среде msecxel Студент: группы рФ-09-2

РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ГЕОЛОГОРАЗВЕДОЧНЫЙ УНИВЕРСИТЕТ
им. СЕРГО ОРДЖОНИКИДЗЕ


ГЕОФИЗИЧЕСКИЙ ФАКУЛЬТЕТ


Кафедра Информатики и ГИС


КУРСОВАЯ РАБОТА

по предмету Информатика

на тему:

Разработка программы для решения геометрических задач средствами алгоритмического языка vba в среде MSEcxel


Студент: группы рФ-09-2

Кухарёнок Дмитрий

Научный руководитель: Доцент кафедры Информатики иГИС

Оборнев Евгений Александрович


москва 2010


Оглавление

РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ГЕОЛОГОРАЗВЕДОЧНЫЙ УНИВЕРСИТЕТ
им. СЕРГО ОРДЖОНИКИДЗЕ 1

КУРСОВАЯ РАБОТА 1

по предмету Информатика 1

Цели и задачи курсовой работы 3

Цель: 3

Задачи: 3

История 4

Постановка задачи 4

Правила работы с программой 5

Исходный текст программы 7

Блок схема 9

Псевдокод 10

Заключение 11


Цели и задачи курсовой работы

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

расчёт радиуса вписаной и описаной окружности.

Площади равносторонних вписанных или описанных фигур

нахождение объёмов n-уголльных равносторонних пирамид.

За образецпрограммы взят пример программы обладающей подобными свойствами, найденной автором в интернете, на сайте: webmath/web/prog15_1.php. Формулы расчёта параметров взяты из учебника по геометрии А.В. Погорелова.

Цель:

Разработать алгоритм и программу для расчёта радиусов вписанных и описанных окружностей , и нахождение площадей тех равносторонних n-угольников в которые они вписаны или описаны, а так же нахождение объёмов n-угольных равносторонних пирамид средствами алгоритмического языка VBA в среде MSEcxel.

Задачи:

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

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

Найти объёмы равносторонних пирамид, которые вписаны или описаны вокруг окружности.

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


История

Рис.1. Внешний вид программы, которая была за образец.


Программа которая была взята за образец с сайта webmath/web/prog15_1.php. была создана в начале 2010 года. fxyz/, http://www.board74.ru/articles/geometry/triangle_1.html похожие сайты.

Постановка задачи

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


Правила работы с программой

Рис.2.Интерфейс программы.

Для ввода исходных данных используются три полосы прокрутки, передвигая которых мы водим исходные данные. После чего надо нажать кнопку расчёт, и будут выданы результаты. После того как программа выдала результаты, а нужно ещё сделать вычисления, то меняем расположение полос прокрутки на нужные нам исходные данные, после чего опять нажимаем кнопку “расчёт”, и программа в автоматическом режиме заменит предыдущие результаты вычислений на новые.

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

Рис.3а. Полоса прокрутки для ввода числа сторон

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

Рис.3б. Полоса прокрутки для ввода длин сторон

Далее если надо вводим с помощью ещё одной полосы прокрутки высоту нашего многоугольника для нахождения объёма. В ячейке A10.

Рис.3в. Полоса прокрутки для ввода высоты


Рис.4.Кнопка для пуска вычислений

рис.5. Внешний вид программы

Исходный текст программы

Sub нахождение_радиусов()

DimaAsInteger

переменная длинны стороны равностороннего многоугольника’

DimnAsInteger

переменная, числа сторон равностороннего многоугольника ’

DimrAsSingle

переменная радиуса вписанной окружности ’

DimwAsSingle

переменная радиуса вписанной окружности ’

DimsAsSingle

радиус описанной окружности ’

Dim t As Single

переменная теоремы Герона ’

DimvAsSingle

переменная объёма’

Dim v1 As Single

переменная объёма 2

Dim h As Integer

переменная высоты ’

a = Cells(4, 1)

ввод числа ‘a’ в ячейке с координатами 2.1 ’

n = Cells(3, 1)

ввод числа ‘n’ в ячейке с координатами 3.1 ’

r = a / (2 * Sin(3.14159265 / n))

'формула радиуcа описанной окружности'

w = a / (2 * Tan(3.14159265 / n))

'формула радиуса вписанной окружности'

Cells(7, 1).Value = r

отобрази ‘r’в ячейке с координатами 7.1 ’

Cells(8, 1).Value = w

отобрази ‘w’в ячейке с координатами 8.1 ’

p = (2 * r + a) / 2

'формула полупериметра '

Cells(11, 1).Value = p

отобрази ‘p’в ячейке с координатами 11.1 ’

f = (2 * w + a) / 2

'формула полупериметра '

Cells(12, 1).Value = f

отобрази ‘f’в ячейке с координатами 12.1 ’

s = n * ((p * ((p - r) ^ 2) * (p - a)) ^ 0.5)

'формула Герона'

Cells(9, 1).Value = s

отобрази ‘s’вячейкескоординатами 9.1 ’

t = n * ((f * ((f - w) ^ 2) * (f - a)) ^ 0.5)

'формула Герона'

Cells(10, 1).Value = t

отобрази ‘t’вячейкескоординатами 10.1 ’

h = Cells(5, 1)

отобрази ‘h’в ячейке с координатами 5.1 ’

v = 1 / 3 * s * h

'формула объёма пирамиды'

Cells(13, 1).Value = v

отобрази ‘v’в ячейке с координатами 13.1 ’

v1 = 1 / 3 * t * h

'фомула объёма пиромиды'

Cells(14, 1).Value = v1

отобрази ‘v1’в ячейке с координатами 14.1

EndSub


Блок схема









Псевдокод

АЛГ

Введите числа: a,n,h

r = a / (2 * Sin(3.14159265 / n))

w = a / (2 * Tan(3.14159265 / n))

p = (2 * r + a) / 2

f = (2 * w + a) / 2

s = n * ((p * ((p - r) ^ 2) * (p - a)) ^ 0.5)

t = n * ((f * ((f - w) ^ 2) * (f - a)) ^ 0.5)

v = 1 / 3 * s * h

v1 = 1 / 3 * t * h

Конец АЛГ


Заключение

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