Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Курсовая работа: Разработка программы для квадратной матрицы

Название: Разработка программы для квадратной матрицы
Раздел: Рефераты по информатике
Тип: курсовая работа Добавлен 20:29:01 13 декабря 2010 Похожие работы
Просмотров: 111 Комментариев: 21 Оценило: 2 человек Средний балл: 5 Оценка: неизвестно     Скачать

Содержание

Введение

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

1.1 Логическая модель

1.2 Входные данные

1.3 Выходные данные

1.4 Обработка ошибок

2 Проектирование программного модуля

2.1 Структурная диаграмма программного модуля

2.2 Разработка программного модуля и ее описание

2.3 Разработка пользовательского интерфейса

3 Реализация программного модуля

3.1 Код программы

3.2 Описание используемых операторов и функций

4 Тестирование программного модуля

Заключение

Список использованных источников


Введение

В курсовом проекте разработана программа, позволяющая пользователю вводить квадратную матрицу, и заменять значения ненулевых элементов А(i,j) на А(i,j)*N и значения элементов главной диагонали на i+N. Ввод исходных данных должен осуществляться с использованием пользовательской формы.

Данная программа позволяет быстро проводить следующие операции с матрицами:

­ замена значений ненулевых элементов A(i,j) на A(i,j)*N;

­ замена значений элементов главной диагонали на i+N.

При разработке данного программного модуля используются программные модули, с использованием языка проектирования программ Visual Basic for Application .

В разделе 1 рассматривается математическая модель задачи, описываются входные и выходные данные, а также возможные ошибки и методы их обработки.

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

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

В разделе 4 проводится тестирование программного модуля.


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

1.1 Математическая модель задачи

Матрицей называется прямоугольная таблица чисел, содержащая m строк одинаковой длины (или n столбцов одинаковой длины). Матрица записывается в виде

или, сокращенно А=, где i=1,m (т.е. i=1,2,3,…,m) – номер строки, j=1,n (т.е. j=1,2,3,…,n) – номер столбца. Матрицу А называют матрицей размера m x n b и пишут. Числа , составляющие матрицу, называют ее элементами . Элементы, стоящие на диагонали, идущей из верхнего угла, образуют главную диагональ . Матрица, у которой число строк равно числу столбцов, называется квадратной

1.2 Входные данные

Входные данные: размерность матрицы.

Требования к входным данным:

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

Предусматривается проверка на допустимость исходных данных и повторение ввода при ошибочных данных.


1.3 Выходные данные

Выводятся преобразованные матрицы.

Требования к выходным данным:

Все выходные данные выводятся на формы и лист Excel.

Ко всем выходным данным запрещен доступ со стороны пользователя, осуществлённый с помощью функции Enabled.

1.4 Обработка ошибок

В результате неправильного введения входных данных, т.е.: дробных, отрицательных чисел, символов, и других элементов, появляется окно, показанное на рисунке 1.

Рисунок 1- Окно предупреждения пользователя


2 Проектирование программного модуля

2.1 Структурная диаграмма программного модуля

UserForm1

На рисунке 2 приведена структурная диаграмма программного модуля.

Рисунок 2 - Структурная диаграмма программного модуля

Здесь CommandButton1_Click() – процедура, срабатывающая при нажатии кнопки «Расчет», которая считывает исходные данные и выводит результат работы программы.

CommandButton2_Click() – процедура, срабатывающая при нажатии кнопки «Вывести результат на лист Excel», используется для вывода результата на лист Excel.

CommandButton3_Click() – процедура, срабатывающая при нажатии кнопки «Заполнить матрицу», используется для ввода исходной матрицы.

CommandButton4_Click() – процедура, срабатывающая при нажатии кнопки «Обнулить матрицу», используется для обнуления матрицы.

CommandButton5_Click() – процедура, срабатывающая при нажатии кнопки «Выход», используется для выхода из программы.

2.1 Разработка схемы программного модуля и ее описание

На рисунке 3 показана блок-схема программы


Рисунок 3 – Сема программного модуля


2.3 Разработка пользовательского интерфейса

1

На рисунке 4 разработан пользовательский интерфейс.

32

84

6542

43

5

26

74

Рисунок 4-Пользовательский интерфейс

1. Поле для ввода размерности матрицы.

2. Кнопка для заполнения матрицы

3. Кнопка для обнуления матрицы.

4. Кнопка расчета программы.

5. Поле вывода правильного результата.

6. Переключатели для выбора условия задачи.

7. Кнопка вывода результата на лист Excel.

8. Кнопка для выхода из программы.


3 Реализация программного модуля

3.1 Код программы

3Public N_correct As Boolean

Private Sub CommandButton1_Click()

If Not N_correct Then

MsgBox ("Неверно указан размер матрицы")

TextBox1.SetFocus

Exit Sub

End If

N = Val(TextBox1.Value)

For i = 1 To N

For j = 1 To N

A(i, j) = Raschet(A(i, j), OptionButton1.Value, i, j, N)

Next j

Next i

ListBox1.List = A

End Sub

Private Sub CommandButton2_Click()

If Not N_correct Then

MsgBox ("Неверно указан размер матрицы ")

TextBox1.SetFocus

Exit Sub

End If

МатрицаФорма.Hide

Cells.Clear

N = Val(TextBox1.Value)

For i = 1 To N

For j = 1 To N

Cells(i, j) = Raschet(A(i, j), OptionButton1.Value, i, j, N)

Next j

Next i

МатриЛист.Show

