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

ЛИЧНЫЙ КАБИНЕТ 

 

Здравствуйте гость!

 

Логин:

Пароль:

 

Запомнить

 

 

Забыли пароль? Регистрация

Повышение оригинальности

Предлагаем нашим посетителям воспользоваться бесплатным программным обеспечением «StudentHelp», которое позволит вам всего за несколько минут, выполнить повышение оригинальности любого файла в формате MS Word. После такого повышения оригинальности, ваша работа легко пройдете проверку в системах антиплагиат вуз, antiplagiat.ru, РУКОНТЕКСТ, etxt.ru. Программа «StudentHelp» работает по уникальной технологии так, что на внешний вид, файл с повышенной оригинальностью не отличается от исходного.

Результат поиска


Наименование:


курсовая работа Конструирование программ и языки программирования

Информация:

Тип работы: курсовая работа. Добавлен: 19.10.2012. Год: 2012. Страниц: 32. Уникальность по antiplagiat.ru: < 30%

Описание (план):


?Министерство образования Республики Беларусь
 
Учреждение образования
“Белорусский государственный университет информатики и радиоэлектроники”
 
Кафедра электронных вычислительных машин
 
Факультет компьютерных систем и сетей
 
 
 
 
 
 
 
 
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе
на тему: «Калькулятор для матриц»
по курсу: «Конструирование программ и языки программирования»
 
 
 
 
 
 
 
Выполнил:
студент гр. 810901
Скурат В.В.
Проверил:
Сасин Е.А.
 
 
 
 
 
 
Минск 2010

Содержание
 
Введение              3
1. Техническое задание              6
2. Рабочий проект              7
2.1.Общие сведения (среда функционирования (ОС), способ загрузки,
способ  инсталляции, требования к ПО, требования к ТО)              7
2.2.  Алгоритм программы              8
2.2.1.Классы              8
2.2.2.Диаграмма классов              13
2.2.3.Модули              14
2.2.4.Схема алгоритма              15
2.2.5.Диаграмма последовательности              16
2.2.6.Обработка исключений              17
2.3.Руководство пользователя              18
Заключение……………………………..……………………………………….........23
Список используемой литературы…………………..……..…………....…..…….. 24
ПРИЛОЖЕНИЕ А………………….………..……….……………………..….....….25
 
 
 
 
 
 
 
 
 
 
 
 
Введение
С++ был создан в начале 80-х Бьерном Страуструпом. Страуструп имел перед собой две цели: (1) оставить С++ совместимым с обычным С и (2) расширить С конструкциями объектно-ориентированного программирования (ООП), основанными на понятии класса в Simula 67.
   Конечная цель создания С++ - предоставить профессиональному программисту язык, который можно использовать при создании объектно-ориентированного программного обеспечения, не жертвуя эффективностью или переносимостью С. Первые шаги на этом пути были сделаны Деннисом Ричи, а продолжили его Бьерн Страуструп и растущее сообщество современных практикующих программистов. Высокая совместимость с языком C, позволяет использовать весь существующий C-код (код на C может быть с минимальными переделками скомпилирован компилятором C++; библиотеки, написанные на C, обычно могут быть вызваны из C++ непосредственно без каких-либо дополнительных затрат, в том числе и на уровне функций обратного вызова, позволяя библиотекам, написанным на C, вызывать код, написанный на С++).
