Создание интерфейса пользователя
Основные понятия и создание интерфейса пользователя. Работа с переменными, массивами, константами и со свойствами объектов. Элементы управления, модуль и совокупность описаний, процедур и функций. Модуль коэффициентов корреляции и методы решения систем.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 11.07.2011 |
Размер файла | 1,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Кнопкой в виде листочка с указательным пальцем вывести окно Свойства.
Разместить на листе Excel элементы управления: заголовки с именами (свойство Name) Label1, Label2, Label3 и с надписями (свойство Caption) Регистр 1, Регистр 2, Регистр 3; поля с именами (свойство Name) R1, R2, R3 и со значением свойства Value, равным нулю; кнопки с надписями (свойство Caption - см. рисунок).
Написать процедуру для каждой кнопки.
Разработка событийных процедур.
Рассмотрим несколько процедур: Сложение - выполняется при нажатии командной кнопки с надписью + (свойство Caption), Умножение (*), Извлечение квадратного корня - командная кнопка с именем (Name) x12 и c надписью (Caption) x^(1/2).
Private Sub Сложение_Click()
R2.Value = Val(R1.Text) + Val(R2.Text) ' Функция Val преобразует символы в числа
End Sub
Private Sub Умножение_Click()
R2.Value = R1.Value * R2.Value
End Sub
Private Sub x12_Click()
If R2.Value > 0 Then ' если знаменатель больше нуля, то возможна операция деления
Функция Format преобразует число в символы с тремя знаками после запятой
Функция Sqr извлекает квадратный корень из числа
R2.Text = Format(Sqr(R2.Value), "0.000")
Else
сообщение с помощью функции MsgBox, если подкоренное выражение отрицательно
MsgBox ("R2 <= 0")
End If
End Sub
Для перехода к тексту процедуры в окне редактора VBA - двойной щелчок мышью по командной кнопке в режиме конструктора.
VBA2. Разветвления
Вычислить значения функций в области определения х [-1.7,1.5].
Y = (1+x)/(1+)
f = cos2(3x) - cos(x)sin(x)
= 3.14159265 ( можно также вычислить как функцию ПИ( ) )
, x<=0
g =
(1+x)/(1+), x >0
(1+x+x2)/(1+x2), x<0
z = , x>=0 и x<1
2Abs(0.5+Sin(x)), x>=1
Для вычислений на листе Excel (см. приведенный ниже рисунок) разместить поля (TextBox) с именами TBx, TBy, TBf, TBg, TBz. Рядом с полями поместить надписи x, y, f, g, z. Кроме того, на лист Excel поместить кнопку CommandButton1 и написать процедуру для вычисления указанных функций. Если заданное значение x не попадает в область определения функции, то в соответствующее поле занести пробел.
VBA3. Переменные, процедуры, функции, циклы, массивы
Предположим, что на листе Excel в диапазоне ячеек (R1C1 : RmCn) находится таблица данных, а ячейки столбца n+1 и строки m+1, примыкающие к таблице, - пусты.
1 2 3 - номера столбцов: j=1,…..,n
Требуется разместить на листе Excel командную кнопку с заголовком Вычислить, а в модуль, соответствующий листу Excel, включить подпрограммы-функции Mrow и Ncol для определения m и n, процедуру TabA для копирования таблицы с листа Excel в двумерный массив A, а также событийную процедуру, которая должна включать в себя:
резервирование переменных i, j, m, n типа Integer,
резервирование переменной S типа Single,
резервирование массива A без указания его размерности, т.е. Dim A( ) As Single,
определение m и n путем использования функций Mrow и Ncol,
переопределение размерности массива A, т.е. ReDim A (1 To m, 1 To n),
копирование таблицы в массив A с помощью процедуры TabA,
вычисление и размещение в строке, имеющей номер m+2, сумм по столбцам.
Рекомендации.
Для определения m и n в функциях Mrow и Ncol применить циклы типа Do-Loop:
Function Mrow() As Integer
Dim i As Integer
i = 1
Do Until IsEmpty (Cells(i, 1))
i = i + 1
Loop
Mrow = i - 1
End Function
Процедура TabA должна иметь следующий заголовок:
Sub TabA(m As Integer, n As Integer, A( ) as Single)
Для копирования таблицы в массив A использовать двойной цикл типа For-Next:
For i=1 To m
For j=1 To n
A(i,j)=Cells(i,j).Value
Next j
Next i
Для вычисления сумм столбцов в событийной процедуре также использовать двойной цикл, полагая, что исходные данные находятся в массиве A. Здесь внешний цикл - по j. Он включает в себя начальное присваивание S=0, цикл по i, в котором наращивается значение S, и, наконец, присваивание j-го результата: Cells(i,j).Value = S
VBA4. Сортировка чисел в столбце по возрастанию или убыванию
На листе Excel для создания интерфейса пользователя разместите элементы управления: надпись Номер столбца; поле TextBox1 и счетчик SpinButton1 для указания номера столбца; переключатели Option1, Option2 с надписями По возрастанию, По убыванию и кнопку с надписью Сортировать - см. рисунок.
2. Для поля TextBox1 и для счетчика SpinButton1 установите свойство Value=1. Кроме того, для счетчика установите значения свойств Min=1 и Max=20. Для счетчика создайте событийную процедуру SpinButton1_Change() - при изменении пользователем значения счетчика она должна изменять значение TextBox1.Value, делая его равным значению счетчика. Точно так же для поля TextBox1 создайте событийную процедуру TextBox1_Change() - она должна изменять значение (свойство Value) счетчика, как только пользователь изменит значение, хранимое в текстовом поле.
Создайте событийную процедуру, соответствующую командной кнопке. Эта процедура должна определить номер j столбца, подлежащего сортировке, количество чисел m в этом столбце и выполнить сортировку методом пузырька. В процедуре зарезервируйте целые переменные i, j, m, переменную F типа Variant и переменные Flag и R типа Boolean. Процедура сортировки методом пузырька может включать следующие блоки:
Flag=False (признак того, что еще не было перестановок чисел в столбце j); i=2;
R = Cells(i-1,j).Value - Cells(i,j).Value (R=True, если значение в ячейке i-1 больше, чем в i);
если надо сортировать по возрастанию, то R = Cells(i,j).Value - Cells(i-1,j).Value;
если R=True, то исполняется блок 5;
F = Cells(i-1,j).Value; Cells(i-1,j).Value = Cells(i,j).Value; Cells(i,j).Value = F ; Flag=True; (перестановка чисел, регистрация этого факта путем присваивания Flag=True)
i=i+1; если i <= m , то передача управления блоку 2 - для сравнения следующей пары чисел;
Если Flag =True, то передача управления блоку 1, иначе конец, т.к. перестановок не было.
VBA5. Сортировка чисел в столбце по возрастанию или убыванию с созданием формы
Поместить на лист Excel кнопку CommandButton1 с тем же заголовком Сортировать, а остальные элементы управления и дополнительно кнопку Ok поместим на диалоговую форму с именем Dialog1 и заголовком Параметры сортировки. Для создания этой формы надо переключиться в окно Visual Basic и с помощью кнопки на панели инструментов или через пункт меню Вставка/UserForm создать пустую форму. Она появится в окне Visual Basic. При щелчке мышью по форме появляется также окно Панель элементов, содержащее палитру элементов управления. Теперь остается с помощью кнопки на панели инструментов раскрыть в окне Visual Basic еще окно свойств, установить свойства формы и разместить на ней требуемые нам элементы управления точно так же, как это было сделано на листе Excel (см. рисунок). Такой подход почти освободит лист Excel от элементов управления, но потребует дополнительных усилий при разработке приложения.
Во-первых, теперь в начало событийной процедуры CommandButton1_Click надо вставить команду для показа формы: Dialog1.Show. В этой инструкции записывается имя объекта (имя, присвоенное нами форме) и, через точку, имя метода - показать. Следовательно, как только пользователь нажмет командную кнопку на листе Excel, поверх этого листа появится диалоговое окно. В нем пользователь выберет параметры сортировки и нажмет кнопку Ok (см. второй рисунок, поясняющий эту работу).
Во-вторых, надо написать событийную процедуру для кнопки Ok. Эта процедура должна содержать команду Dialog1.Hide - скрыть форму Dialog1.
В-третьих, в процедурах, принадлежащих листу Excel, а не форме Dialog1, изменится обращение к свойствам элементов управления. Так, теперь надо писать не TextBox1.Value, а Dialog1.TextBox1.Value - так указывается свойство Value (значение) объекта TextBox1 (редактируемое поле), принадлежащего форме Dialog1.
VBA6. Создание приложения для вычисления многочленов
Вычислить многочлен пятой степени
используя для вычислений экономичный алгоритм Герона:
На свободном рабочем листе создать командную кнопку с надписью Вычисление многочлена. В программный код кнопки вписать инструкцию UserForm1.Show.
Для добавления к проекту новой формы в окне редактора Visual Basic выполнить команду Вставка/UserForm.
Добавить необходимые элементы управления, используя панель элементов (см.рис.).
Оставаясь в редакторе Visual Basic, двойным щелчком левой кнопки мыши по форме вызвать ее программный код и перейти к разработке модуля.
Сначала опишите массив А, отведенный под коэффициенты многочлена, переменные x и S, не забывая о комментариях.
Dim A(5) ` массив для коэффициентов многочлена
Dim x ` переменная для значения аргумента
Dim S ` переменная для вычисленного значения многочлена.
Затем надо написать процедуры, назначенные полям ввода коэффициентов и аргумента. Следующий пример приведен для А(0):
Private Sub TextBox1_Change() ' ввод коэффициента a0
A(0) = TextBox1.Value
Next_Button.Enabled = True ` эта инструкция активизирует кнопку «Вычислить»
End Sub
Необходимо также написать событийную процедуру для кнопки Выход:
Private Sub Cancel_button_Click() ' кнопка "Выход"
Unload Me `по русски: «выгрузи меня»
End Sub
Кнопке Вычислить, имеющей имя Next_Button_Click( ), назначим следующую процедуру:
Private Sub Next_Button_Click() ' вычисление по схеме Горнера
S = A(0)
For I = 0 To 4 ' цикл For ... Next
S = S * x + A(I + 1)
Next I
TextBox8.Value = Str(S) ` функция Str присваивает переменной S строковый тип
End Sub
Предложенная форма может быть использована и при вычислении многочленов степени меньше пятой, если в соответствующие поля вводить нулевые значения коэффициентов. Возвратившись в Excel и щелкнув по командной кнопке Вычисление многочлена, протестируем созданную форму, вычисляя следующие многочлены:
1)
2)
3)
Тестирование можно проводить и оставаясь в редакторе VBA (см. раздел 7 «Отладка приложений»).
VBA7. Сортировка чисел в столбце по возрастанию или убыванию с созданием формы и панели инструментов с кнопкой
В предыдущих работах, посвященных созданию формы, запуск программы выполнялся с помощью кнопки размещенной на листе Excel. Целью этой работы является создание панели инструментов с кнопкой для выполнения программы.
1. Создайте панель инструментов и разместите на ней кнопку. Панель инструментов должна появляться при открытии рабочей книги. В окне редактора Visual Basic выберите лист ThisWorkBook и включите в него следующие две процедуры:
1) Процедура создания новой панели инструментов при открытии рабочей книги
Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window)
'Создание новой панели инструментов
With Application.CommandBars.Add(Name:="Моя панель инструментов", _
Position:=msoBarTop, MenuBar:=False, Temporary:=True)
.Visible = True
With .Controls
'Создание кнопки с надписью
With .Add(Type:=msoControlButton, Id:=1) 'добавить кнопку на панель инструментов
.Caption = "Сортировка" 'надпись на кнопке
.TooltipText = "Сортировка" 'всплывающая подсказка
.Style = msoButtonCaption
.OnAction = "Sort" 'при нажатии на кнопку выполняется процедура
End With
End With
End With
End Sub
2) Процедура, удаления созданной панели инструментов при закрытии приложения
Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)
With Application
.CommandBars("Моя панель инструментов").Delete
End With
End Sub
В результате будет создана панель инструментов с кнопкой Сортировка (см. Рис).
2. Добавьте модуль через пункт меню Вставка/Модуль и введите процедуру Sort для отображения формы на экране.
Sub Sort()
UserForm1.Show
End Sub
3. В окне редактора создайте форму, разместите на ней требуемые элементы управления и установите свойства (см. Рис. на следующей стр.).
4. Напишите процедуры, связанные с формой, а также процедуру UserForm_Initialize (задание значений по умолчанию).
Private Sub UserForm_Initialize() ' Процедура инициализации формы
OB1.Value = True
OptionButton1.Value = True
SB1.Min = 1
SB1.Max = 100
TB1.Value = SB1.Value
SB2.Min = 1
SB2.Max = 100
TB2.Value = SB2.Value
End Sub
Напишите процедуры сортировки. Сортировка выбором заключается в том, что требуется найти элемент массива, имеющий наименьшее значение и переставить его с первым элементом, затем проделать то же самое, начав со второго элемента.
9. Самостоятельные и контрольные задания
Задание 1
Даны два действительных числа. Вывести первое число, если оно больше второго, и оба числа, если это не так.
Пусть x1=y1=1; xi=0.3xi-1; yi=xi-1+yi-1, i=2,3,… Дано натуральное n. Найти
Даны целые числа а1, а2, а3. Получить целочисленную матрицу [bij] i, j=1,2,3, для которой bij=ai-3aj.
Задание 2
Даны 3 действительных числа a, b, c (a0). Полностью исследовать квадратное уравнение ax2+bx+c=0, т.е. если действительных корней нет, то должно быть выведено сообщение об этом, иначе должны быть найдены и помещены в текстовые поля 2 корня.
Пусть a0=1; ak=kak-1+1/k; k=2,3,… Дано натуральное n. Получить an.
Дана действительная матрица размера m x n. Определить числа b1,b2,…,bm, равные соответственно:
а) суммам элементов строк;
б) произведением элементов строк;
в) наименьшим значениям элементов строк;
г) значениям средних арифметических элементов строк;
д) разностям наибольших и наименьших значений элементов строк.
Задание 3
Даны действительных числа x, y. Вычислить z:
x-y, если x>y
z =
y-x+1 в противном случае.
2. Пусть v1=v2=0; v3=1.5;
i = 4,5,…. Дано натуральное n (n4). Получить vn.
Дана действительная квадратная матрица порядка 10. В строках с отрицательным элементом на главной диагонали найти:
а) сумму всех элементов;
б) наибольший из всех элементов.
Задание 4
Последовательность чисел Фибоначчи u0, u1, … образуется по закону u0=0; u1=1; ui=ui-1+ui-2 (i=2,3,….)
а) Дано натуральное число n>1. Получить u0, u1, …, un.
б) Последовательность f0, f1, … образуется по закону f0=0; f1=1;
fi=fi-1+fi-2+ui-2 (i=2, 3, …).
Дано натуральное число n>1. Получить f0, f1, …, fn.
Дано действительное число x. Вычислить с точностью =10-6:
Указать количество учтенных слагаемых.
Считать, что требуемая точность достигнута, если вычислена сумма нескольких первых слагаемых, и очередное слагаемое оказалось по модулю меньше, чем . Это и все последующие слагаемые можно уже не учитывать.
Задание 5
«Тестирование коллектива». Пусть целочисленная матрица размера nxm содержит информацию об учениках некоторого класса из n человек: j-я строка содержит информацию о i-м ученике. В первом столбце проставлен возраст в годах, во втором - рост в см, в третьем - успеваемость (округленный средний балл) и т. д. Ученик называется среднестатистическим по k-му параметру (уникальным по k-му параметру), если на нем достигается минимум (максимум) модуля разности среднего арифметического чисел из k-го столбца и значения k-го параметра этого ученика. По матрице указанного вида определить номера учеников:
а) самых уникальных,
б) самых средних.
Элемент матрицы называется седловой точкой, если он является одновременно наименьшим в своей строке и наибольшим в своем столбце. Дана действительная матрица размера 5x 6. Выяснить, имеются ли седловые точки в этой матрице, и если они имеются, то указать индексы одной из них.
Задание 6
Найти количество различных чисел в произвольном одномерном массиве чисел, который предварительно разместить на рабочем листе книги Excel.
Создать диалоговое окно (UserForm), содержащее командную кнопку, а в событийной процедуре, соответствующей нажатию кнопки, определить это количество. Полученное значение вывести в поле с надписью Количество различных чисел.
Задание 7
Найти количество совпадающих чисел в произвольном одномерном массиве чисел, который предварительно разместить на рабочем листе книги Excel.
Создать диалоговое окно (UserForm), содержащее командную кнопку, а в событийной процедуре, соответствующей нажатию кнопки, определить это количество. Полученное значение вывести в поле с надписью Количество совпадающих чисел.
Задание 8
Найти наибольшее число в произвольном одномерном массиве чисел, который предварительно разместить на рабочем листе книги Excel.
Создать диалоговое окно (UserForm), содержащее командную кнопку, а в событийной процедуре, соответствующей нажатию кнопки, определить наибольшее число массива. Полученное значение вывести в поле с надписью Наибольшее число.
Курсовые работы
Общие требования и рекомендации
Курсовая работа должна включать в себя текст на Word и программу на VBA в книге Excel.
Текст работы - это теоретическая часть, которая должна содержать титульный лист, описание постановки задачи, алгоритма ее решения, например, алгоритма и последовательности вычисления координат теодолитного хода с указанием формул, а также описание программы - ее основных блоков и результатов отладки на примере.
Программа - это практическая часть курсовой работы. Для ее разработки надо создать интерфейс пользователя, написать событийные и общие процедуры и отладить приложение на примерах.
Разработка приложения “Решение системы линейных уравнений”
Взять за основу модуль, созданный в лабораторной работе 3. Модуль должен содержать следующие общие процедуры:
MNTab - определение M, N - размерности матрицы,
TabCXCY - копирование идентификаторов столбцов и строк в массивы CX, CY,
TabA - копирование матрицы с листа Excel в массив A,
XAI (I) - вычисление скалярного произведения вектора x на вектор aI (функция) с записью результата в I-ю ячейку первого столбца на листе Excel,
Jordan - шаг жорданова исключения (процедура поясняется ниже) - преобразование всей матрицы A с записью новых значений ее элементов в таблицу на листе Excel, обращение к процедуре TabA, перемена местами элементов CX и CY с записью значений и в ячейки Excel, копирование матрицы с листа Excel в массив A.
Разместить на листе Excel командную кнопку BTN1 с надписью (свойство Caption) Решение системы уравнений.
В событийную процедуру BTN1_Click включить:
определение M, N, вывод сообщения и завершение работы, если M не равно N;
переопределение размерности массивов CX, CY, A и копирование в них содержимого соответствующих ячеек листа Excel;
выполнение шага жорданова исключения N раз (r - номер диагонального элемента матрицы, называемого разрешающим; с ним выполняется шаг жорданова исключения); перед обращением к процедуре Jordan надо проверять, не равен ли нулю элемент матрицы A(r,r) - этот фрагмент программы можно записать так
For r = 1 To N
If Abs(A(r, r)) < 0.00000001 Then
MsgBox "Матрица содержит линейно зависимые строки (столбцы)": Exit Sub
End If
Jordan r
Next r
(проверка на нуль в программах выполняется с учетом точности вычислений);
вычисление каждого значения Xi (i=1,…,N) путем умножения вектора y на вектор Ai с использованием функции XAI; заметим, что после того, как были выполнены N шагов жордановых исключений, на месте матрицы A находится обратная матрица A-1, а массивы CX и CY поменялись своим содержимым - в массиве CX теперь хранятся известные значения Yj (j=1,…,N), а в массиве CY (и в первом столбце на листе Excel) - идентификаторы X1,…,XN. Эти идентификаторы и надо заменить вычисленными значениями Xi (i=1,…,N).
Поясним алгоритм шага жорданова исключения. В разделе 4 упоминалось, что матрицу A (см. рис. 2) можно рассматривать как таблицу коэффициентов, позволяющих связать любой Yi уравнением со значениями X1 ,…, XN : Yi = x • Ai. Глядя на эту таблицу, над столбиками представим себе значения Xj (вектор-строку x), а левее строк - значения Yi (вектор-столбец y). Один шаг жорданова исключения с разрешающим элементом Arr приводит к тому, что Xr и Yr меняются местами, а вся матрица A изменяется так:
разрешающий элемент A(r,r)=1/A(r,r) ,
элементы разрешающего столбца A(i,r)=A(i,r)/A(r,r) , i=1 ,…, N ,
элементы разрешающей строки A(r,j)= - A(r,j)/A(r,r), j=1 ,…, N ,
прочие элементы A(i,j) = ( A(i,j) • A(r,r) - A(i,r) • A(r,j) ) / A(r,r) .
После того, как будут выполнены N шагов жордановых исключений, вектор y окажется наверху (над матрицей), а вектор x - слева от матрицы. Сама матрица к этому моменту будет обращена - теперь она содержит коэффициенты, позволяющие вычислять значения Xi , если известны значения Yj : X(i)= y • Ai.
Приложение надо отладить на примерах. Подготовить примеры совсем не трудно. Представим себе, что N=3, а значения элементов вектора x известны, например: x={1,2,3}.
Теперь, задавшись матрицей A, например, A={11,13,13; 21,22,24; 30,32,33}, получим y={76, 137, 193}. Неизвестными будем считать значения X1=1, X2=2, X3=3. Их и найдем.
Литература к курсовой работе 1. Зуховицкий С.И., Авдеева Л.И. Линейное и выпуклое программирование. М: Наука, 1967. -460 с.
2. Разработка приложения “Статистический анализ данных”
Постановку задачи для этого приложения ограничим упрощенным статистическим анализом: вычислением средних значений признаков, стандартов (средне-квадратических отклонений от генерального среднего), матрицы коэффициентов корреляции и матрицы стандартов коэффициентов корреляции. Поясним эту задачу, обратившись к матрице на рис. 10.5. Теперь матрицу будем рассматривать не как таблицу коэффициентов, связывающих зависимые переменные y={Y1,…,YN} c независимыми переменными x={X1,…,XN} (см. предыдущую работу), а как таблицу объекты-свойства. Соответственно, в первом столбце листа Excel разместим идентификаторы объектов (например, их номера: 1 ,…, M), а в первой строке - идентификаторы свойств (например, X1 ,…, XN). Одна строка матрицы содержит значения свойств одного объекта, а один столбец - значения одного свойства для всех объектов.
Таблицы объекты-свойства часто применяются в различных предметных областях. Например, в геологии при поисках и разведке полезных ископаемых отбирают из массива горных пород M проб, а в каждой пробе химическими или физическими методами определяют содержания N компонентов (обычно M>N). По этим анализам судят о массиве горной породы. Аналогично тестируют продукцию металлургического комбината - выборочно отбирают образцы и подвергают их анализам на содержание железа, серы и других элементов. Статистически обработав результаты анализов образцов, судят о качестве целой партии продукции. Здесь важно понять, что в подобных ситуациях практически невозможно проанализировать весь массив горных пород или всю партию продукции - как говорят статистики, всю генеральную совокупность. Поэтому в таблицу объекты-свойства включают результаты анализов (измерений) для выборки из генеральной совокупности. По этой выборке находят средние значения Xjo каждого признака, характеризующие центр рассеяния значений признака и коэффициенты ковариации Sjk, характеризующие меру и форму рассеяния:
Коэффициент ковариации Sjk вычисляется так: берутся два столбца матрицы с номерами j и k , затем суммируются произведения отклонений i-ых элементов этих столбцов от своих средних, и накопленная сумма делится на M, полученное среднее значение произведения отклонений умножается на поправочный коэффициент M / (M-1). Этот коэффициент компенсирует занижение коэффициентов ковариации, которое произошло, т.к. вместо неизвестных генеральных средних в формуле использованы выборочные средние значения признаков.
Рассчитанную матрицу коэффициентов ковариации можно разместить на листе 2 книги Excel - так же, как на листе 1 размещена исходная матрица (см. рис. 10.5), только размерность ковариационной матрицы не M • N , а N • N , и идентификаторами строк и столбцов являются идентификаторы признаков (свойств) объектов. Средние значения надо разместить на листе 1 под соответствующими столбцами исходной матрицы, но пропустив одну строку. На листе 1 надо также разместить командную кнопку BTNSTAT с надписью (свойство Caption) Расчет статистик. В начало событийной процедуры BTNSTAT_Click надо включить определение M, N, копирование в массив CX идентификаторов признаков, а в двумерный массив A - матрицы (см. предыдущую работу и модуль, приведенный в подразделе 10.4 после рис. 10.5). После копирования данных в массивы, запрограммируйте вычисление средних значений признаков и матрицы ковариаций.
Диагональные элементы ковариационной матрицы называются дисперсиями. Корни квадратные из дисперсий Sjj называются стандартами sj, или средне-квадратическими отклонениями значений признаков от генеральных средних (от математических ожиданий значений признаков). Стандарты надо вычислить и разместить на листе Excel под средними значениями.
Часто между признаками наблюдаются связи: при переходе от объекта к объекту мы видим, что увеличение признака j , как правило, сопровождается увеличением признака k - это положительная корреляция. Если же при увеличении значения Xj значение Xk, как правило, уменьшается, то это корреляция отрицательная. Близость связи между двумя признаками j и k к линейной оценивается коэффициентом парной корреляции:
rjk = Sjk / (sj • sk) , j=1,…, N, k=1,…, N.
Матрицу коэффициентов корреляции можно разместить на месте ковариационной матрицы, нормируя ее элементы на стандарты. Значения коэффициентов парной корреляции должны принадлежать интервалу [-1, 1 ].
Достоверность, или, как говорят статистики, значимость коэффициентов корреляции зависит от объема выборки. Если в выборку включить малое число проб, а рассеяние значений Xj и Xk велико, то коэффициент корреляции случайно может получиться большим или малым. Чтобы оценить значимость коэффициентов парной корреляции, вычисляют их стандарты:
s(rjk) = ( 1- r2jk ) / , j=1,…, N, k=1,…, N.
Матрицу стандартов коэффициентов парной корреляции можно разместить на листе 3 книги Excel. С некоторым приближением о значимости коэффициентов корреляции судят так: если ¦ rjk ¦< s(rjk) , то корреляцию нельзя считать значимой.
При разработке рассматриваемого приложения наиболее трудным этапом является программирование вычисления коэффициента ковариации. Это вычисление целесообразно локализовать в функции
Function SJK ( j As Integer, k As Integer) As Double
К этой функции необходимо обратиться N•N раз : цикл по j от 1 до N, а при каждом j цикл по k от 1 до N.
Методы статистического анализа данных полезно знать каждому специалисту. Эта курсовая работа знакомит с началами статистического анализа. Любознательные студенты могут, обратившись к литературе, расширить свои знания в этой области, а при желании - и само разработанное приложение, включив в него, например, вычисление коэффициентов асимметрии и эксцесса для каждого признака, коэффициентов уравнения регрессии, связывающего первый признак с остальными, и т.п.
Литература к курсовой работе 2.
Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. М.: Наука, 1968. -720 с.
Шор Я. Статистистические методы анализа и контроля качества и надежности. М.: Советское радио, 1962. -552 с.
Ломтадзе В.В. Программное и информационное обеспечение геофизических исследований. М.: Недра, 1993. -268 с.
Разработка приложения “Решение треугольника”
Пусть имеется треугольник ABC с углами A,B,C и длинами противолежащих углам сторон LA,LB,LC. Разработать приложение, в котором по заданным параметрам треугольника определяются остальные - не заданные. Если исходные данные заданы так, что задачу решить нельзя, то программа должна выводить сообщение с помощью процедуры MsgBox.
Рекомендации. Разместить на листе Excel рисунок треугольника с подписями вершин, поля (TextBox) с именами TBA, TBB, TBC, TBLa, TBLb, TBLc и кнопку с заголовком Вычислить. Слева от текстовых полей поместить подписи A,B,C, LA,LB,LC. Событийная процедура, соответствующая командной кнопке, должна проверять каждый параметр (задан ли он) и вычислять (если не задан) по значениям других параметров.
Разработка приложения “Определение площади произвольной фигуры”
Пусть многоугольник произвольной формы (полигон) задан координатами вершин X,Y в двух столбцах на листе Excel. На этом же листе разместить командную кнопку и поле (TextBox) с именем TBS для вывода значения площади. Слева от поля TBS поместить надпись Площадь полигона. Вычисление площади целесообразно локализовать в подпрограмме-функции вида
Function Spoligon(M As Integer, X() As Single, Y() As Single) As Single
Dim i As Integer, x1 As Single, y1 As Single, S As Single
{ Вычисление S }
End Function
Функция может содержать следующие блоки:
S=0, x1 = X(1), y1 = Y(1), i=2
S = S + (y1 * (X(i) - X(i + 1)) + Y(i) * (X(i + 1) - x1) + Y(i + 1) * (x1 - X(i))) / 2
i=i+1, передача управления блоку 2, если i<M
Spoligon = Abs(S)
Разработка приложений “Графические построения в плоскости XOY”
Различные графические построения часто необходимы в любой практической деятельности. В литературе по VBA этот вопрос практически не освещен, но в Excel и в Word всегда можно вызвать на экран панель инструментов Рисование и конструировать рисунок, включая в него линии, надписи и другие фигуры, образцы которых (Shapes) представлены на панели инструментов Рисование. Если перед созданием рисунка включить запись макроса (кнопка Записать макрос на панели инструментов Visual Basic), а затем в окне Visual Basic посмотреть его текст и, кроме того, обратиться к встроенной справке, то становится ясно, как программировать векторную графику в VBA. Именно так мы и поступили. Далее приводится начало модуля, содержащего базовые процедуры, с помощью которых можно программировать графические построения на плоскости XOY.
' Глобальные переменные и константы
Dim cx As Single, cy As Single
' cx,cy - масштабные коэффициенты: пиксели/сантиметры
Dim nx1 As Integer, ny1 As Integer, nx2 As Integer, ny2 As Integer
Dim RedClr As Integer, GreenClr As Integer, BlueClr As Integer
Dim FntName As String, FntSize As Integer, FntColor As Integer
Const nx0 As Integer = 25.5: Const ny0 As Integer = 25.5:
' Инициализация графического окна размером Lx • Ly (в сантиметрах)
' Начало координат в левом верхнем углу окна, ось X направлена вправо, Y- вниз
Sub GrIni()
SP 0, 0, 0
cx = TextBoxCX.Value: cy = TextBoxCY.Value
Lx = TextBoxLX.Value: Ly = TextBoxLY.Value
Лист2.Activate: Лист2.Shapes.SelectAll
Selection.Delete ' Удаление графических элементов с листа 2
Лист2.Shapes.AddShape(msoShapeRectangle, nx0, ny0, Lx * cx, Ly * cy).Select
End Sub
' Пересчет координат из сантиметров чертежа в пиксели (точки)
Function GETnx(xcm As Single) As Integer
GETnx = nx0 + xcm * cx
End Function
Function GETny(ycm As Single) As Integer
GETny = ny0 + ycm * cy
End Function
' Перемещение в точку xcm, ycm (Move Absolute, координаты точки - в см)
Sub MA(xcm As Single, ycm As Single)
nx1 = GETnx(xcm): ny1 = GETny(ycm)
End Sub
' Вычерчивание линии из текущей точки в точку xcm, ycm (Plot Absolute)
Sub PA(xcm As Single, ycm As Single)
nx2 = GETnx(xcm): ny2 = GETny(ycm)
With Лист2.Shapes.AddLine(nx1, ny1, nx2, ny2).Line
.ForeColor.RGB = RGB(RedClr, GreenClr, BlueClr)
End With
nx1 = nx2: ny1 = ny2
End Sub
' Установка цвета линий (Set Pen)
Sub SP(Red As Integer, Green As Integer, Blue As Integer)
RedClr = Red: GreenClr = Green: BlueClr = Blue
End Sub
' Установка шрифта, его размера и цвета (Set Font)
' Цвет: 1-черный, 2-пусто, 3-красный, 4- ярко-зеленый, 5-синий,
' 6-желтый, 7-светло-фиол., 8-голубой, 9-коричн., 10-зеленый, 11-темно-синий
Sub SF(Name As String, Size As Integer, Color As Integer)
FntName = Name: FntSize = Size: FntColor = Color
End Sub
' Надпись (Write String) - указываются размеры текстового окна и сам текст
Sub WS(xcm As Single, ycm As Single, Lxcm As Single, Lycm As Single,
Txt As String)
Лист2.Shapes.AddTextbox(msoTextOrientationHorizontal, _
GETnx(xcm), GETny(ycm), Lxcm * cx, Lycm * cy).Select
Selection.ShapeRange.Line.Visible = msoFalse
Selection.Characters.Text = Txt
With Selection.Characters(Start:=1, Length:=Len(Txt)).Font
.Name = FntName
.Size = FntSize
.ColorIndex = FntColor
End With
End Sub
' Значок (1-восьмиугольник, 2-звездочка, 3-треугольник)
Private Sub SignN(xcm As Single, ycm As Single, _
Lxcm As Single, Lycm As Single, NS As Integer)
If NS = 1 Then Worksheets(2).Shapes.AddShape(msoShapeOctagon, _
GETnx(xcm), GETny(ycm), Lxcm * cx, Lycm * cy).Select
If NS = 2 Then Worksheets(2).Shapes.AddShape(msoShape5pointStar, _
GETnx(xcm), GETny(ycm), Lxcm * cx, Lycm * cy).Select
If NS = 3 Then Worksheets(2).Shapes.AddShape _
(msoShapeIsoscelesTriangle, GETnx(xcm), GETny(ycm), Lxcm * cx, Lycm * cy).Select
End Sub
Private Sub Btn1_Click() ' Пример событийной процедуры
GrIni
MA 5, 5
PA 10, 5
SP 200, 0, 0
PA 10, 10
SF "Times New Roman Cyr", 9, 11
WS -0.8, -0.2, 0.8, 0.4, "0.0"
End Sub
Предлагаемые процедуры разработаны нами, чтобы избежать непосредственного использования конструкций VBA, позволяющих размещать на листе книги Excel линии и надписи, поскольку синтаксис этих конструкций довольно сложен. Приведенный в конце модуля пример простейшей событийной процедуры показывает, как используя процедуры GrIni, MA, PA, SP, SF, WS, программировать построение графиков, схем, чертежей и т.п. Набор перечисленных процедур расчитан на то, что на листе 1 книги Excel размещены поля TextBoxLX, TextBoxLY, TextBoxCX, TextBoxCY и командная кнопка Btn1.
В полях редактирования (TextBox) задаются размеры чертежа в см и масштабные коэффициенты для перехода от см к точкам (пикселям). Коэффициенты cx, cy можно скорректировать после вывода чертежа на принтер. Процедура GrIni должна использоваться первой - она вычерчивает прямоугольное окно размером Lx•Ly на листе 2 книги Excel. В этом окне затем проводятся дальнейшие построения. Остальные процедуры легко понять по распечатке. Теперь сформулируем варианты курсовой работы.
Вариант 1. На листе 1 разместить элементы управления и в двух столбцах - значения X, Y. На листе 2 построить график Y(X). При построении координатных осей найти диапазоны изменения X, Y; оси оцифровать «круглыми» значениями.
Вариант 2. Аналогичен варианту 1, но надо строить график X(Y).
Вариант 3. Построить разными цветами графики F1(X), F2(X), разместив на листе 1 три ряда (столбца) чисел: X, F1, F2. Оба графика построить в одном и том же масштабе.
Вариант 4. Построить многоугольник (полигон) заданный координатами вершин X,Y в двух столбцах на листе Excel. Считать, что ось X направлена вверх (как принято в геодезии). Построить оси координат, оцифровав их "круглыми" значениями, нанести многоугольник, подписать порядковые номера точек.
Разработка приложения “Вычисление определенного интеграла”
Инженеру часто приходится вычислять значение определенного интеграла численными методами. Это бывает в тех случаях, когда либо не удается выразить интеграл в замкнутой форме, либо она настолько сложна , что проще воспользоваться численным интегрированием. Например, при проверке правильности выбора мощности двигателя по графику переходного процесса по току I(t) требуется в интервале от 0 до конечного времени работы tp вычислить
tp
интеграл t2(t)dt .
0
Этот интеграл при произвольной кривой тока удобнее всего вычислять численными методами параллельно с поиском решения дифференциальных уравнений, описывающих поведение системы электропривода.
В
F(x)dx - это площадь
А
Геометрический смысл определенного интеграла фигуры, ограниченной ординатами А и В, осью абцисс и графиком подинтегральной функции F(x) . Широко известными методами, использующими для приближенного подсчета определенных интегралов их замену конечной суммой, являются методы прямоугольников, трапеций, парабол (Симпсона).
Интегрирование по методу прямоугольников
Метод прямоугольников основан на непосредственном определении интеграла:
n > ?
где есть интегральная сумма, соответствующая некоторому разбиению отрезка [a,b] и некоторому выбору точек о0, о1, …,оn-1, на отрезках разбиения.
Вычисление определенного интеграла геометрически сводится к вычислению площади криволинейной трапеции, ограниченной функцией f(x), осью абсцисс и прямыми x=a и x=b .
Если точку оi совместить с левым концом отрезка Дxi , то приближенное значение интеграла равно площади фигуры и может быть представлено формулой левых прямоугольников: где h=(b-a)/n - шаг.
X0=a x1 xn-1 b=xn x
Если же в качестве оi выбирать правый конец отрезка Дxi , то приближенное значение интеграла равно площади ступенчатой фигуры, ограниченной сверху пунктирной линией и считается по формуле правых прямоугольников:
Интегрирование по методу трапеций
Метод трапеций заключается в том , что на отрезке [a,b] дуга AB гра
фика подинтегральной функции y=f(x) заменяется стягивающей ее
хордой и вычисляется площадь трапеции Abba.
Точность вычислений возрастает, если отрезок [a,b] разделить на несколько частей и применить формулу к каждому отрезку Дxi . Тогда
Так как под знаком суммы величины yi встречаются дважды (от i =1 до i =n-1), то последнее равенство можно записать в следующем виде:
эта формула называется общей формулой трапеций ее можно переписать в следующем виде:
где шаг h = (b-a)/n .
Метод Симпсона (парабол)
Точность приближенного возрастает, если подинтегральную функцию y = f(x) на отрезке [a,b] интерполировать участками парабол, то в этом случае используется метод Симпсона. Для увеличения точности вычислений отрезок [a,b]на n пар участков [x2n-2, x2n-1, x2n]. Вычисление определенного интеграла проводится по формуле:
где h=(b-a)/2n
В работе используете три варианта вычисления определенного интеграла, для этого используете следующие элементы управления: 3 переключателя, кнопку - вычислить, счетчик и поле для ввода n - число интервалов, поле - значение x.
Метод прямоугольников,
метод трапеций , Симпсона
Решение нелинейных уравнений
.Необходимость отыскания корней нелинейных уравнений встречается при расчетах линейных систем автоматического уравнения, собственных колебаний машин и конструкций со многими степенями свободы и т. д. Основная форма записи этих уравнений F(x)=0 .
Имеются две разновидности нелинейных уравнений: алгебраические и трансцендентные.
Алгебраические уравнения n-ой степени A0xn+A1xn-1+…+An=0 имеют n корней, коэффициенты Ai могут быть как действительными, так и комплексными числами.
Трансцендентные уравнения содержат степенные, тригонометрические, экспоненциальные и другие функции от некоторого аргумента x, например, e-x+sinx = 0 . Такие уравнения обычно имеют бесконечное множество корней.
Поиск корней нелинейного уравнения состоит из трех этапов: определение границ существования корней, отделение корней и уточнение корней.
Определение границ существования корней
Определение границ действителных корней алгебраического уравнения F(x)=0 . Если R1 - верхняя граница положительных корней F(x) , R2 - верхняя граница положительных корней F(-x) , R3 >0 - верхняя граница положительных корней R4 - верхняя граница положительных корней то все отличные от нуля действительные корни уравнения F(x)=0 (если они существуют) лежат внутри интервалов и .
Для определения верхней границы положительных корней алгебраического
уравнения можно формулой Лагранжа.
(1.1), где k - индекс первого из отрицательных коэффициентов полинома Pn(x)=A0xn+A1xn-1+…+An; B - наибольшее из абсолютных значений отрицательных коэффициентов полинома F(x). Для использования формулы (1.1) необходимо, чтобы коэффициент A0 был положительным (A0>0).
Отделение корней
Все действительные корни нелинейного уравнения F(x)=0 лежат на оси абсцисс. Отделение корней производится следующим образом: перемещаясь по оси х от нижней границы существования корня Rn на величину шага поиска е и проверяя смену знак функции F(x), в текущей координате х найти такой интервал е, на котором произошла смена знака функции или функция попала на ось (F(x)=0). Этот интервал и будет определять нижнюю и верхнюю границы существования одного из корней нелинейного уравнения. Смену знака определяют по произведению значений функций в двух соседних точках: F1= F(x-e) и F2= F(x). Условие смены знака - F1* F2?0. После определения выделенного корня происходит отделения следующего корня. Этот процесс продолжается до достижения верхней границы существования корней.
Уточнение корней
Существует множество методов уточнения корней.
Метод половинного деления. Суть этого метода заключается в делении интервала между нижней и верхней границей существования корня пополам. Новое значение корня определяется как х=(хн+хв)/2. Если F (x)=0, то х точный корень уравнения. Если же F (x)?0 , то из двух образовавшихся отрезков [хн,х] и [х,хв] выбирается тот, на концах которого функ-ция F (x) принимает значения противоположных знаков. Затем полученный отрезок делится пополам и проводятся те же вычисления. Процесс деления отрезка пополам производится до тех пор, пока полученные при делении отрезки не станут меньше заданной точности е.
Метод итераций. Для использования этого метода нужно преобразовать исходное уравнение F(x)=0 к виду x=FI(x), где FI(x)= F(x)+x. Корни уравнения в этом случае будут находится на пересечении двух кривых Y=x и Y=FI(x). Поиск этого корня производится исходя из полученного уравнения x=FI(x),следующим образом: x[i+1]=FI(x[i]). Процесс поиска все новых приближений x[i+1] продолжается до тех пор, пока не будет выполняться условие . Сходимость метода можно проверить по условию .
Метод касательных. Заключается в проведении касательной в текущей точке x[i]. Пересечение касательной с осью х дает новое, более точное значение x[i+1], т.е. x[i+1] = (x[i])-Т, где T=F(x[i])/F(x[i]) - изменение аргумента, которое находится путем деления противолежащего катета F(x[i]) на тангенс угла наклона касательной tga = F(x[i]). Этот процесс продолжается до тех пор пока изменение аргумента Т не станет меньше заданной точности е, т.е. Т? е. Дано алгебраическое уравнение 8x4-8x2-32x+1=0
Написать процедуру - определение границ действителных корней алгебраического уравнения, функцию - вычисление значения функции для нахождения границ.
Написать процедуру - отделение корней.
Уточнение корней методом половинного деления. Уравнение 8x4-8x2-32x+1=0. Уточнить до е = 0.001 корень уравнения методом половинного деления.
Уточнение корней методом итераций.Уравнение Найти корень уравнения x3-2.56x2-1.3251x+4.395006=0. За начальное приближение к корню взято число 2, а корень вычисляется c точностью до 0.00001.
Уточнение корней методом касательных . Уравнение 8x4-8x2-32x+1=0
8. Решение систем линейных алгебраических уравнений
Решение системы линейных алгебраических уравнений используется при расчете электрических цепей постоянного и переменного тока и при решении многих других задач.
Система линейных алгебраических уравнений имеет вид:
a11x1+a12x2+…+a1nxn=a1,n+1
a21x1+a22x2+…+a2nxn=a2,n+2
…............................................
an1x1+an2x2+…+annxn=an,n+1
По коэффициентам системы составляют расширенную матрицу
a11 a12 …a1n a1,n+1
a21 a22 … a2n a2,n+2 (1.1)
…..........................
an1 an2 … ann an,n+1
Одним из методов решения систем линейных алгебраических уравнений является метод последовательного исключения неизвестных (метод Гаусса), который состоит из двух этапов.
1 этап - исключение переменных
Переменную x1 исключают из 2, 3, … , n-го уравнения . Переменную x2 исключают из 3, … , n-го уравнения и т.д. Наконец, переменную xn-1 исключают из n-го уравнения.
Для исключения, допустим, переменной xk из i-го уравнения, необходимо сначала определить множительный коэффициент C=aik/akk , как отношение элементов k-го столбца, расположенных в i-ой и k-ой строках. Далее каждый элемент i-ой строки изменяется путем вычитания соответствующего элемента k-ой, умноженного на коэффициент С, т.е.
aij=aij-akj*C.
В результате таких преобразований элемент aik получит значение 0, а остальные элементы изменятся.
В процессе исключения переменных изменяются элементы расширенной матрицы, и она приобретает следующий вид:
a11 a12 …a1n a1,n+1
0 a[1]22 … a[1]2n a[1]2,n+2
….......................... (1.2)
0 0 … a[n-1]nn a n-1]n,n+1
В квадратных скобках указано количество преобразований элементов расширенной матрицы.
2 этап - нахождение корней системы
По элементам последней строки матрицы (1.2) можно найти значение
.
Значение корня xn используется для нахождения
значения xn-1 по элементам (n-1)-ой строки и найденные корни xk+1, xk+2, … , xn будет найдено как
В работе используйте кнопку метод Гаусса, счетчик и поле для ввода n - количества неизвестных. Матрицу коэффициентов расположите на листе Excel. Зарезервируйте два массива. В первый массив копируете матрицу, во втором выполняете исключение очередного неизвестного, а затем заменяете первую матрицу. Корни уравнения выводите на лист Excel.
Решите следующую систему уравнений:
2x1+3x2+7x3+6x4=1
3 x1+5 x2+3 x3+ x4=3
5 x1+3 x2+ x3+3 x4=4
3 x1+3 x2+ x3+6 x4=5
9. Приближенные методы решения систем алгебраических уравнений
Наиболее распространенным приближенным методом решения является метод Зейделя. Суть метода заключается в том, что каждое уравнение разрешается относительно своей k-ой переменной и это значение считается новым приближением этой переменной, т.е.
Особенностью этого метода является то, что для нахождения используют уже уточненные значения Разность между двумя соседними приближениями запоминается в элементах массива Tk=-|. Процесс поиска заканчивается, если все значения Tk окажутся меньше некоторой малой величины .
В работе используйте кнопку - метод Зейделя, счетчик и поле для ввода n - количество неизвестных, поле для ввода . Матрицу коэффициентов располагаете на листе Excel. Корни уравнения выводите на лист Excel. Начальное приближение задаете в ячейках листа.
Решите следующую систему уравнений:
2x1+3x2+7x3+6x4=1
3 x1+5 x2+3 x3+ x4=3
5 x1+3 x2+ x3+3 x4=4
3 x1+3 x2+ x3+6 x4=5
Литература Н.И. Данилина, Н.С. Дубровская и др. «Численные методы». Высшая школа 1976г.
10. Интерполяция функций, заданных таблично
Для исследования систем автоматического управления с нелинейными элементами, характеристики которых заданы в виде таблицы значений и моделирования таких характеристик на ЭВМ, применяются методы интерполяции. Эти методы позволяют подобрать полином, описывающий нелинейную зависимость, представленную таблично.
Интерполяция - это подбор полинома m-ой степени, обеспечивающий прохождение функции через узловые точки. Количество узловых точек должно быть m+1.
Метод Лагранжа
Полином, формируемый методом Лагранжа, имеет вид
Pm(x)=Y1B1(x)+Y2B2(x)+…+Ym+1Bm+1(x),
где Bj(x) - многочлен m-ой степени. Многочлены Bj(x) могут принимать только два значения - либо 0, либо 1.
Полином в этом случае примет вид
Полином формируется сразу после ввода исходных данных для любой контрольной точки. В работе используйте кнопку - метод Лагранжа, счетчик и поле для ввода m - степень полинома, счетчик и поле для ввода Kkt - количество контрольных точек. Координаты узловых точек (X1 ,Y1)… (Xm+1 ,Ym+1) и значения контрольных точек (Xk) вводятся в колонки листа Excel. Для каждой контрольной точки вычисляется значение полинома.
Функция f(x) задана таблично:
x |
0 |
1 |
2 |
6 |
|
y |
-1 |
-3 |
3 |
1187 |
Значения контрольных точек выбрать самостоятельно.
11. Допольнительные курсовые работы для студентов горно-геологических специальностей
Вычисление координат замкнутого теодолитного хода
На горизонтально ориентированном листе Excel разместить таблицу - ведомость вычислений. В нее занести исходные данные - столбцы 1,2,3,9 и данные в первой строке столбцов 6,7,14,15. В первой (широкой) строке, справа от заголовка, разместить переключатели (Option Buttons) с надписями (свойство Caption) Левые углы и Правые углы, а еще правее кнопку с надписью Вычислить. Кнопке должна соответствовать событийная процедура вычисления координат замкнутого теодолитного хода. В результате вычислений должны быть последовательно заполнены пустые ячейки таблицы. Невязки углов и приращений координат до и после уравнивания разместить в соответствующих столбцах, под таблицей, пропустив одну строку. В приведенном примере измерены левые углы.
Подобные документы
Создание тестирующих и игровых программ. Степень сложности и художественного оформления интерфейса пользователя. Создание справочной системы. Корректное отображение символов. Создание системы управления базами данных в среде Delphi и таблиц базы данных.
методичка [1,0 M], добавлен 24.10.2012Принципы создания приложений с GUI. Панель инструментов для добавления элементов интерфейса. Расположение кнопки и осей в окне приложения. Управление свойствами объектов. Установка свойств при редактировании. Программное изменение свойств. Флаги и рамки.
методичка [1,1 M], добавлен 06.07.2009Совокупность программных и аппаратных средств, обеспечивающих взаимодействие пользователя с компьютером. Классификация интерфейсов, текстовый режим работы видеоадаптера. Функции текстового режима. Реализация пользовательского интерфейса в BORLAND C++.
лабораторная работа [405,1 K], добавлен 06.07.2009Исследование существующих методов тестирования устройств телемеханики. Процесс разработки программы, анализ недостатков и достоинств создаваемой системы. Технологии разработки программных модулей и интерфейса пользователя, построение сетевого графика.
дипломная работа [2,3 M], добавлен 26.01.2013Основные правила разработки интерфейса пользователя. Создание базы данных с использованием разработанных моделей. Кодирование модулей программной системы с целью создания прототипа. Первичное окно при запуске программы. Защита от потери информации.
лабораторная работа [857,8 K], добавлен 13.06.2014Язык манипуляции данными. Процесс отбора данных. Использование агрегатных функций и специальных операторов в условиях отбора. Создание и использование представлений и хранимых процедур. Использование триггеров, разработка интерфейса пользователя.
лабораторная работа [70,6 K], добавлен 13.02.2013Анализ методики использования многомерных массивов в среде Delphi. Общее понятие массивов, их реализация, достоинства, недостатки. Массивы в Object Pascal. Описание функциональной структуры приложения: модуль MatrixOperations, модуль fileIO, модуль form.
курсовая работа [1,3 M], добавлен 28.09.2010Вычислительная система, необходимая для создания программного средства. Создание диалогового процесса интерфейса пользователя. Элементы управления и визуализации. Справочная система программного средства. Редактирование, добавление и удаление вопросов.
курсовая работа [2,8 M], добавлен 08.07.2012Классификация информационных систем и средств разработки. Построение диаграммы прецендентов и графического интерфейса пользователя. Затраты на разработку информационной системы бурового предприятия и оценка издержек. Создание хранимых процедур и скриптов.
дипломная работа [12,3 M], добавлен 27.06.2013Структура взаимодействия входной и выходной информации. Требования к программно-аппаратному окружению, к эргономике и технической эстетике интерфейса пользователя. Эскиз и спецификация типовых объектов управления графического интерфейса, тестирование.
курсовая работа [2,0 M], добавлен 16.02.2016