
- •Индивидуальное задание
- •Содержимое технического задания
- •Схемы алгоритмов
- •Функция ввода данных
- •Программный код библиотеки
- •Программный код событийной процедуры
- •Результаты работы программы
- •Результаты работы программы
- •Список использованных источников
- •Лабораторная работа №2 «Одномерные массивы»
- •Задание
- •Cодержимое технического задания
- •Функция генерации динамического массива
- •Программный код dll-библиотеки
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №3
- •Задание
- •Cодержимое технического задания
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №4
- •Задание
- •Cодержимое технического задания
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №5
- •5. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
- •6. Выполнить отчет в соответствии с гост на схемы алгоритмов и согласно гост оформления отчетов по нир.
- •Схемы алгоритмов.
- •Программный код dll-библиотеки
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №6
- •4. Подготовить тесты для контрольного решения задачи. Показать их
- •5. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
- •Программный код событийной процедуры
- •Список использованных источников
- •Лабораторная работа №7
- •Индивидуальное задание
- •Содержание тз
- •4. Выполнить проект и получить результаты, которые отобразить в виде рисунков при написании отчета по заданию.
- •5. Выполнить отчет в соответствии с гост на схемы алгоритмов и согласно гост оформления отчетов по нир.
- •3 Разработка схем алгоритмов
- •4 Разработка программного кода
- •5 Результаты выполнения проекта
Функция генерации динамического массива
Схема алгоритма вывода массива в dataGridView показана на рисунке 2.
Схема алгоритма вывода массива в dataGridView
На рисунке 3 представлена блок схема функции, находящей минимальный отрицательный элемент.
Рисунок 3 – функция, находящая минимальный отрицательный элемент.
Схема функции, который формирует новый массив, из тех элементов исходного массива, значения которых больше найденного минимального элемента массива, показана на рисунке 4.
Рисунок 4 – Схема функции формирования нового массива
Программный код dll-библиотеки
#include "pch.h"
#include <cstdlib>
#include <time.h>
#include "dllforlab4.h"
#include <cmath>
#include <math.h>
using namespace System;
using namespace System::Windows::Forms;
namespace dllforlab4 {
double Class1::Vvod(TextBox^ t)
{
return Convert::ToDouble(t->Text);
}
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++;
}
}
Программный код событийной процедуры
#pragma endregion
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
int p, j = 0;
String^ g = Interaction::InputBox("Введите количество элементов в массиве", "Ввод", "", -1, -1);
int n = Convert::ToInt16(g);
int* mas = new int[n];
int* rezmas = new int[n];
Class1::enter_mas(mas, n);
Class1::output_mas(mas, n, dataGridView1);
p = Class1::kol(mas, n);
MessageBox::Show("Минимальный элемент массива " + Convert::ToString(p), "", MessageBoxButtons::OK, MessageBoxIcon::Information);
label1->Text = "Минимальный элемент массива " + Convert::ToString(p);
Class1::set_mas(mas, rezmas, n, p, j);
Class1::output_mas(rezmas, j, dataGridView2);
delete[] mas;
delete[] rezmas;
}
private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
Application::Exit();
Диалоговое окно ввода количества элементов в массиве представлено на рисунке 5.
Рисунок 5 – Диалоговое окно ввода количества элементов в массиве
Результат работы программы представлен на рисунке 6.
Рисунок 6 – Результат работы программы