Два аспекта, связанных с С++.  Во-первых, он превосходен как язык общего назначения, благодаря своим новым свойствам. Во-вторых, он удачен и как объектно-ориентированный язык программирования.
ООП – это программирование, сфокусированное на данных, причем данные и поведение неразрывно связаны, представляя собой класс. Центральным элементом ООП является инкапсуляция совокупности данных и соответствующих им операций. Понятие класса с его функциями-членами и членами данных представляет программисту подходящий для реализации инкапсуляции инструмент. Переменные класса являются объектами, которыми можно управлять.
Кроме того, классы обеспечивают сокрытие данных. Права доступа могут устанавливаться или ограничиваться для любой группы функций, которым необходим доступ к деталям реализации. Тем самым обеспечивается модульность и надежность.
Еще одной важной концепцией ООП является поощрение повторного использования кода с помощью механизма наследования. Суть этого механизма – получение нового произвольного класса из существующего, называемого базовым. При создании производного класса базовый класс может быть дополнен или изменен. Таким путем могут создаваться иерархии родственных типов данных, которые используют общий код.
ООП зачастую более сложно, чем обычное процедурное программирование, как оно выглядит на С. Существует по крайней мере один дополнительный шаг на этапе проектирования, перед алгоритмизацией и кодированием. Он состоит в разработке таких типов данных, которые соответствовали бы поставленной проблеме.
Есть уверенность, что использование ООП принесет дивиденды в нескольких отношениях. Решение будет более модульным, следовательно, более понятным и простым для модификации и обслуживания. Кроме того, такое решение будет более пригодно для повторного использования.
C++ — чрезвычайно мощный язык, содержащий средства создания эффективных программ практически любого назначения, от низкоуровневых утилит и драйверов до сложных программных комплексов самого различного назначения, поддерживает различные стили и технологии программирования, включая традиционное директивное программирование, ООП, обобщённое программирование, метапрограммирование (шаблоны, макросы).
 
Что касается данного проекта, можно сказать, что практически на любом современном компьютере сейчас установлена программа Excel из  пакета Microsoft Office. В этой программе можно выполнять все основные и дополнительные операции над матрицами. Но для выполнения всех этих операции необходимо иметь довольно обширную математическую базу и немалые навыки работы в Excel.
Цель курсовой работы: создание именно такой программы, которая могла бы выполнять основные операции над матрицами, тем самым, облегчая выполнение задачи пользователем и повышая продуктивность его труда.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1.Техническое задание
Разработать калькулятор для матричных вычислений, следовательно предметной областью будет являться теория матриц. В программе должны быть реализованы:
1) Для определения данных должен использоваться отдельный класс – класс матриц.
2) Операции изменения размеров матриц.
3) Операции преобразования матриц (транспонирование).
4) Операции инициализации матриц (инициализация единичной, нулевой, случайной матриц).
5) Операции сложения, и умножения матриц.
6) Операции умножения матрицы на скаляр и возведение в скалярную степень.
7) Удобная память калькулятора (буфер).
Интерфейс должен обеспечивать пользователю возможность:
1)    Удобного ввода данных с клавиатуры;
2)     Изменять размер вычисляемых матриц и контролировать текущие    размеры рабочих матриц и результирующей;
3)     Производить все операции, перечисленные в «Функциональных требованиях» интуитивно понятным и удобным способом;
4)     Визуально контролировать содержимое буферной памяти калькулятора;
5)    Не допускать обработки исходных данных, противоречащих логике работы программы путем вывода сообщений об ошибке;
 
 
 
 
 
 
2.Рабочий проект
 
2.1.Общие сведения (среда функционирования (ОС), способ загрузки, способ  инсталляции, требования к ПО, требования к ТО)
 
Среда функционирования:
Borland C++ Builder – это среда быстрой разработки, в которой в качестве языка программирования используется язык C++ Builder (C++ Builder Language).
Запуск программы:
Стандартный, т.е. двойной клик на иконке программы.
Способ инсталляции:
Копирование исполняемого файла программы на нужный носитель.
Требования к ПО и к ТО:
?      операционная система Windows 9x/ME/2000/XP/2003
?      16 Мб оперативной памяти
?      1 Мб свободного пространства на жестком диске
?      Pentium 133 MHz
 
 
 
 
 

2.2.  Алгоритм программы
2.2.1.Классы
 
В данном проекте реализованы 4 класса:
class TMatrix {...}
              класс матриц;
class TForm1 : public TForm {...}
              главная форма
