Лабораторная работа №7
Разработка технического задания и формирование массивов в соответствии с некоторым критерием. Запись массивов в Базу Данных в программе Microsoft Access 2019.
Оглавление
Введение 3
1 Основания для разработки 3
2 Назначение разработки 3
3 Требования к программе 3
3.1 Требования к функциональным характеристикам 3
3.2 Требования к надежности 4
3.2.1 Требования к обеспечению надежного функционирования программы 4
3.2.2 Время восстановления после отказа 4
3.2.3 Отказы из-за некорректных действий оператора 4
3 Условия эксплуатации 5
3.1 Климатические условия эксплуатации 5
3.2 Требования к квалификации и численности персонала 5
3.3 Требования к составу и параметрам технических средств 5
3.4 Требования к информационной и программной совместимости 5
3.5 Требования к транспортировке и хранению 5
3.6 Специальные требования 5
4 Требования к программной документации 5
5 Технико-экономические показатели 5
6 Стадии и этапы разработки 5
7 Разработка блок-схемы 6
8 Код программы 9
9 Тестирование программного продукта 13
Список использованных источников 15
Программный продукт предназначен для поиска количества элементов в массиве, для которых последняя цифра в шестнадцатеричной записи и в восьмеричной записи одинаковая, и замены всех четных элементов массива на это количество, а также записи массивов в Базу Данных в программе Microsoft Access 2019.
Основанием для разработки является задание №7, выданное 12.11.2020 доцентом кафедры «Информатика» Гуриковым С.Р.
Задание №7:
Дан динамический целочисленный массив. Элементы массива могут принимать целые значения от 0 до 1000 включительно. Необходимо найти количество элементов в этом массиве, для которых последняя цифра в шестнадцатеричной записи и в восьмеричной записи одинаковая, и заменить все четные элементы массива на это количество. Гарантируется, что такой элемент есть.
Разработать программный продукт, предназначенный для поиска количества элементов в массиве, для которых последняя цифра в шестнадцатеричной записи и в восьмеричной записи одинаковая, и замены всех четных элементов массива на это количество, а также создание Базы Данных и записи массивов в нее в программе Microsoft Access 2019.
Пользователем программы выступает человек, которому нужно найти количество элементов в массиве, для которых последняя цифра в шестнадцатеричной записи и в восьмеричной записи одинаковая, и заменить все четные элементы массива на это количество, и записать исходный и результирующий массив в Базу Данных в программе Microsoft Access 2019. Имеется возможность использования DLL-библиотек.
Программный продукт «Работа с одномерными массивами» должен обеспечить выполнение следующих функций:
Вывода данных
Переход на главную страницу
Создание DLL библиотеки ClassLibrary4, в которой должны находится следующие методы и функции:
1) Функция void Gen(int n, params int[] masPrt), предназначенный для генерации элементов исходного массива.
2) Функция void Kall(int n, ref int k, TextBox t, int[] masPrt), предназначенная для поиска количества элементов в массиве, для которых последняя цифра в шестнадцатеричной записи и в восьмеричной записи одинаковая.
3) Метод void Vivod(int n, DataGridView grid, params int[] rezmas), предназначенная для вывода массива в элемент управления dataGridView.
Функция, которая создает результирующий массив void NewMass(int n, int k, int[] masPrt, params int[] rezmas).
Метод, который формирует базу данных void add().
Метод, создающий таблицу и ее структуру void add_struct().
Метод, который заполняет БД void add_zap(ref int[] mas, ref int[] rezmas, int len).
Разработка событийной функции, в которой будут осуществляться вызовы функции void Gen(int n, params int[] masPrt), void Kall(int n, ref int k, TextBox t, int[] masPrt), void NewMass(int n, int k, int[] masPrt, params int[] rezmas), void add(), void add_struct(), void add_zap(ref int[] mas, ref int[] rezmas, int len) и void Vivod(int n, DataGridView grid, params int[] masPrt).
Для корректной работы продукта следует реализовать окно с просьбой ввести количество элементов массива Interaction.InputBox("Введите количество элементов массива = ", "Введите значение", "", -1).
Надежное (устойчивое) функционирование программы должно быть обеспечено выполнением пользователем совокупности организационно-технических мероприятий, перечень которых приведен ниже:
1) организацией бесперебойного питания технических средств;
2) использованием лицензионного программного обеспечения;
3) регулярным выполнением требований ГОСТ 51188-98. Защита информации. Испытания программных средств на наличие компьютерных вирусов;
4) Использование программы в некоммерческих целях
Также программное обеспечение должно иметь:
защиту данных
реализацию всех методов, описанных выше
Время восстановления после отказа, вызванного сбоем электропитания технических средств (иными внешними факторами), не фатальным сбоем (не крахом) операционной системы, не должно превышать 30-ти минут при условии соблюдения условий эксплуатации технических и программных средств.
Время восстановления после отказа, вызванного неисправностью технических средств, фатальным сбоем (крахом) операционной системы, не должно превышать времени, требуемого на устранение неисправностей технических средств и переустановки программных средств.
3.2.3 Отказы из-за некорректных действий оператора
Отказы программы возможны вследствие некорректных действий оператора (пользователя) при взаимодействии с операционной системой. Во избежание возникновения отказов программы по указанной выше причине следует обеспечить работу конечного пользователя без предоставления ему административных привилегий и использовать метод корректировки данных.
3 Условия эксплуатации
3.1 Климатические условия эксплуатации
Климатические условия эксплуатации, при которых должны обеспечиваться заданные характеристики, должны удовлетворять требованиям, предъявляемым к техническим средствам в части условий их эксплуатации, то есть программный продукт должен успешно функционировать при следующих параметрах:
1) температуре 0-40ºС
2) давлении равном 725-749 мм.рт.ст.
3) комфортной влажности воздуха для техники 40-60%
3.2 Требования к квалификации и численности персонала
Минимальное количество персонала, требуемого для работы программы, должно составлять не менее 1 штатной единиц — конечного пользователя программы.
3.3 Требования к составу и параметрам технических средств
Системные требования для разрабатываемого ПП следующие:
1) процессор Pentium-2.0Hz, не менее
2) оперативная память объемом, 1Гигабайт, не менее
3) 64-разрядная операционная система, процессор х64
4) Visual Studio 2010 - 2019
5) Не менее двух ядер в процессоре
3.4 Требования к информационной и программной совместимости
Программа должна работать в операционных системах начиная с Windows XP и до Windows 10.
3.5 Требования к транспортировке и хранению
Программный продукт представлен на электронном носителе, программная документация поставляется в электронном виде.
3.6 Специальные требования
Специальные требования к данной программе не предъявляются.
4 Требования к программной документации
Предварительный состав программной документации, состав программной документации должен включать в себя:
1) техническое задание;
2) программу и методики испытаний;
3) руководство оператора;
5 Технико-экономические показатели
Экономические преимущества разработки, ориентировочная экономическая эффективность не рассчитываются. Аналогия не проводится ввиду уникальности предъявляемых требований к разработке.
6 Стадии и этапы разработки
Стадии и этапы разработки представлены на таблице 1.
Таблица 1 – Стадии и этапы разработки
Номер этапа |
Название этапа |
Срок реализации |
Отчетность |
1 |
Разработка технического задания |
12 ноября 2020 |
Реализация технического задания |
2 |
Разработка ядра программного продукта |
13-14 ноября 2020 |
Реализация программного продукта, описание внутренних параметров ввода и вывода данных |
3 |
Разработка алгоритмов, методов и их реализация |
14-15 ноября 2020 |
Описание алгоритмов и методов, создание программной модели, реализующей методы и алгоритмы |
4 |
Тестирование программного продукта и составление программной документации |
16-17 ноября 2020 |
Тесты, документация программного продукта |
5 |
Подготовка и передача программного продукта |
17-18 ноября 2020 |
Выполнена работа по подготовке и передаче программного продукта и программной документации в эксплуатацию |
Разработаем блок-схему функции Gen(int n, params int[] masPrt) и представим на рисунке 1.
Рисунок 1 – Блок схемы функции Gen()
Разработаем блок-схему функции Kall(int n, ref int k, TextBox t, int[] masPrt) и представим на рисунке 2.
Рисунок 2 – Блок-схема функции Kall()
Разработаем блок-схему метода Vivod(int n, int k, DataGridView grid, params int[] rezmas) и представим на рисунке 3.
Рисунок 3 – Блок-схема функции Vivod()
Разработаем блок-схему функции, которая создает результирующий массив void NewMass(int n, int k, int[] masPrt, params int[] rezmas) и представим на рисунке 4.
Рисунок 4 – Блок-схема функции NewMass()
Разработаем блок-схему событийного метода и представим на рисунке 5.
Рисунок 5 – Блок-схема событийной функции
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Второй_курс
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 f = new Form2();
this.Hide();
f.ShowDialog();
}
private void button2_Click(object sender, EventArgs e)
{
Form4 f = new Form4();
this.Hide();
f.ShowDialog();
}
private void button3_Click(object sender, EventArgs e)
{
Form6 f = new Form6();
this.Hide();
f.ShowDialog();
}
private void button4_Click(object sender, EventArgs e)
{
Form11 f = new Form11();
this.Hide();
f.ShowDialog();
}
private void button5_Click(object sender, EventArgs e)
{
Form26 f = new Form26();
this.Hide();
f.ShowDialog();
}
private void button6_Click(object sender, EventArgs e)
{
Form27 f = new Form27();
this.Hide();
f.ShowDialog();
}
}
}
Form27.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;