Автор работы: Пользователь скрыл имя, 17 Октября 2013 в 12:48, курсовая работа
Целью написания курсовой работы является обобщение практических знаний, полученных по курсу «Технология разработки программных продуктов». Она содержит программные алгоритмы, которые служат для решения практических задач в области высшей математики.
На практике часто возникает необходимость написания приложения для решения определенных задач. Поэтому специалисты в области разработки программных продуктов пользуются повышенным способом. В данной курсовой работе показан процесс решения поставленной задачи с точки зрения программиста.
Целью написания курсовой работы является обобщение практических знаний, полученных по курсу «Технология разработки программных продуктов». Она содержит программные алгоритмы, которые служат для решения практических задач в области высшей математики.
На практике часто возникает необходимость написания приложения для решения определенных задач. Поэтому специалисты в области разработки программных продуктов пользуются повышенным способом. В данной курсовой работе показан процесс решения поставленной задачи с точки зрения программиста.
В качестве среды разработки и реализации приложения использован язык Delphi и среда разработки TurboDelphi.
1 ОБЩАЯ ЧАСТЬ
1.1 Постановка задачи
В среде Turbo Delphi разработать программу в соответствии с вариантом, обеспечивающую выполнение следующих пунктов:
Формула суммы числового ряда:
W= |
(1) |
Контрольная формула:
|
(2) |
- Сформировать массив С по формуле:
C=BTA (3)
Программа должна:
- использовать многостраничную панель;
- предусмотреть
возможность ввода всех
-предусмотреть
возможность просмотра
- иметь всплывающие подсказки;
- предусмотреть защиту от несанкционированного ввода исходных данных;
- предусмотреть
вывод поясняющих сообщений в
случае некорректного ввода
1.2 Математическая постановка задачи
Сформировать массив А, используя формулу суммы числового ряда следующим образом:
Первый элемент
массива А равен сумме
Сформировать двумерный массив В с помощью генератора случайных чисел. Размерность массива N x N, где N=размерность массива А. Диапазон для заполнения равен [-15;45]. Сформированный массив В необходимо добавить в отформатированном виде в созданный ранее результирующий файл.
B[i,j]:=lowindex+random(
Где lowindex = -25, upindex = 50
Используя сформированный массив В, необходимо сформировать массив С, используя правила матричной алгебры. Массив С формируется как: произведение матрицы А на квадратную матрицу В. Сформированный массив С необходимо добавить в отформатированном виде в результирующий файл.
Транспонированная матрица — матрица, полученная из исходной матрицы заменой строк на столбцы.
AT[i, j] = A[j, i].
Под произведением матрицы на матрицу понимают матрицу элементы которой рассчитываются по формуле:
Где w= ; I=1,2,…,n; p=1,2,…,n;
Сортировка массива С осуществл
Метод сортировки простого обмена массива размерности n заключается в следующем:
Слева направо поочередно сравниваются два соседних элемента, и если их взаимное расположение не соответствует заданному условию упорядоченности, то они меняются местами. Далее берутся два следующих соседних элемента и так далее до конца массива. После одного такого прохода на последней n-ой позиции массива будет стоять максимальный элемент ("всплыл" первый "пузырек"). Поскольку максимальный элемент уже стоит на своей последней позиции, то второй проход обменов выполняется до (n-1)-го элемента. И так далее. Всего требуется (n-1) проход.
2.РАЗРАБОТКА АЛГОРИТМА
2.1 Идентификаторы переменных, процедуры и функции
Описание всех переменных, процедур и функций с расшифровкой, используемых в курсовом проекте.
startX – начальное значение X
finalX – конечное значение X
Step – шаг увеличения X
ArrAOut – Компонент Memo для вывода массива А
checkGrid – компонент StringGrid для отображения контрольной формулы
fidelity – заданная точность
ArrayB – отображения массива B
bRangeSt – начальный диапазон массива B
bRangeFin – конечный диапазон маcсива B
SortArrayC – компонент StringGrid для отображения сортированного массива С
Graphic – Компонент Image для вывода графика
ArrayC - компонент StringGrid для отображения массива С
TranArrayB – Вывод транспонированного массива B
A – массив А
С – массив С
СSort – сортированный массив С
B- массив B
N – Количество шагов
Sheet – Лист OLE объекта Excel
N – количество элементов массива
Eps – эпсилон т.е. заданная точность. Равна 0.001
Sl – слагаемое используемое в массива А
Xn – начальное значение X
Xk – конечное значение X
H – шаг
I, J – счётчики циклов
Col – счётчик колонки Excel
Row – счётчик строки Excel
Flo – переменная для хранения конвертированного значения
Ymin – минимальное значение сортированного массива С
2.2 Структурная схема программы
Данный программный продукт состоит из одного программного модуля, в который входят процедуры:
procedure TForm1.calcClick (Sender: TObject); – формирование массива А, формирование проверочного массива. Вывод их в поле Memo1 и StringGrid
procedure TForm1.FormationBClick (Sender: TObject); – формирование массива В и его транспонирование. Вывод в StringGrid
procedure TForm1.FormationCClick (Sender: TObject); – формирование массива С и вывод в поле StringGrid
procedure TForm1.SortCClick – Формирование сортированного массива С и его вывод в StringGrid
procedure TForm1.A1Click – вывод массивов А,В,С в файл MicrosoftWord
procedure TForm1.buildGraphClick – построение графика массива С и сортированного массива С
Procedure Sort – сортировка массива С
procedure Timer1Timer(Sender: TObject);
procedure startXKeyPress защита от несанкционированного ввода начального X
procedure finalXKeyPress защита от несанкционированного ввода конечного X
procedure StepKeyPress защита от несанкционированного ввода шага X
procedure fidelityKeyPress защита ввода точности
procedure bRangeStKeyPress защита от несанкционированного ввода начального диапазона массива B
procedure bRangeFinKeyPress защита от несанкционированного ввода конечного диапазона массива B
function GetExcelFileName – функция определения имени OLE объекта
Tform1.spravka - Использование справки
в приложении
На рисунке 1 изображена структурная схема
программы
Блок-схемы расчетных процедур
На рисунке 2 изображена блок-схема формирования массива А
На рисунке 3 изображена блок-схема формирования массива В
Рисунок 3 – формирование массива В
На рисунке 4 изображена блок-схема транспортирования массива В
Рисунок 4 – формирование транспонированного массива В
На рисунке 5 изображена блок-схема формирования массива С
РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
Рассматривается программа на конкретном примере.
Пусть дана точность ε=0,001 для х, изменяющегося в диапазоне [-0,9;0,9] с шагом h=0,1.
Массив А заполняется по формуле суммы ряда:
A[1]=0,0967900
A[2]=0,0596000
A[3]=0,0308200
A[4]=0,0111900
A[5]=0,0012490
A[6]=0,0012490
A[7]=0,0111900
A[8]=0,0308200
A[9]=0,0596000
A[10]=0,0967900
Массив В представляет собой матрицу размерностью 10х10, заполненную случайным образом из диапазона [-25;50].
43 |
31 |
-4 |
-14 |
-3 |
7 |
16 |
14 |
22 |
6 |
31 |
30 |
45 |
15 |
35 |
33 |
-7 |
22 |
20 |
17 |
43 |
-6 |
27 |
12 |
16 |
32 |
19 |
-13 |
-3 |
-4 |
18 |
18 |
-3 |
33 |
41 |
8 |
36 |
30 |
-6 |
10 |
29 |
14 |
21 |
40 |
16 |
42 |
19 |
30 |
29 |
-11 |
8 |
1 |
-1 |
-14 |
45 |
39 |
-13 |
16 |
-15 |
7 |
16 |
-10 |
15 |
-6 |
6 |
-6 |
38 |
16 |
35 |
5 |
12 |
-6 |
-13 |
-9 |
31 |
18 |
9 |
-12 |
31 |
2 |
6 |
-7 |
-2 |
-12 |
1 |
38 |
-9 |
-4 |
39 |
-10 |
36 |
26 |
27 |
39 |
26 |
5 |
8 |
42 |
6 |
8 |
Информация о работе Технология разработки программных продуктов Turbo Delphi