class TAboutBox1 : public TForm {...}
              форма окна About;
class TAboutBox1 : public TForm {...}
              форма окна ошибок;
 
Класс TMatrix:
Переменные:
                            Квадратный массив целых чисел **_mat;
                            Беззнаковые целые _NNUM1 и _NNUM2 определяющие размеры массива _mat;
Методы:
                            Изменение размера:
                                          1) void DeleteOldMatrix()
                                                        Удаляет старую матрицу;
                                          2) void InitNewMatrix1()
                                                        Выделяет память под новую матрицу размером 3x3;
                                          3) void InitNewMatrix1(int M, int N)
                                                        Выделяет память под новую матрицу размером MxN;
             
Инициализация:
                                          1) void InitRandom()
                                                        Заполняет матрицу случайными числами;
                                          2) void InitZero()
                                                        Заполняет матрицу нулями;
                                          3) void InitE()
                                                        Если матрица квадратная, то инициализирует                                                                       единичную матрицу;
Действия с одним элементом:
                                          1) void InitElem(int i, int j, int NewInt)
                                                        Присваивает элементу с индексом [i][j] значение                                                         NewInt;
                                          2) int  GetElem(int, int)
                                                        Возвращает значение элемента с индексом [i][j];
Операции с двумя матрицами:
                                          1) void MSumm(TMatrix &A, TMatrix &B)
                                                        Возвращает значение суммы матриц A и B;
                                          2) void MDiff(TMatrix &A, TMatrix &B)
                                                        Возвращает значение разности матриц A и B;
                                          3) void MMult(TMatrix &A, TMatrix &B)
                                                        Возвращает значение произведения матриц A и B;
Операции с одной матрицей:
                                          1) void MScalMult(int ScalInt)
                                                        Возвращает значение умножения матрицы на скаляр                                                         ScalInt;
                                                2) void MNegative()
                                                        Возвращает значение умножения матрицы на -1;
                                          3) void MTrans()
                                                        Возвращает значение транспонированной матрицы;
 
Класс TForm1:
Переменные:
                            Элементы интерфейса программы в форме указателей на                                           объект;
                            Четыре переменные матрицы типа TMatrix:
                                          - _Mat1, _Mat2 – Матрицы привязанные к таблицам строк                                                                       StringGrid 1 и 2 соответственно;
                                          - _Res - Матрица привязанная к таблице StringGrid3                                           (хранит результат выполнения операций);
                                          - _Mem – Матрица являющаяся памятью калькулятора;
                            Четыре переменные целого типа, хранящие размеры таблиц                             строк StringGrid1 и 2:                    
                                          _SG1_R, _SG1_C, _SG2_R, _SG2_C;
                            Указатель типа TStringGrid *_SGFocus, определяющий какая                             таблица строк              StringGrid активна в данный момент;
                            Указатель типа TMatrix *_MatFocus, определяющий какая                                           матрица соответствует активной таблице строк StringGrid;             
                      Переменная целого типа _Edit1Num хранящая значение поля                             Edit1(поля для значения какого-то целого скаляра);
                      Переменная целого типа _SGFocusInt определяющая номер                                           активной таблицы StringGrid;             
                            Переменная целого типа _Memory определяющая, используется                             ли память калькулятора;                                          
 
Методы:
                            Конструктор:
                                          __fastcall TForm1(TComponent* Owner);
 
Функции нажатия на кнопки формы;
Функции чтения формы:
                                          1) ReadMemory()
                                                        Заносит значения из активной StringGrid в                                                                       матрицу памяти;
                                          2) ReadForm()
                                                        Заполняет матрицы _Mat1 и _Mat2 значениями из                                                         соответствующих StringGrid;
                                          3) ReadMatrix();
                                                        Заполняет соответствующую матрицу значениями из                                                         активной               StringGrid;