Application.Visible = True

Rem Cells.Select

Rem Selection.ClearContents

End Sub

Private Sub CommandButton3_Click()

If Not N_correct Then

MsgBox ("Неверно указан размер матрицы ")

TextBox1.SetFocus

Exit Sub

End If

N = Val(TextBox1.Value)

For i = 1 To N

For j = 1 To N

A(i, j) = 0

Next j

Next i

ListBox1.List = A

End Sub

Private Sub CommandButton4_Click()

If Not N_correct Then

MsgBox ("Неверно указан размер матрицы ")

TextBox1.SetFocus

Exit Sub

End If

N = Val(TextBox1.Value)

For i = 1 To N

For j = 1 To N

A(i, j) = Abs(i - j)

Next j

Next i

ListBox1.List = A

End Sub

Private Sub CommandButton5_Click()

ThisWorkbook.Close

End Sub

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

N = Val(TextBox1.Value)

If Not IsNumeric(N) Or N < 1 Or N <> Int(N) Then

MsgBox ("Ошибка. Необходимо ввести натуральное число")

N_correct = False

Else

ReDim A(1 To N, 1 To N)

With МатрицаФорма.ListBox1

.ColumnCount = N

.List = A

End With

N_correct = True

End If

End Sub

Private Sub UserForm_Initialize()

Application.Visible = False

TextBox1.SetFocus

End Sub

Private Sub UserForm_Terminate()

Application.Visible = True

N_correct = False

End Sub.


3.2 Описание использованных операторов

При разработке программы использовались различные стандартные операторы и функции языка программирования VBA.

Оператор условного перехода If Then Else. Синтаксис:

If Условие Then [Инструкции] [Else Инструкции else]

Если условие принимает значение True, то выполняется инструкция (или инструкции) после Then, если False, то выполняется инструкция (или инструкции) после Else. Ветвь Else является необязательной. Допускается также использование формы синтаксиса в виде блока:

If Условие Then

[Инструкции]

[ElseIf Условие-n Then

[Инструкции elseif] …

[Else

[Инструкции else]]

End If

Оператор цикла For…Next позволяет повторять группу операторов заданное число раз.

Инструкция Dim предназначена для описания типа данных переменной на уровне модуля или процедуры, а также для описания объектного типа переменных, синтаксис:

Dim Имя переменной Аs Тип переменной [ Имя переменной Аs Тип переменной ]

Типы переменных: Integer, Double.

Double-числовой тип двойной точности. Если переменная не была объявлена, то она получает тип Variant.

В курсовой работе матрицы задавались при помощи массивов. Массив-совокупность однотипных данных объединённых общим именем. Синтаксис:

Dim Имя массива (Индексы [Аs тип])

Иногда в процессе выполнения программы требуется изменять размер массива. В этом случае первоначально массив объявляют как динамический

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

Функция IsNumeric( x ) проверяет, является ли переменная числовым значением.

Функция CDbl возвращает числа, содержащиеся в строке, как числовое значение соответствующего типа

Цикл с предусловием While…Wend позволяет повторять группу операторов до тех пор пока условие будет принимать значение истина.

Функция Exit For предоставляет возможность досрочного выхода из цикла.

>, <, =, >=, <=, <> - операторы сравнения.

*, /, *, -, + — математические операторы

Функция Fix(x) округляет число до ближайшего меньшего целого

Unload Me – осуществляет выход из процедуры.


4 Тестирование программного модуля

Тестирование программы приведено на рисунках 5,6,7.

Рисунок 5 – Заполнение матрицы

Рисунок 6 – Результат полученный программой при выполнении следующей операции: заменить значения ненулевых элементов A(i,j) на A(i,j)*N.


Рисунок 7 – Результат полученный программой при выполнении замены элементов главной диагонали на i+N.

Как видим, если сравнить первоначальную матрицу (Рисунок 5) и полученные данные, приведенные на рисунках 6 и 7, можно сказать что программа работает верно .


Заключение

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

Таким образом, можно сделать вывод о том, что поставленная задача выполнена:

- на языке программирования VBA создана программа, с помощью которой можно преобразовать матрицы.

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

Программный модуль позволяет:

- вводить значения в пользовательскую форму в ручном режиме;

- позволяет быстро определить верный ответ и проверить себя.

- результат выводится как в окно пользовательской формы, так и на лист Excel.


Список использованных источников

1 Гарнаев А.Ю Самоучитель VВА. - СПБ.: БХВ- Санкт-Петербург, 1999.-512 с.: ил.

2 Додж М., Стинсон К Д60 Эффективная работа с Мiсrosoft Excel.

3 Браун С. Б87 Visual Basic 6: учебный курс- СПб: ЗАО Издательство “Питер”, 1999.-576 с.: ил.

4 Мантуров О.В. Курс высшей математики, учеб. Для вузов.- М.: Высш. шк., 1991.- 448с.: ил.

5 А.Д. Мышкин Лекции по высшей математике.- М. 1969 -640с.

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита04:47:22 04 ноября 2021
.
.04:47:20 04 ноября 2021
.
.04:47:19 04 ноября 2021
.
.04:47:18 04 ноября 2021
.
.04:47:16 04 ноября 2021

Смотреть все комментарии (21)
Работы, похожие на Курсовая работа: Разработка программы для квадратной матрицы

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

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



Результаты(294104)
Комментарии (4230)
Copyright © 2005-2022 BestReferat.ru support@bestreferat.ru реклама на сайте

Рейтинг@Mail.ru