Курсовая. Пояснительная записка. Курсовая работа Расчетнопояснительная записка Дисциплина Программирование и основы алгоритмизации Студент Буков А. А
Скачать 0.76 Mb.
|
Разработка программного алгоритмаПоставленная задача разбивается на несколько подзадач, то есть функций, вызов которых осуществляется независимо друг от друга. Иными словами, функции представлены в виде событий, то есть сообщений, которые возникают в различных точках исполняемого кода при выполнении определённых условий. На рисунке 1 приведена общая блок-схема программы при условии, что исходные данные при запуске программы считаны из файла. Рисунок 1 – Общая схема программы Рисунок 2 – Схема подпрограммы ввода данных из файла. Рисунок 3 – Схема подпрограммы поиска данных. Программная реализация алгоритмаРазработка приложенияИсходные данные: каталог автомобилей в автосалоне. Работа должна содержать: создание класса с описанием структуры данных (с различными типами полей); связывание с помощью компонента BindingSource созданной структуры с таблицей DataGridView; проверку правильности вводимых данных на уровне отдельной ячейки и строки в целом; использование средств XML-сериализации наборов данных для обеспечения чтения и записи данных в файл; использование средств навигации BindingNavigator, предоставляющий дополнительные средства навигации и редактирования данных; выполнение сортировки данных; выполнение поиска данных по указанному полю. Структура единицы данных: Id (уникальный номер авто, тип int), Make (марка авто, тип string), Model (модель авто, тип string), Country (страна-производитель авто, тип string), Year (год выпуска, тип int), Power (мощность двигателя, тип int), Price (цена, тип double), Photo (фото, тип Bitmap), Link (ссылка на фото, тип string). Полный исходный код программы приведен в приложении А. Инструкция по инсталляцииУстановка приложения не требуется; для запуска необходимо запустить исполняемый файл CarsShowroom.exe двойным щелчком мыши/ Тестирование разработанного программного обеспеченияВ данном разделе выполняется проверка всех разработанных функций приложения. Приводится описание действия, фрагмент кода и результат выполнения действия. Исключительные ситуации в программе не предусмотрены. Работа с DataGridViewСоздание проекта типа WindowsApplication. Добавление в форму Form2 таблицу dataGridView1, а также невизуального компонента типа BindingSource (рисунок 2). Настройка свойств формы и компонента dataGridView1: Form2: Text = CarShop, StartPosition = CenterScreen dataGridView1: Dock = Top, AutoSizeColumnsMode = Fill, DataSource = carBindingSource Рисунок 2 – Добавление BindingSource Связывание таблицы с набором данных (выполнение команды меню Project| AddClass…) Текст файла Car.cs: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Drawing; namespace CarsShowroom { public class Car { private int id; // Уникальный номер авто private string make; // Марка авто private string model; // Модель авто private Bitmap photo; // Фото авто private string country; // Страна-производитель авто private int year; // Год выпуска авто private int power; // Мощность двигателя private double price; // Цена авто private string link; // Ссылка на фото public Car() { } // id public int Id { get { return id; } set { id = value; } } // make public string Make { get { return make; } set { make = value; } } // model public string Model { get { return model; } set { model = value; } } // country public string Country { get { return country; } set { country = value; } } // power public int Power { get { return power; } set { power = value; } } // year public int Year { get { return year; } set { year = value; } } // price public double Price { get { return price; } set { price = value; } } // photo public Bitmap Photo { get { return photo; } set { photo = value; } } // link public string Link { get { return link; } set { link = value; } } } } Компиляция приложения необходима для того, чтобы информацию о созданном классе можно было использовать при настройке свойства DataSource компонента carBindingSource. В качестве значения свойства DataSource компонента carBindingSource следует указать имя только что определенного класса. Вид столбцов компонента продемонстрирован на рисунке 3, правка столбцов – на рисунке 4. Рисунок 3 – Вид столбцов таблицы Рисунок 4 – Правка столбцов таблицы Корректировка свойств столбцов: Id: Name = Id1, HeaderText = №, ReadOnly = True; Make: Name = Make1, HeaderText = Марка, ReadOnly = False; Model: Name = Model1, HeaderText = Модель, ReadOnly = False; Photo: Name = Photo1, HeaderText = Ссылка, Visible = False, ReadOnly = False; Country: Name = Country1, HeaderText = Производитель, ReadOnly = False; Year: Name = Year1, HeaderText = Год выпуска, ReadOnly = False; Power: Name = Power1, HeaderText = Мощность двигателя, ReadOnly = False; Price: Name = Price1, HeaderText = Цена, ReadOnly = False; Link: Name = Link, HeaderText = Ссылка, ReadOnly = False; |