Функции вывода значений в интерфейс:
                                          1) Print(int Index)
                                                        Заполняет соответствующую параметру Index                                                                       StringGrid из               соответствующей матрицы;
                                          2) WriteMemory()
                                                        Выводит значение памяти калькулятора в активную                                                         StringGrid;
                                          3) WriteForm()
                                                        Заполняет StringGrid3 значениями из матрицы _Res                                                         (выводит результат);
                                          4) WriteMatrix()
                                                        Заполняет активную StringGrid значениями из                                                                       активной               матрицы;
                                          1) SGRight(int SGNUM)
                                                        Проверяет допустимость значений каждой строки                                                         соответствующей параметру SGNUM StringGrid;
                                          2) ExceptCatch(int ErrCode)
                                                        Хранит инструкции по обработке каждого                            
                                          исключения
Класс TAboutBox:
Переменные:
                            Элементы интерфейса формы в форме указателей на объекты;
 
              Методы:
                            Конструктор:
                                          __fastcall TForm1(TComponent* Owner);
 
Класс TAboutBox1:
              Переменные:
                            Переменные типа *TLabel, используемые для вывода в форму                             сообщений об ошибке;
 
                            Остальные элементы интерфейса формы в форме указателей на                             объекты;
                           
              Методы:
                            Конструктор:
                                          __fastcall TForm1(TComponent* Owner);
                           
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2.2.2 Диаграмма классов

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2.2.3.Модули программы
 
Исходный текст программы размещается в четырех модулях (восьми файлах) и двух дополнительных файлах:
 
1)                 Unit1.h              используется для хранения класса TForm1;
2)                 Unit2.h              используется для хранения класса TMatrix;
3)                 Unit3.h              используется для хранения класса TAboutBox;
4)                 Unit4.h              используется для хранения класса TErrorBox;
5)                 Unit1.cpp              используется для хранения методов класса TForm1 с формой доступа published;
6)                 File1.cpp              используется для хранения методов класса TForm1 с формой доступа public(описанные программистом);
7)                 Unit2.cpp              используется для хранения методов класса TMatrix;
8)                 Unit3.cpp              используется для хранения методов класса TAboutBox;
9)                 Unit4.cpp              используется для хранения методов класса TAboutBox1;
10)            File2.h              используется для хранения глобальных констант;
 
 
 
 
 
 
 
 
 
 
 
 
 
2.2.4.Схема алгоритма
 
Любая функция нажатия функциональной кнопки главного окна использует одну из функций чтения формы и/или одну из функций вывода в форму описанных в файле File1.cpp
Сначала происходит чтение одной или двух таблиц строк StringGrid с занесением значений из них в соответствующие матрицы.
Затем с помощью методов класса TMatrix данные обрабатываются и выводятся по необходимости в результирующую или одну из рабочих StringGrid.
Рассмотрим на примере функции нажатия кнопки сложения.
1)                Чтение обеих StringGrid с помощью метода ReadForm() с занесением результата в _Mat1 и _Mat2.
2)                Присвоение матрице _Res значения суммы матриц _Mat1 и _Mat2 с помощью метода класса TMatrix MSumm(TMatrix, TMatrix).
3)                Вывод матрицы _Res в форму с помощью функции WriteForm().
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2.2.5 Диаграмма последовательности

2.2.6.Обработка исключений
 
В программе генерируются исключения с кодом целого типа.
Все они делятся на 6 групп:
Код 1:                            Несоответствующий выбранной операции размер матрицы                                           (матрица должна быть квадратной).
Код 2:                            Несоответствующие выбранной операции размеры матриц                                           (матрицы должны иметь одинаковый размер).
Код 3:                            Недопустимые данные (элементами матриц могут быть                                           только числа).
Код 4:                            Недопустимые данные (независимое поле Edit должно                                           содержать только числа).
Код 5:                            Несоответствующие выбранной операции размеры матриц                                           (высота первой матрицы должна соответствовать ширине                                           второй).
Код 10:              Внутренняя ошибка класса TMatrix (неправильные                                                         индексы). От пользователя не зависит.
При поимке любого исключения вызывается функция ExceptCatch(int ErrorCode), которая выводит соответствующее сообщение об ошибке в форму TErrorBox1 и показывает саму форму.
             

