
- •Индивидуальное задание
- •Содержимое технического задания
- •Схемы алгоритмов
- •Функция ввода данных
- •Программный код библиотеки
- •Программный код событийной процедуры
- •Результаты работы программы
- •Результаты работы программы
- •Список использованных источников
- •Лабораторная работа №2 «Одномерные массивы»
- •Задание
- •Cодержимое технического задания
- •Функция генерации динамического массива
- •Программный код dll-библиотеки
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №3
- •Задание
- •Cодержимое технического задания
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №4
- •Задание
- •Cодержимое технического задания
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №5
- •5. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
- •6. Выполнить отчет в соответствии с гост на схемы алгоритмов и согласно гост оформления отчетов по нир.
- •Схемы алгоритмов.
- •Программный код dll-библиотеки
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №6
- •4. Подготовить тесты для контрольного решения задачи. Показать их
- •5. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №7
- •Индивидуальное задание
- •Содержание тз
- •4. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
- •5. Выполнить отчет в соответствии с гост на схемы алгоритмов и согласно гост оформления отчетов по нир.
- •3 Разработка схем алгоритмов
- •4 Разработка программного кода
- •5 Результаты выполнения проекта
Список использованных источников
1.Гуриков, С. Р. Основы алгоритмизации и программирования на Visual C++ / С.Р. Гуриков. — Москва : ИНФРА-М, 2022. — 515 с.
3. ГОСТ 7.32-2017 Межгосударственный стандарт. Система стандартов по информации, библиотечному и издательскому делу. Отчет о научно-исследовательской работе. Структура и правила оформления.
Лабораторная работа №3
«Запись одномерных массивов в базу данных Microsoft Access»
Вариант №18
Выполнил: Студент группы которую ненавидит Гуриков С.Р.
Великий студент
Вариант ахуенный
Проверил: Доцент каф. «Информатика»
Гуриков С. Р.
Задание
Разработайте функцию для создания одномерного динамического вещественного массива состоящего из случайных положительных и отрицательных чисел. Разработайте функцию, которая находит минимальный отрицательный элемент в массиве. Разработайте функцию, которая формирует новый массив, из индексов элементов исходного массива, значения которых больше найденного числа и разработайте метод который производит запись массивов в базу данных Microsoft Access.
Cодержимое технического задания
1. Разработать алгоритмы решения заданной задачи (количество алгоритмов равно количеству используемых пользовательских функций + алгоритм событийной).
2. Добавить в существующую DLL-библиотеку функции, решающие предписанные задачи. Обмен данными между подпрограммами должен осуществляться через параметры, без использования глобальных переменных. Событийная процедура должна содержать только операторы вызова пользовательских подпрограмм.
3. В ходе решения задачи своего варианта предусмотреть написание функций для создания массива из случайных чисел, создания нового из исходного и для вывода массивов в dataGridView. Для решения задачи своего варианта использовать многочисленные методматериалы, которые перечислены в пояснениях (ЭОИС).
4. Подготовить тесты для контрольного решения задачи. Показать их
использование, отобразив в отчете по заданию.
5. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
6. Осуществить запись массивов в базу данных Microsoft Access.
7. Выполнить отчет в соответствии с ГОСТ на схемы алгоритмов и согласно ГОСТ оформления отчетов по НИР.
Программный код DLL-библиотеки
void Class1::enter_mas(int* mas, int n)
{
srand(time(0));
for (int i = 0; i < n; i++)
mas[i] = (int)(rand() % 900) / 20 - 20;
}
void Class1::output_mas(int* mas, int len, DataGridView^ grid)
{
grid->ColumnCount = len;
grid->RowCount = 2;
for (int i = 0; i < len; i++)
{
grid->Rows[0]->Cells[i]->Value = "[" + i + "]";
grid->Rows[1]->Cells[i]->Value = mas[i];
}
int widht = 0;
for (int s = 0; s < grid->ColumnCount; s++)
widht += grid->Columns[s]->Width;
if (widht > 400)
grid->Width = 440;
else
grid->Width = widht;
}
int Class1::kol(int* mas, int n)
{
int p = mas[0];
for (int i = 0; i < n; i++)
if (mas[i] < p)
{
p = mas[i];
}
return p;
}
void Class1::set_mas(int* mas, int* rezmas, int n, int p, int& j)
{
j = 0;
for (int i = 0; i < n; i++)
if (mas[i] > p)
{
rezmas[j] = mas[i];
j++;
}
}
void Class1::add() {
ADOX::Catalog^ k = gcnew ADOX::CatalogClass();
try {
k->Create("Provider=Microsoft.ACE.OLEDB.16.0;Data Source=C:\\Users\\User\\source\\repos\\DBAccess.mdb");
MessageBox::Show("База данных успешно создана");
}
catch (System::Runtime::InteropServices::COMException^ situation) {
MessageBox::Show(situation->Message);
}
finally {
k = nullptr;
}
}
void Class1::add_struct() {
auto p = gcnew OleDbConnection("Provider=Microsoft.ACE.OLEDB.16.0;Data Source=C:\\Users\\User\\source\\repos\\DBAccess.mdb");
p->Open();
auto c = gcnew OleDbCommand("CREATE TABLE [Massivs] ([Номер элемента] counter, [Исходный массив] char (200), [Результирующий массив] char(200))", p);
try {
c->ExecuteNonQuery();
MessageBox::Show("Структура базы данных записана");
}
catch (Exception^ situation) {
MessageBox::Show(situation->Message);
}
p->Close();
}
void Class1::add_zap(int* arr, int* rezmas, int len, int j) {
for (int i = 0; i < len; i++) {
auto p = gcnew OleDbConnection("Provider=Microsoft.ACE.OLEDB.16.0;Data Source=C:\\Users\\User\\source\\repos\\DBAccess.mdb");
p->Open();
if (i < j) {
auto c = gcnew OleDbCommand("INSERT INTO [Massivs] (" + " [Исходный массив], [Результирующий массив]) VALUES('" + arr[i] + "','" + rezmas[i] + "')");
c->Connection = p;
c->ExecuteNonQuery();
}
else {
auto c = gcnew OleDbCommand("INSERT INTO [Massivs](" + " [Исходный массив], [Результирующий массив]) VALUES ('" + arr[i] + "', '')");
c->Connection = p;
c->ExecuteNonQuery();
}
p->Close();
}
MessageBox::Show("В таблицу 'Массивы' добавлена запись");
}