close

Вход

Забыли?

вход по аккаунту

?

Отчет по лабораторной работе №2 (3)

код для вставкиСкачать
Белорусский национальный технический университет
Факультет информационных технологий и робототехники
Кафедра "Программное обеспечение вычислительной техники и автоматизированных систем"
Отчет
по лабораторной работе №2
по дисциплине "Объектно-ориентированное программирование"
"МОДЕЛИРОВАНИЕ СТРУКТУРЫ ОБЪЕКТНО-ОРЕНТИРОВАННОЙ ПРОГРАММНОЙ СИСТЕМЫ"
ВыполнилШенец С.Ю
Мазец В.В
ПроверилРадкевич А. С.
Минск 2013
Лабораторная работа №2 "МОДЕЛИРОВАНИЕ СТРУКТУРЫ ОБЪЕКТНО-ОРЕНТИРОВАННОЙ ПРОГРАММНОЙ СИСТЕМЫ"
Цель: Получить навыки разработки структуры объектно-орентированной программы.Изучить способы использования класа List.
Постановка задачи: 1. Для заданной предметной области спроектировать программную структуру,состоящую из 3-5 классов.
2. В соответсвии с разработанной диаграммой классов выполнить программную реализацию.
3. Ввод/вывод должен быть реализован вне проектируемого класса предметной области Индивидуальное задание: Предментная область:Интернет магазин.В информационной системе хранятся данные о товарах.Клиент звонит в магазин и оставляет заказ на товар.
Система должна позволять выполнять следующие задачи.
* Ввод инфомации о товарах
* Регистрация заказа клиента на покупку определенного товара * После ввода фамиилии покупателя вывод списка заказанных им товаров * После ввода фамилии покупателя вывод суммы заказа.
Демонстрация приложения:
Рисунок 1 - Ввод данных о товарах
Рисунок 2 - Регистрация товара
Рисунок 3 - Просмотр заказанных товаров
Рисунок 4 - Сумма заказа Диаграмма классов Выводы:
В ходе выполнения лабораторной работы ознакомился с процессом моделированием стуктуры объектно-ориентированной системы.Научился моделировать диаграммы классов.Создание классов,логической структуры предметной области.
ПРИЛОЖЕНИЕ
Класс нашего главного объекта
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using System.Windows.Forms;
namespace laba2
{
public partial class Form1 : Form
{
public Magazin magazin = new Magazin();
public Form1()
{
InitializeComponent();
}
private void вводToolStripMenuItem_Click(object sender, EventArgs e)
{
textBox1.Visible = true;
textBox2.Visible = true;
label1.Visible = true;
label2.Visible = true;
button1.Visible = true;
}
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Visible = false;
textBox2.Visible = false;
label1.Visible = false;
label2.Visible = false;
button1.Visible = false;
textBox3.Visible = false;
label3.Visible = false;
label4.Visible = false;
listBox1.Visible = false;
button2.Visible = false;
textBox4.Visible = false;
label5.Visible = false;
label6.Visible = false;
listBox2.Visible = false;
textBox4.Visible = false;
button3.Visible = false;
textBox5.Visible = false;
label7.Visible = false;
listBox3.Visible = false;
button4.Visible = false;
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text != "" && textBox2.Text != "")
{
Tovar tovar = new Tovar();
tovar.CenaTovar = Convert.ToInt32(textBox1.Text);
tovar.NameTovar = textBox2.Text;
magazin.Tovars.Add(tovar);
MessageBox.Show("Данные успешно добавлены");
textBox1.Text = "";
textBox2.Text = "";
}
else
{
MessageBox.Show("Введите поля");
}
}
private void регистрацияТовараНаПокупкуToolStripMenuItem_Click(object sender, EventArgs e)
{
Form1_Load(sender, e);
listBox1.Items.Clear();
textBox3.Visible = true;
label3.Visible = true;
label4.Visible = true;
listBox1.Visible = true;
button2.Visible = true;
foreach (Tovar tovar in magazin.Tovars)
{
listBox1.Items.Add(tovar.NameTovar);
}
}
private void button2_Click(object sender, EventArgs e)
{
if (textBox3.Text != "")
{
Klient klient = new Klient();
Tovar tovar = new Tovar();
klient.FamilyPeople = textBox3.Text;
tovar.NameTovar = listBox1.SelectedItem.ToString();
foreach (Tovar tovar1 in magazin.Tovars)
{
if (tovar1.NameTovar == tovar.NameTovar)
{
tovar.CenaTovar = tovar1.CenaTovar;
}
}
bool flag = false;
foreach (Klient klientproverka in magazin.Klients)
{
if (klientproverka.FamilyPeople == textBox3.Text)
{
klientproverka.Tovars.Add(tovar);
flag = true;
break;
}
}
if (!flag)
{
klient.Tovars.Add(tovar);
magazin.Klients.Add(klient);
}
}
else
{
MessageBox.Show("Введите поля");
}
}
private void button3_Click(object sender, EventArgs e)
{
listBox2.Items.Clear();
if (textBox4.Text != "")
{
foreach (Klient tovar in magazin.Klients)
{
if (textBox4.Text == tovar.FamilyPeople)
{
for (int i = 0; i < tovar.Tovars.Count(); i++)
{
listBox2.Items.Add(tovar.Tovars[i].NameTovar);
}
}
}
}
}
private void списокЗаказанныхТоваровToolStripMenuItem_Click(object sender, EventArgs e)
{
Form1_Load(sender, e);
textBox4.Visible = true;
label5.Visible = true;
label6.Visible = true;
listBox2.Visible = true;
textBox4.Visible = true;
button3.Visible = true;
}
private void суммаЗаказаToolStripMenuItem_Click(object sender, EventArgs e)
{
Form1_Load(sender, e);
textBox5.Visible = true;
label7.Visible = true;
listBox3.Visible = true;
button4.Visible = true;
}
private void button4_Click(object sender, EventArgs e)
{
listBox3.Items.Clear();
int SummaZakaza = 0;
if (textBox5.Text != "")
{
foreach (Klient klient in magazin.Klients)
{
if (klient.FamilyPeople == textBox5.Text)
{
for (int i = 0; i < klient.Tovars.Count(); i++)
{
SummaZakaza += Convert.ToInt32(klient.Tovars[i].CenaTovar);
}
}
}
listBox3.Items.Add(SummaZakaza.ToString());
}
else
{
MessageBox.Show("Введите поля");
}
}
private void сохранитьБазуТоваровToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
saveFileDialog.Filter = "Shape files(*.tovar)|*.tovar";
saveFileDialog.RestoreDirectory = true;
if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
{
Stream myStream = saveFileDialog.OpenFile();
if ((myStream != null))
{
BinaryFormatter myBinaryFormat = new BinaryFormatter();
myBinaryFormat.Serialize(myStream, magazin.Tovars);
myBinaryFormat.Serialize(myStream, magazin.Klients);
myStream.Close();
}
string FileName = saveFileDialog.FileName;
}
}
private void открытьБазуТоваровToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
openFileDialog.Filter = "Shape files(*.tovar)|*.tovar";
if (openFileDialog.ShowDialog(this) == DialogResult.OK)
{
Stream myStream = openFileDialog.OpenFile();
if ((myStream != null))
{
BinaryFormatter myBinaryFormat = new BinaryFormatter();
magazin.Tovars = (List<Tovar>)myBinaryFormat.Deserialize(myStream);
magazin.Klients = (List<Klient>)myBinaryFormat.Deserialize(myStream);
myStream.Close();
}
string FileName = openFileDialog.FileName;
}
}
}
}
Документ
Категория
Рефераты
Просмотров
100
Размер файла
236 Кб
Теги
лабораторная работа, работе, лаба, отчет, лабораторной, лабораторная
1/--страниц
Пожаловаться на содержимое документа