2.3.Руководство пользователя
 
Интерфейс любой программы должен отличаться легкой восприимчивостью пользователем.
Если пользователь сможет разобраться в программе без руководства, то работа программиста будет считаться выполненной великолепно. В этой работе тоже были приложены усилия для создания простого, понятного и удобного интерфейса.(рис. 1)
 

рис. 1- показан интерфейс программы.
 
В правой части окна(одна над другой) находятся три основные панели.
Каждая из двух верхних представляют собой панель, включающую рабочую таблицу строк (рис. 2а) и два объекта (рис. 2б,в) изменения размера таблицы.
Каждый объект представляет собой числовое поле и две кнопки «+» и «-». Верхний объект изменения размера таблицы (рис2.б) служит для изменения высоты таблицы, нижний (рис. 2в) – ширины.
 
рис. 2- Одна из двух верхних панелей.
 
 
Каждая такая панель представляет собой матрицу.
Для ввода данных необходимо:
1.        Выбрать нужный размер
2.        Выделяя курсором необходимую ячейку ввести значение данной ячейки.
 
 
рис. 3- Результирующая панель.
 
 
В правом нижнем углу окна находится результирующая панель.
Она представляет собой панель, включающую результирующую таблицу   (рис. 2а) и две кнопки (рис. 3в) для переноса данных из результирующей таблицы в одну из рабочих.
Верхняя кнопка «ТО 1» служит для переноса данных в первую матрицу, нижняя  – во вторую.
В левом верхнем углу отображается информация о размерах матрицы (рис. 3б): высоте и ширине.
 
Панель основных операций.
Над матрицами можно выполнять операции сложение, вычитание, умножение с помощью нажатия соответствующей кнопки на панели основных операций
(рис. 4).
«*» - умножение матриц(рис. 4а);
«+» - сложение матриц(рис. 4б);
«-» - вычитание матриц(рис. 4в);
«Модуль» - подсчет определителя матрицы(рис. 4г);
 
 
рис. 4- Панель основных операций.
 
 
Операции преобразования матрицы.
Во время работы матрицу можно преобразовать с помощью нажатия соответствующей кнопки на панели дополнительных операций (рис. 5).
«Е» - инициализация единичной матрицы(рис. 5а);
«0» - инициализация нулевой матрицы(рис. 5д);
«Rand» - инициализация случайной матрицы(рис. 5е);
«Integer» - инициализация матрицы целым из поля «Число» (рис. 5б)
«- Х» - умножение матрицы на –1(рис. 5з);
«Х * С» - умножение матрицы на скаляр(рис. 5в);
«Х ^ C» - возведение матрицы в скалярную степень(последовательное умножение на себя)(рис. 5ж);
«Т» - транспонирование матрицы(рис. 5г);
 
 
 
рис. 5- Панели дополнительных операций
 
Все эти операции производятся над активной матрицей.
Чтобы сделать матрицу активной необходимо сначала выделить соответствующую ей таблицу, а затем нажать соответствующую операции кнопку.
Для операций умножения на скаляр и возведения в скалярную степень используется целое число.
Это число вводится в числовое поле (рис. 6) находящееся в верхней правой части окна.
 

рис. 6 - числовое поле
 
Для очистки всей формы (обнуления всех матриц формы) используется кнопка «С»(рис. 7), находящаяся в левом нижнем углу окна.

рис. 7 - кнопка «обнуления всех матриц формы»
 
