Разработка автоматизированной информационной системы "Планета животных"
Сущность объектно-ориентированного подхода в программировании. Описание языков программирования. Использование бинарных деревьев для поиска данных, алгоритмы их обхода. Разработка Windows-приложения автоматизированной системы "Планета животных".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 16.09.2016 |
Размер файла | 3,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
openToolStripMenuItem.ShortcutKeys = Keys.Control | Keys.O;
}
RealPlanetTree tree = null;
/// <summary>
/// Списки
/// </summary>
public static List<Zoo> ZooList = new List<Zoo>();
public static List<Animal> AnimalsTree= new List<Animal>();
/// <summary>
/// Сериализация данных XML файла
/// </summary>
private void Serialize()
{
var file = new FileStream("ZooList.xml", FileMode.Create);
var ser = new XmlSerializer(typeof(List<Zoo>));
using (file) ser.Serialize(file, ZooList);
Desirealize();
Activate();
}
/// <summary>
/// Открытие (Запуск десерилизации)
/// </summary>
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
groupBox1.Visible = true;
groupBox2.Visible = true;
перегрузкиОператоровToolStripMenuItem.Enabled = true;
ZooToolStripMenuItem.Enabled = true;
Desirealize();
}
}
/// <summary>
/// Десерилизация данных из XML файла и обновление формы
/// </summary>
private void Desirealize()
{
ZooList.Clear();
AnimalsTree.Clear();
AnimData.RowCount = 0;
StreamReader file = new StreamReader(openFileDialog1.FileName);
var serializer = new XmlSerializer(typeof(List<Zoo>));
using (file)
{
var obj = serializer.Deserialize(file);
ZooList = obj as List<Zoo>;
}
foreach (Zoo zoo in ZooList)
{
foreach (var animal in zoo.Animal)
{ AnimalsTree.Add(animal); }
}
tree = new RealPlanetTree(AnimalsTree);
UpdateTree();
UpdateForm();
}
/// <summary>
/// Обновления содержимого формы
/// </summary>
private void UpdateForm()
{
int number = 0;
foreach (Zoo zoo in ZooList)
{
foreach (var animal in zoo.Animal)
{
AnimData.Rows.Add();
animal.WriteToTable(AnimData.Rows[number]);
AnimData[5, number].Value = zoo.ZName;
number++;
}
}
}
/// <summary>
/// Обновление дерева
/// </summary>
public void UpdateTree()
{
treeView1.Nodes.Clear();
TreeNode treeNode = tree.Root.ConvertToTreeNode();
treeView1.Nodes.Add(treeNode);
treeView1.ExpandAll();
}
/// <summary>
/// Добавление зоопарка и животного
/// </summary>
public void button1_Click(object sender, EventArgs e)
{
var f = new AddAnimalWindow();
f.Show();
f.Closed += (o, args) => Serialize();
}
/// <summary>
/// Двойной клик по животному в таблице
/// </summary>
private void AnimData_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
{
var index = e.RowIndex;
var number = AnimData[0, index].Value;
foreach (var zoo in ZooList)
foreach(var animal in zoo.Animal)
if (animal.AnimName == (string)number)
{
var k = new AboutZoo(animal,zoo);
k.Show();
}
}
/// <summary>
/// Удаление животного
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Delete_Click(object sender, EventArgs e)
{
var selectAnim = AnimData.SelectedRows[0];
var idAnim = Convert.ToInt32(selectAnim.Cells[3].Value);
var number = selectAnim.Cells[5].Value.ToString();
foreach (var zoo in ZooList)
{
if (zoo.ZName == number)
{
foreach (var animal in zoo.Animal)
if (animal.SizeOfPopul == idAnim)
{
zoo.Animal.Remove(animal);
AnimalsTree.Remove(animal);
tree.AnimalsTree.Remove(animal);
break;
}
break;
}
}
UpdateTree();
Serialize();
}
/// <summary>
/// Получение информации о зоопарках
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void InfZooToolStripMenuItem_Click(object sender, EventArgs e)
{
var m = new DelZooWindow();
m.Show();
m.Closed += (o, args) => Serialize();
}
/// <summary>
/// Замена животного
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ReplaceButton_Click(object sender, EventArgs e)
{
var v = new ReplaceAnim();
v.Show();
v.Closed += (o, args) => Serialize();
}
/// <summary>
/// Выход
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click_1(object sender, EventArgs e)
{
Close();
}
/// <summary>
/// Выход
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
Close();
}
/// <summary>
/// Метод увеличения веса
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ImproveWeight_Click(object sender, EventArgs e)
{
ChooseForm chooseForm = new ChooseForm();
chooseForm.SetAnimals(tree.AnimalsTree);
if (chooseForm.ShowDialog() == DialogResult.OK)
{
Animal animal = chooseForm.SelectedAnimal;
int index = tree.FindAnimalInList(animal.AnimName);
tree.Animals[index]++;
tree.Change(tree.Animals[index]);
UpdateForm();
}
}
/// <summary>
/// Метод уменьшение веса
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void LessWeight_Click(object sender, EventArgs e)
{
ChooseForm chooseForm = new ChooseForm();
chooseForm.SetAnimals(tree.Animals);
if (chooseForm.ShowDialog() == DialogResult.OK)
{
Animal animal = chooseForm.SelectedAnimal;
int index = tree.FindAnimalInList(animal.AnimName);
tree.Animals[index]--;
tree.Change(tree.Animals[index]);
UpdateForm();
}
}
/// <summary>
/// Перегрузка операторов отношения
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Overload_Click(object sender, EventArgs e)
{
ReloadAtitudeOperator relodeOperator = new ReloadAtitudeOperator();
relodeOperator.SetAnimals(tree.Animals);
if (relodeOperator.ShowDialog() == DialogResult.OK)
{
if (relodeOperator.F == 0)
MessageBox.Show("Вес первого животного больше веса второго!");
if (relodeOperator.F == 1)
MessageBox.Show("Вес второго животного больше веса первого!");
if(relodeOperator.F == 2)
MessageBox.Show("У животных одинаковый вес!");
}
}
/// <summary>
/// Нахождение животного с максимальным весом
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MaxWeight_Click(object sender, EventArgs e)
{
int MaxIndex = 0;
AnimData.Rows[MaxIndex].Selected = false;
Animal Max = AnimalsTree[0];
for (int i = 1; i < AnimalsTree.Count; i++)
{
if (Max != AnimalsTree[i])
if (Max < AnimalsTree[i])
{
MaxIndex = i;
Max = AnimalsTree[i];
}
}
AnimData.Rows[MaxIndex].Selected = true;
AnimData.FirstDisplayedScrollingRowIndex = MaxIndex;
string message = "Животное: " + Max.AnimName + "\n" + "Вес: " + Max.Weight;
MessageBox.Show(message);
}
/// <summary>
/// Поиск животного по ключу
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
SearchEnter searchEnter = new SearchEnter();
if (searchEnter.ShowDialog() == DialogResult.OK)
{
Animal animal = tree.Search(searchEnter.NameAnimal);
if (searchEnter.NameAnimal != null && animal != null)
MessageBox.Show("Животное найдено: " + "\n" + " Наименование животного: " + animal.AnimName + "\n Вид животного: " + animal.AnimSpec + "\n Вес животного: " + animal.Weight + " \n Возраст: " + animal.Age + " \n Личный номер: " + animal.SizeOfPopul);
else
MessageBox.Show("Нет таких животных");
}
}
/// <summary>
/// Получение информации об авторе
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void обАвтореToolStripMenuItem_Click(object sender, EventArgs e)
{
AboutAthor about = new AboutAthor();
about.Show();
}
}
}
Г.2 RealPlanetNode.cs
namespace CourseProjektKovaleva
{
class RealPlanetNode
{
/// <summary>
/// Поля класса RealPlanetNode
/// </summary>
private string key;// ключ узла
private Animal nodeValue;//значение узла
private RealPlanetNode parent;//родитель
private RealPlanetNode left;
private RealPlanetNode right;
public bool visited = false;
/// <summary>
/// Конструктор с параметрами
/// </summary>
/// <param name="animal"></param>
public RealPlanetNode(Animal animal)
{
this.key = animal.AnimName;
this.nodeValue = animal;
this.parent = null;
this.left = null;
this.right = null;
}
/// <summary>
/// Преобразуем дерево RealPlanetNode в TreeNode для отображения в treeview1 на форме
/// </summary>
/// <returns></returns>
public TreeNode ConvertToTreeNode()
{
TreeNode root = new TreeNode("Real Planet");
BuildTreeNode(this, ref root);
return root;
}
/// <summary>
/// Строим дерево
/// </summary>
/// <param name="node"></param>
/// <param name="parent"></param>
private void BuildTreeNode(RealPlanetNode node, ref TreeNode parent)
{
TreeNode treeNode = new TreeNode(node.Key);
parent.Nodes.Add(treeNode);
if (node.LeftNode != null)
{
BuildTreeNode(node.LeftNode, ref treeNode);
}
if (node.RightNode != null)
{
BuildTreeNode(node.RightNode, ref treeNode);
}
}
/// <summary>
/// Свойства для доступа к key
/// </summary>
public string Key
{
get { return key; }
set { key = value; }
}
/// <summary>
/// Свойства для доступа к nodeValue
/// </summary>
public Animal Value
{
get { return nodeValue; }
set { nodeValue = value; }
}
/// <summary>
/// Свойства для доступа parent
/// </summary>
public RealPlanetNode ParentNode
{
get { return parent; }
set { parent = value; }
}
/// <summary>
/// Свойства для доступа left
/// </summary>
public RealPlanetNode LeftNode
{
get { return left; }
set { left = value; }
}
/// <summary>
/// Свойства для доступа right
/// </summary>
public RealPlanetNode RightNode
{
get { return right; }
set { right = value; }
}
/// <summary>
/// Перегрузка оператора отношения
/// </summary>
/// <param name="node1"></param>
/// <param name="node2"></param>
/// <returns></returns>
public static bool operator >(RealPlanetNode node1, RealPlanetNode node2)
{
int key1 = node1.Key.GetHashCode();
int key2 = node2.Key.GetHashCode();
if (key1 > key2)
return true;
else
return false;
}
/// <summary>
/// Перегрузка оператора отношения
/// </summary>
/// <param name="node1"></param>
/// <param name="node2"></param>
/// <returns></returns>
public static bool operator <(RealPlanetNode node1, RealPlanetNode node2)
{
int key1 = node1.Key.GetHashCode();
int key2 = node2.Key.GetHashCode();
if (key1 < key2)
return true;
else
return false;
}
}
}
Г.3 RealPlanetTree.cs
namespace CourseProjektKovaleva
{
class RealPlanetTree
{
public List<Animal> AnimalsTree;//список значений(животные)
public RealPlanetNode root;//корневой узел(дерево)
/// <summary>
/// Конструктор с параметрами
/// </summary>
/// <param name="animals"></param>
public RealPlanetTree(List<Animal> animals)
{
AnimalsTree = animals;
root = new RealPlanetNode(AnimalsTree[0]);
for (int i = 1; i < AnimalsTree.Count; i++)
Insert(AnimalsTree[i]);
}
/// <summary>
/// Свойства для доступа к полю AnimalsTree
/// </summary>
public List<Animal> Animals
{
get { return AnimalsTree; }
}
/// <summary>
/// Свойства для доступа к полю root
/// </summary>
public RealPlanetNode Root
{
get { return root; }
}
/// <summary>
/// Поиск индекса животного в списке
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public int FindAnimalInList(string key)
{
for (int i = 1; i < AnimalsTree.Count; i++)
if (AnimalsTree[i].AnimName == key)
{
return i;
}
return 0;
}
/// <summary>
///
/// </summary>
/// <param name="node"></param>
private void SetFalseVisited(RealPlanetNode node)
{
node.visited = false;
if (node.LeftNode != null) SetFalseVisited(node.LeftNode);
if (node.RightNode != null) SetFalseVisited(node.RightNode);
}
/// <summary>
/// Вставка узла в дерево
/// </summary>
/// <param name="animal"></param>
public void Insert(Animal animal)
{
RealPlanetNode newNode = new RealPlanetNode(animal);//узел, который нужно вставить в дерево
Stack<RealPlanetNode> stack = new Stack<RealPlanetNode>();//пустой стек
SetFalseVisited(root);
bool isInserted = false;
stack.Push(root);//записываем корневой узел в стек
while (stack.Count != 0 && isInserted == false)
{
RealPlanetNode currNode = stack.Peek();//берем из стека(не удаляем)
if (currNode.LeftNode != null && currNode.LeftNode.visited == false)//спускаемся влево
{
stack.Push(currNode.LeftNode);
}
else
{
if (currNode.RightNode != null && currNode.RightNode.visited == false)//спускаемся вправо
{
stack.Push(currNode.RightNode);
}
else
{
//поднимаемся по дереву
currNode.visited = true;
stack.Pop();//удаляем из стека текущий узел
if (newNode > currNode && currNode.RightNode == null)//вставляем узел вправо
{
if (currNode.ParentNode == null || (currNode.ParentNode != null && currNode == currNode.ParentNode.LeftNode && currNode.ParentNode > newNode))//в левой ветке
isInserted = InsertRight(currNode, newNode);
else
if (currNode.ParentNode == null || (currNode.ParentNode != null && currNode == currNode.ParentNode.RightNode && currNode.ParentNode < newNode))//в правой ветке
isInserted = InsertRight(currNode, newNode);
}
if (newNode < currNode && currNode.LeftNode == null && isInserted == false)//вставляем узел влево
{
if (currNode.ParentNode == null || (currNode.ParentNode != null && currNode == currNode.ParentNode.LeftNode && currNode.ParentNode > newNode))//в левой ветке
isInserted = InsertLeft(currNode, newNode);
else
if (currNode.ParentNode == null || (currNode.ParentNode != null && currNode == currNode.ParentNode.RightNode && currNode.ParentNode < newNode))//в правой ветке
isInserted = InsertLeft(currNode, newNode);
}
}
}
}
}
/// <summary>
/// Вставка левое поддерево
/// </summary>
/// <param name="node"></param>
/// <param name="newNode"></param>
/// <returns></returns>
private bool InsertLeft(RealPlanetNode node, RealPlanetNode newNode)
{
node.LeftNode = newNode;
newNode.ParentNode = node;
return true;
}
/// <summary>
/// Вставка правое поддерево
/// </summary>
/// <param name="node"></param>
/// <param name="newNode"></param>
/// <returns></returns>
private bool InsertRight(RealPlanetNode node, RealPlanetNode newNode)
{
node.RightNode = newNode;
newNode.ParentNode = node;
return true;
}
/// <summary>
/// Изменение узла дерева
/// </summary>
/// <param name="animal"></param>
public void Change(Animal animal)
{
RealPlanetNode changeNode = new RealPlanetNode(animal);
Stack<RealPlanetNode> stack = new Stack<RealPlanetNode>();
SetFalseVisited(root);
bool isChanged = false;
stack.Push(root);
while (stack.Count != 0 && isChanged == false)
{
RealPlanetNode currNode = stack.Peek();
if (currNode.LeftNode != null && currNode.LeftNode.visited == false)//спускаемся влево
{
stack.Push(currNode.LeftNode);
}
else
{
if (currNode.RightNode != null && currNode.RightNode.visited == false)//спускаемся вправо
{
stack.Push(currNode.RightNode);
}
else
{
//поднимаемся по дереву
currNode.visited = true;
stack.Pop();
if (currNode.Key == changeNode.Key)//нашли узел
{
currNode = changeNode;//изменили узел
isChanged = true;
}
}
}
}
}
/// <summary>
/// Удаление узла дерева
/// </summary>
/// <param name="animal"></param>
public void Remove(Animal animal)
{
RealPlanetNode newNode = new RealPlanetNode(animal);
Stack<RealPlanetNode> stack = new Stack<RealPlanetNode>();
SetFalseVisited(root);
bool isRemoved = false;
stack.Push(root);
while (stack.Count != 0 && isRemoved == false)
{
RealPlanetNode currNode = stack.Peek();
if (currNode.LeftNode != null && currNode.LeftNode.visited == false)//спускаемся влево(заполняем стек)
{
stack.Push(currNode.LeftNode);
}
else
{
if (currNode.RightNode != null && currNode.RightNode.visited == false)//спускаемся вправо(заполняем стек)
{
stack.Push(currNode.RightNode);
}
else
{
//поднимаемся
currNode.visited = true;
stack.Pop();
if (currNode.Key == newNode.Key) //нашли нужный узел
{
if (currNode.LeftNode == null && currNode.RightNode == null && currNode.ParentNode != null)//если нет потомков
{
if (currNode == currNode.ParentNode.LeftNode)
currNode.ParentNode.LeftNode = null;
else
currNode.ParentNode.RightNode = null;
isRemoved = true;
}
else
{
if (currNode.LeftNode != null && currNode.RightNode == null && currNode.ParentNode != null)//если есть только левый потомок
{
if (currNode == currNode.ParentNode.LeftNode)
currNode.ParentNode.LeftNode = currNode.LeftNode;
else
currNode.ParentNode.RightNode = currNode.LeftNode;
isRemoved = true;
}
else
{
if (currNode.LeftNode == null && currNode.RightNode != null && currNode.ParentNode != null)//если есть только правый потомок
{
if (currNode == currNode.ParentNode.LeftNode)
currNode.ParentNode.LeftNode = currNode.RightNode;
else
currNode.ParentNode.RightNode = currNode.RightNode;
isRemoved = true;
}
else
{
if (currNode.LeftNode != null && currNode.RightNode != null && currNode.ParentNode != null)//если есть 2 потомка
{
if (currNode == currNode.ParentNode.LeftNode)
{
RealPlanetNode rightNode = currNode.RightNode;
currNode.ParentNode.LeftNode = currNode.LeftNode;
RealPlanetNode node = GetEndRightNode(currNode.ParentNode.LeftNode);
node.RightNode = rightNode;
}
else
{
RealPlanetNode rightNode = currNode.RightNode;
currNode.ParentNode.RightNode = currNode.LeftNode;
RealPlanetNode node = GetEndRightNode(currNode.ParentNode.RightNode);
node.RightNode = rightNode;
}
isRemoved = true;
}
}
}
}
}
}
}
}
}
/// <summary>
/// Находим самый правый узел
/// </summary>
/// <param name="node"></param>
/// <returns></returns>
private RealPlanetNode GetEndRightNode(RealPlanetNode node)
{
if (node.RightNode != null)
return GetEndRightNode(node.RightNode);
else
return node;
}
/// <summary>
/// Поиск по ключу
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public Animal Search(string name)
{
Stack<RealPlanetNode> stack = new Stack<RealPlanetNode>();
SetFalseVisited(root);
bool isChanged = false;
stack.Push(root);
while (stack.Count != 0 && isChanged == false)
{
RealPlanetNode currNode = stack.Peek();
if (currNode.LeftNode != null && currNode.LeftNode.visited == false)//спускаемся влево
{
stack.Push(currNode.LeftNode);
}
else
{
if (currNode.RightNode != null && currNode.RightNode.visited == false)//спускаемся вправо
{
stack.Push(currNode.RightNode);
}
else
{
//поднимаемся по дереву
currNode.visited = true;
stack.Pop();
if (currNode.Key.StartsWith(name) == true)//нашли узел
{
return currNode.Value;
}
}
}
}
return null;
}
}
}
Г.4 Zoo.cs
namespace CourseProjektKovaleva
{
[Serializable]
public class Zoo
{
/// <summary>
/// Поля класса Zoo
/// </summary>
public string ZName { get; set; }
public int ZSquare { get; set; }
public string ZTown { get; set; }
public string ZCountry { get; set; }
/// <summary>
/// Список
/// </summary>
public List<Animal> Animal = new List<Animal>();
/// <summary>
/// Метод для вывода данных в таблицу
/// </summary>
/// <param name="data"></param>
/// <param name="number"></param>
public void WriteToTable(DataGridViewRow data, bool number)
{
data.Cells[0].Value = ZName;
data.Cells[1].Value = ZSquare;
data.Cells[2].Value = ZTown;
data.Cells[3].Value = ZCountry;
if (number)
data.Cells[4].Value = Animal.Count;
}
}
}
Г.5 Animal.cs
namespace CourseProjektKovaleva
{
[Serializable]
public class Animal
{
/// <summary>
/// Перечисление
/// </summary>
public enum Species
{
Млекопитающее,
Птицы,
Рыбы,
Пресмыкающиеся,
Земноводные,
Паукообразные,
Членистоногие
};
/// <summary>
/// Поля класса Animal
/// </summary>
public string AnimName { get; set; }
public Species AnimSpec { get; set; }
public int Weight { get; set; }
public int SizeOfPopul { get; set; }
public int Age { get; set; }
/// <summary>
/// Метод для записи в значений в таблицу
/// </summary>
/// <param name="data"></param>
public void WriteToTable(DataGridViewRow data)
{
data.Cells[0].Value = AnimName;
data.Cells[1].Value = Age;
data.Cells[2].Value = Weight;
data.Cells[3].Value = SizeOfPopul;
data.Cells[4].Value = AnimSpec;
}
/// <summary>
/// Инкремент веса
/// </summary>
/// <param name="animal"></param>
/// <returns></returns>
public static Animal operator ++(Animal animal)
{
animal.Weight++;
return animal;
}
/// <summary>
/// Декремент веса
/// </summary>
/// <param name="animal"></param>
/// <returns></returns>
public static Animal operator --(Animal animal)
{
animal.Weight--;
return animal;
}
/// <summary>
/// Перегрузка операторов отношения
/// </summary>
/// <param name="animal1"></param>
/// <param name="animal2"></param>
/// <returns></returns>
public static bool operator >(Animal animal1, Animal animal2)
{
if (animal1.Weight > animal2.Weight)
return true;
else
return false;
}
/// <summary>
/// Перегрузка операторов отношения
/// </summary>
/// <param name="animal1"></param>
/// <param name="animal2"></param>
/// <returns></returns>
public static bool operator <(Animal animal1, Animal animal2)
{
if (animal1.Weight < animal2.Weight)
return true;
else
return false;
}
}
}
Размещено на Allbest.ru
Подобные документы
Объектно-ориентированное программирование как новый подход к созданию приложений. Разработка Windows-приложения для поиска информации в хэш-таблице. Анализ использования хеширования для поиска данных и линейного зондирования для разрешения конфликтов.
курсовая работа [915,5 K], добавлен 06.03.2016Использование бинарных деревьев для поиска данных. Схемы алгоритмов работы с бинарным деревом. Проектирование алгоритмов и программ. Структура программного комплекса. Язык С# как средство для разработки автоматизированной информационной системы "Адрес".
курсовая работа [914,9 K], добавлен 14.11.2013Анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода. Разработка оконного приложения и описание информационной модели предметной области. Описание разработанных процедур С++ и результатов тестирования приложения.
курсовая работа [355,9 K], добавлен 18.06.2013Анализ предметной области. Разработка информационной системы для регистратуры поликлиники. Построение диаграмм и моделей с использование объектно-ориентированного подхода. Формы, таблицы, отчеты и запросы. Создание, редактирование и обработка данных.
курсовая работа [2,7 M], добавлен 04.12.2015Понятие автоматизированной информационной системы. Построение функционально-ориентированных моделей "как есть" (as-is) и "как должно быть" (to-be). Описание базы данных, разработка приложения, руководство пользователя. Счет-фактура, платежное поручение.
дипломная работа [3,5 M], добавлен 23.04.2013Общая характеристика объектно-ориентированного подхода в программировании, его основные свойства и принципы. Разработка программы для автоматизация деятельности кафе на основе объектно-ориентированного подхода, проектирования и реализации схемы данных.
курсовая работа [1,2 M], добавлен 22.01.2012Разработка программного обеспечения в объектно-ориентированной среде визуального программирования Microsoft Office VBA, реализующего базу данных "Энциклопедия домашних животных". Выбор языка программирования. Реализация программных модулей в блоках.
курсовая работа [3,3 M], добавлен 11.01.2013Разработка автоматизированной информационной системы для политехнического колледжа "Радиополитехникум" СПбПУ Петра Великого. Обзор средств программирования. Описание языка Delphi, приложения Microsoft Access. Определение затрат на проектирования.
дипломная работа [2,1 M], добавлен 05.06.2016Выбор, обоснование и особенности работы СУБД. Характеристика языков программирования. Разработка структурной и функциональной модели информационной системы аптеки. Проектирование программной среды АИС и ее интерфейса. Построение модели базы данных.
курсовая работа [442,3 K], добавлен 21.04.2012Требования к программному изделию и параметрам технических средств. Описание пользовательского интерфейса для автоматизированной системы учёта товаров на оптовом складе. Обоснование выбора языков программирования, организации входных и выходных данных.
дипломная работа [3,4 M], добавлен 02.04.2013