Использование памяти.
В данном калькуляторе можно использовать память для хранения одной матрицы.
Все операции с памятью производятся с помощью кнопок на панели памяти
(рис. 8)
Чтобы занести в память матрицу нужно выделить матрицу кликом мыши и нажать кнопку «М». На панели появится индикатор «М».
Чтобы вынести результат из памяти нужно выделить матрицу кликом мыши и нажать кнопку «МR».
Чтобы очистить память необходимо нажать «МС». Индикатор «М» исчезнет.
 

рис. 8 – Кнопки панели памяти.
Для получения информации о программе нажмите кнопку «О программе», находящуюся в левом верхнем углу окна.
 

рис. 9 - кнопка «О программе»
Заключение
 
Данная программа является типичным примером реализации программ использованием объектно-ориентированной технологии программирования
созданных для Windows с помощью Borland C++ Builder.
Достоинством данной программы является ее простота в использовании в наиболее распространенной, на данный момент, операционной системе Windows  и то, что при необходимости можно добавить нужные кнопки-функции.
Недостаток программы в том, что при наборе очень сложных функций одновременно программа выдает ошибку набора. Поэтому чтобы избежать этой ошибки необходимо соблюдать последовательность и правильность набора команд.
 
 
 
 
 
 
 

Список использованной литературы
 
1.      Бьерн Страуструп «Язык программирования C++» специальное издание. Москва, Санкт – Петербург,2002. 
2.      Г.Шилдт «Теория и практика Си++.» СПб.:BHV – Санкт-Петербург, 1996.
3.      Н. Подбельский «Язык С++»; Питер, Санкт – Петербург 2004.
4.      Валерий Лаптев «С++ Экспресс курс», БХВ – Санкт-Петербург, 2004.
5.      А.Я. Лемих «С/С++ в примерах и задачах» Москва, 2004.
6.      Кун С. «Матричные процессоры на СБИС». М. 1991
7.      «Транспьютеры. Архитектура и ПО». Пер. с англ./ Под ред. Г. Харпа.- М.: Радио и связь, 1993.
8.      «СуперЭВМ. Аппаратная и программная организация.»/ Под ред. С.Фернбаха. Пер. с англ. - М.: Радио и связь, 1991.
9.      «Вычислительные комплексы, системы и сети» / А.М.Ларионов, С.А.Майоров, Г.И.Новиков: Учебник для вузов. Л:Энергоиздат. Ленингр.отд-ние, 1987.
10. «Фути К., Судзуки Н. Языки программирования и схемотехника» СБИС: Пер. с япон. М.: Мир, 1988.
11. Головкин Б.А. «Параллельные вычислительные системы». М.:Наука, 1980.
12. Н.Культин «Практика программирования на С++». «Питер», Санкт – Петербург 2003.
13. А.Л. Фридман «Язык программирования С++ » курс лекций; Интернет Университет Информационных технологий; Москва 2003
14. Т.А. Павловская «С/С++ Программирование на языке высокого уровня» учебник для вузов; Питер, Санкт – Петербург 2004.
15. http://www.parallel.ru
16. http://www.rusmath.ru
 
 

ПРИЛОЖЕНИЕ А.
 
Исходный код программы
 
Project1.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
USEFORM("Unit3.cpp", AboutBox);
USEFORM("Unit4.cpp", AboutBox1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
        try
        {
                 Application->Initialize();
                 Application->CreateForm(__classid(TForm1), &Form1);
                 Application->CreateForm(__classid(TAboutBox), &AboutBox);
                 Application->CreateForm(__classid(TAboutBox1), &AboutBox1);
                 Application->Run();
        }
        catch (Exception &exception)
        {
                 Application->ShowException(&exception);
        }
        catch (...)
        {
                 try
                 {
                         throw Exception("");
                 }
                 catch (Exception &exception)
                 {
                         Application->ShowException(&exception);
                 }
        }
        return 0;
}
//---------------------------------------------------------------------------
 

Unit1.h
 
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
#ifndef File1H
#define File1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include "CSPIN.h"
#include <ExtCtrls.hpp>
#include <Grids.hpp>
#include "Unit2.h"
class TMatrix;
//---------------------------------------------------------------------------
class NSquare {};
class InsideError {};
class NRightSize {};
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:              // IDE-managed Components
        TPanel *Panel1;
                TStringGrid *StringGrid1;
 
        TPanel *Panel2;
                TStringGrid *StringGrid2;
 
        TPanel *Panel3;
                TStringGrid *StringGrid3;
 
 
        TPanel *Panel11;
                TButton *Button0;
 
        TGroupBox *GroupBox12;
                TEdit   *Edit1;
 
        TPanel *Panel13;
                TButton *ButtonC;
 
        TGroupBox *GroupBox14;
                TButton *Button2;
                TButton *Button3;
                TLabel  *Label3;
 
        TPanel *Panel15;
                TButton *Button7;
                TButton *Button6;
                TButton *Button5;
 
        TPanel *Panel16;
                TButton *Button17;
                TButton *Button15;
                TButton *Button16;
                TButton *Button11;
                TButton *Button12;
        TEdit *Edit1_1;
        TButton *Button1_1P;
        TButton *Button1_1M;
        TButton *Button1_2P;
        TButton *Button1_2M;
        TEdit *Edit1_2;
        TButton *Button2_1P;
        TButton *Button2_1M;
        TEdit *Edit2_1;
        TButton *Button2_2P;
        TButton *Button2_2M;
        TEdit *Edit2_2;
        TButton *Button3_2;
        TButton *Button3_1;
        TLabel *Label3_1;
        TLabel *Label3_2;
        TButton *Button10;
        TButton *Button18;
        TLabel *Label1;
        TLabel *Label2;
        TButton *Button8;
        TButton *Button1;
        TLabel *Label4;
        TLabel *Label5;
        TLabel *Label6;
        TLabel *Label7;
        TLabel *Label8;
        TLabel *Label9;
 
 
        void __fastcall Button6Click(TObject *Sender);
        void __fastcall Button5Click(TObject *Sender);
        void __fastcall Button7Click(TObject *Sender);
        void __fastcall Button3_1Click(TObject *Sender);
        void __fastcall Button3_2Click(TObject *Sender);
        void __fastcall ButtonCClick(TObject *Sender);
        void __fastcall Button15Click(TObject *Sender);
        void __fastcall Button1_1PClick(TObject *Sender);
        void __fastcall Button1_1MClick(TObject *Sender);
        void __fastcall Button1_2PClick(TObject *Sender);
        void __fastcall Button1_2MClick(TObject *Sender);
        void __fastcall Button2_1PClick(TObject *Sender);
        void __fastcall Button2_1MClick(TObject *Sender);
        void __fastcall Button2_2PClick(TObject *Sender);
        void __fastcall Button2_2MClick(TObject *Sender);
        void __fastcall StringGrid1Click(TObject *Sender);
        void __fastcall StringGrid2Click(TObject *Sender);
        void __fastcall Button16Click(TObject *Sender);
        void __fastcall Button12Click(TObject *Sender);
        void __fastcall Button11Click(TObject *Sender);
        void __fastcall StringGrid1Exit(TObject *Sender);
        void __fastcall StringGrid2Exit(TObject *Sender);
        void __fastcall Button10Click(TObject *Sender);
        void __fastcall Button17Click(TObject *Sender);
        void __fastcall Button3Click(TObject *Sender);
        void __fastcall Button8Click(TObject *Sender);
        void __fastcall Button2Click(TObject *Sender);
        void __fastcall Button1Click(TObject *Sender);
        void __fastcall Button0Click(TObject *Sender);
 
p
и т.д.................


Перейти к полному тексту работы


Скачать работу с онлайн повышением оригинальности до 90% по antiplagiat.ru, etxt.ru


Смотреть полный текст работы бесплатно


Смотреть похожие работы


* Примечание. Уникальность работы указана на дату публикации, текущее значение может отличаться от указанного.