Объектно-ориентированное программирование
Разработка программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С средствами Microsoft Visual Studio 2010. Построение алгоритма реализации. Класс программы, инструкция по использованию программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 26.12.2013 |
Размер файла | 1,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
- Введение
- 1. Теоретический анализ
- 1.1 Постановка задачи
- 1.2 Построение алгоритма реализации
- 1.3 Определение математического аппарата, применение которого необходимо в задаче
- 2. Реализация основного класса программы
- 2.1 Добавление шара
- 2.2 Редактирование параметров шара
- 2.3 Удаление шара
- 2.4 Перемещение шара
- 2.5 Сохранение состояния программы
- 2.6 Загрузка состояния программы
- 2.7 Работа с пунктом "О программе"
- 2.8 Реализация диалогового окна работы с шаром
- 2.9 Инструкция по использованию программы
- Заключение
- Список литературы
Введение
Объектно-ориентированное, или объектное, программирование (ООП) - парадигма программирования, в которой основными концепциями являются понятия объектов и классов. Данная концепция в настоящее время является ведущей в области программирования. Количество прикладных языков программирования, реализующих объектно-ориентированную парадигму, является наибольшим по отношению к другим парадигмам. Данный подход реализован в таких языках программирования как С, C++, Object Pascal, Java, С# и другие.
C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. В настоящее время, С# является одним из наиболее динамично развивающихся языков программирования.
Целью данной курсовой работы является разработка программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С# средствами Microsoft Visual Studio 2010.
Задачами данной курсовой работы являются:
- выделение классов, необходимых для решения задачи;
- выделение основного действия в задаче и построение алгоритма его реализации;
- определение математического аппарата, применение которого необходимо в задаче;
- программная реализация задачи средствами Visual C#;
объектное ориентированное программирование инструкция
1. Теоретический анализ
1.1 Постановка задачи
Задание: По траектории, представляющей собой окружность, происходит движение шариков. Каждый шарик характеризуется скоростью и направлением движения, радиусом. Шарики имеют синий цвет. Однако, если происходит пересечение шариков, то все шарики, попадающие в пересечение, закрашиваются красным на время пересечения. Предусмотреть добавление и удаление шариков, изменение их параметров.
Выделение классов
Для решения задачи опишем следующие классы:
- шар (Shar). Экземпляр данного класса должен уметь отрисовывать и стирать себя в области отображения, передвигаться по траектории заданной, в виде окружности, иметь свой номер, изменять свой радиус и скорость движения, а также направление движения. Для этого он должен знать свое расположение, иметь ссылку на область отображения.
- область отображения (Traekt) обеспечивает ссылку на реальную поверхность рисования, так же этот класс обеспечивает хранение информации о номере следующего и предыдущего шара.
Класс Shar
class Shar: ISaveLoad
{
// номер, скорость,, координаты шара, радиус шара
private int _number,_speed, _x, _y, _vector,_radS;
// поле, хранящие цвет шара
private Color _color;
// положение шара
private double a;
// поле, хранящие информацию о формате текста
private static StringFormat _strF;
// поле, храняшие параметры шрифта
private static Font _f;
// ссылка на область отображения
private Traekt _Space;
// статический конструктор, инициализирующий
// статические поля
static Shar ()
{
_strF = new StringFormat ();
_strF. Alignment = StringAlignment. Center;
_f = new Font ("Arial",
10);
}
// конструктор, применяемый при чтении из файла
public Shar (Traekt NewSpace)
{
_Space = NewSpace;
_x = - 1;
_y = - 1;
}
// свойство цвета шара, для доступа из вне
public Color colball
{
get { return _color; }
set { _color = value; }
}
// свойство радиуса шара, для доступа из вне
public int radS
{
get { return _radS; }
set { _radS = value; }
}
// свойство номера шара, для доступа из вне
public int num
{
get { return _number; }
}
// свойство скорости шара, для доступа из вне
public int speed
{
get { return _speed; }
set { _speed = value; }
}
// свойство направления шара, для доступа из вне
public int v
{
get { return _vector; }
set { _vector = value; }
}
// основной конструктор шара
public Shar (Traekt newSpace, int NNumber, int uSpeed, int uVector, int uradS)
{
_Space = newSpace;
_vector = uVector;
_speed = uSpeed;
_radS = uradS;
_number = NNumber;
a = 90 * (Math. PI / 180);
Show ();
}
// метод отрисовки шара
public void Show ()
{
Graphics gr = Graphics. FromImage (_Space. S_picture. Image);
SolidBrush sBrush=new SolidBrush (_color);
Pen sPen = new Pen (Color. Black);
_f = new Font ("Arial",
8);
{
/* // рисование траэктории
gr. DrawEllipse (sPen, _Space. S_x - _radiusOr,
_Space. S_y - _radiusOr,
_radiusOr * 2,_radiusOr * 2); */
}
// рисование шара
sBrush. Color = colball;
gr. FillEllipse (sBrush, _x, _y, radS * 2, radS * 2);
gr. DrawEllipse (sPen, _x, _y, radS * 2, radS * 2);
sBrush. Color = Color. White;
gr. DrawString (_number. ToString (), _f, sBrush, _x+radS, _y+radS/2);
_Space. S_picture. Refresh ();
sBrush. Dispose ();
sPen. Dispose ();
}
// метод стирания шара
public void Hide ()
{
Graphics gr=Graphics. FromImage (_Space. S_picture. Image);
Pen sPen = new Pen (Color. White, 1);
SolidBrush sBr = new SolidBrush (Color. White);
// стирание траэктории
/* {
gr. DrawEllipse (sPen, _Space. S_x - Convert. ToInt32 (_radiusOr) - 1,_Space. S_y - Convert. ToInt32 (_radiusOr) - 1,Convert. ToInt32 (_radiusOr) * 2 + 2,Convert. ToInt32 (_radiusOr) * 2 + 2);
}*/
// удаление самого шара
gr. FillEllipse (sBr, _x - 1, _y - 1, (radS * 2) + 2, (radS * 2) + 2);
sPen. Dispose ();
sBr. Dispose ();
}
// метод движения шара
public void Move ()
{
Hide ();
int _radiusOr = _Space. S_picture. Height / 4;
a = a + (speed * _vector*Math. PI/180);
{
_x = (int) Convert. ToInt32 (_Space. S_x + _radiusOr * Math. Cos (a) - radS);
_y = (int) Convert. ToInt32 (_Space. S_y + _radiusOr * Math. Sin (a) - radS);
}
Show ();
}
// метод получения номера шара
public override string ToString ()
{
return "Шар "+_number+"; ";
}
// запись
// в текстовый файл в начале предыдущий шарик, затем количество, а дальше весь список
public void Save (StreamWriter sw)
{
sw. WriteLine (_number);
sw. WriteLine (_speed);
sw. WriteLine (_x);
sw. WriteLine (_y);
sw. WriteLine (_vector);
sw. WriteLine (_radS);
sw. WriteLine (a);
}
// запись
// в двоичный файл
public void Save (BinaryWriter bw)
{
bw. Write (_number);
bw. Write (_speed);
bw. Write (_x);
bw. Write (_y);
bw. Write (_vector);
bw. Write (_radS);
bw. Write (a);
}
// чтение
// из текстового файла
public void Load (StreamReader sr)
{
Hide ();
_number = Convert. ToInt32 (sr. ReadLine ());
_speed = Convert. ToInt32 (sr. ReadLine ());
_x= Convert. ToInt32 (sr. ReadLine ());
_y = Convert. ToInt32 (sr. ReadLine ());
_vector = Convert. ToInt32 (sr. ReadLine ());
_radS = Convert. ToInt32 (sr. ReadLine ());
a = Convert. ToDouble (sr. ReadLine ());
Show ();
}
// чтение
// из двоичного файла
public void Load (BinaryReader br)
{
Hide ();
_number = br. ReadInt32 ();
_speed = br. ReadInt32 ();
_x = br. ReadInt32 ();
_y = br. ReadInt32 ();
_vector = br. ReadInt32 ();
_radS = br. ReadInt32 ();
a = br. ReadDouble ();
Show ();
}
public Boolean Collapse (Shar ball) // Метод проверки на пересечение
{
if (Math. Sqrt (Math. Pow (_x - ball. _x + radS - ball. radS,
2) + Math. Pow (_y - ball. _y + radS - ball. radS,
2)) < (ball. _radS + _radS))
return true;
else
return false;
}
}
}
Класс Traekt
class Traekt: ISaveLoad
{
private int x, y; // координаты центра поверхности рисования
private PictureBox Space_pb; // ссылка на реальную поверхность рисования
private int _nextNum, _lastNum; // поля, хранящие номера следующего и предыдущего шарика
public Traekt (PictureBox newPB, int next) // основной конструктор класса
{
Space_pb = newPB;
x = Space_pb. Image. Width/2;
y = Space_pb. Image. Height/2;
Graphics c = Graphics. FromImage (Space_pb. Image);
Space_pb. Refresh ();
c. Dispose ();
_nextNum = 1;
}
// реализация интерфейса, производящего запись
// в текстовый файл
public void Save (StreamWriter sw)
{
sw. WriteLine (_lastNum);
}
// реализация интерфейса, производящего запись
// в двоичный файл
public void Save (BinaryWriter bw)
{
bw. Write (_lastNum);
}
// реализация интерфейса, производящего чтение
// из текстового файла
public void Load (StreamReader sr)
{
_nextNum = Convert. ToInt32 (sr. ReadLine ()) +1;
}
// реализация интерфейса, производящего чтение
// из двоичного файла
public void Load (BinaryReader br)
{
_nextNum = br. ReadInt32 () +1;
}
// свойство номеров шаров дл доступа извне
public int nextN
{
get { return _nextNum++; }
set { _lastNum = value; } // получаем номер при создании в Form1
}
// свойство получения доступа к компоненту, на котором производится отображение
public PictureBox S_picture
{
get { return Space_pb; }
}
// свойство координаты Х, для достпа извне
public int S_x
{
get { return x; }
}
// свойство координаты У, для доступа извне
public int S_y
{
get { return y; }
}
}
}
1.2 Построение алгоритма реализации
При функционировании программы могут выполняться следующие операции:
- добавление шарика;
- удаление шарика;
- редактирование параметров шарика;
- перемещение шариков по траектории, представляющей собой окружность;
- загрузка, либо сохранение параметров шарика в отдельный файл;
Отличительной особенностью задания является реализация пересечения шариков движущихся по траектории, представляющей окружность. Алгоритм определения пересечения выглядит следующим образом:
а) Выполнить перебор всех шаров находящихся в списке;
б) Получить параметры шара;
в) Параметры каждого шара сравниваем со всеми кроме параметров самого шара;
г) Если расстояние между центрами меньше суммы их радиусов, то шары пересекаются;
1.3 Определение математического аппарата, применение которого необходимо в задаче
По условиям задачи шары перемещаются по траектории, представленной в виде окружности, и для определения пересечения использовалась следующая формула
2. Реализация основного класса программы
Основной класс программы обеспечивает её визуальное представление (на рисунке 1.1 показана основная форма с указанием компонентов, используемых далее в листингах), а также описывает все операции, выполняемые в ходе функционирования программы.
Рисунок 2.1 - Основная форма программы
При загрузке формы производится создание области отображения, установка доступности выполнения операций, а также настройка некоторых свойств стандартных диалоговых окон:
private void Form1_Load (object sender, EventArgs e)
{
// создание области рисования
pictureBox1. Image = new Bitmap (pictureBox1. Width, pictureBox1. Height);
// создание поверхности отображения
Space = new Traekt (pictureBox1, 1);
// запуск таймера
timer1. Enabled = true;
Save_ED (false);
Change_ED (false);
Del_ED (false);
}
Установка доступности выполнения операций реализована в виде трех методов:
private void Change_ED (bool Value)
{
Edit_ball. Enabled = Value;
change_TSM. Enabled = Value;
toolStripButton3. Enabled = Value;
}
private void Del_ED (bool Value)
{
Del_ball. Enabled = Value;
del_TSM. Enabled = Value;
toolStripButton4. Enabled = Value;
}
private void Save_ED (bool Value)
{
save_balls. Enabled = Value;
save_TSM. Enabled = Value;
toolStripButton5. Enabled = Value;
}
2.1 Добавление шара
Добавление шара выполняется с использованием разработанного диалогового окна класса Form:
private void button1_Click (object sender, EventArgs e)
{
// переменная, хранящая направление движения шаров
int v = 0;
// создание диалогового окна
Form2 Dialog = new Form2 ();
// установка начальных значений компонентов
Dialog. Text = "Добавление шара";
Dialog. Radius_TB. Text = "";
Dialog. Speed_TB. Text = "";
// вызов окна и определение резултатов его работы
if (Dialog. ShowDialog () == DialogResult. OK)
{
if (Dialog. radioButton1. Checked)
v = - 1;
else
if (Dialog. radioButton2. Checked)
v = 1;
// добавление нового шара
satellite = new Shar (Space, Space. nextN,
Convert. ToInt32 (Dialog. Speed_TB. Text), v, Convert. ToInt32 (Dialog. Radius_TB. Text));
// сохранение номера добавленного шара передача в _lastnum
Space. nextN = satellite. num;
// добавление шара в список отображения
listBox1. Items. Add (satellite);
Save_ED (true);
}
}
2.2 Редактирование параметров шара
Редактирование параметров шаров осуществляется с использованием диалогового окна того же класса, что и при добавлении треугольника.
Редактируются параметры шара выбранного в списке шаров.
private void button2_Click (object sender, EventArgs e)
{
// проверка наличия шаров
if (listBox1. SelectedIndex! = - 1)
{
// создание диалоговой формы
Form2 Dialog = new Form2 ();
Dialog. Text = "Изменение параметров шара";
// запоминание параметров шара
Shar satel = listBox1. SelectedItem as Shar;
Dialog. Radius_TB. Text = Convert. ToString (satel. radS);
Dialog. Speed_TB. Text = Convert. ToString (satel. speed);
if (satel. v == - 1)
Dialog. radioButton1. Checked = true;
else
Dialog. radioButton2. Checked = true;
// запоминание измененных значений
if (Dialog. ShowDialog () == DialogResult. OK)
{
satel. Hide ();
Space. S_picture. Refresh ();
satel. radS = Convert. ToInt32 (Dialog. Radius_TB. Text);
satel. speed = Convert. ToInt32 (Dialog. Speed_TB. Text);
if (Dialog. radioButton1. Checked)
satel. v = - 1;
else
if (Dialog. radioButton2. Checked)
satel. v = 1;
}
}
else
MessageBox. Show ("Не выбран шар для редактирования");
}
2.3 Удаление шара
Операция удаления возможна только в ситуации, когда в списке выбран шар.
private void button3_Click (object sender, EventArgse)
{
if (listBox1. SelectedIndex! = - 1)
{
// запоминание параметров шара
Shar sat = listBox1. SelectedItem as Shar;
// перед удалением необходимо стереть удаляемый шар
sat. Hide ();
Space. S_picture. Refresh ();
// удаляем шар
listBox1. Items. RemoveAt (listBox1. SelectedIndex);
}
else
MessageBox. Show ("не выбран шар для удаления");
// если в списке нет элементов, то
// запрет действий
Save_ED (false);
}
2.4 Перемещение шара
Перемещение шара происходит по траектории в виде окружности, который в свою очередь движется с помощью таймера. При срабатывании таймера происходит движение шаров.
private void timer1_Tick (object sender, EventArgs e)
{
for (int i = 0; i < listBox1. Items. Count; i++)
{
satellite = listBox1. Items [i] as Shar;
satellite. colball = Color. Blue;
satellite. Move ();
}
2.5 Сохранение состояния программы
При сохранении параметров программы используются стандартные диалоговые окна для выбора файла.
private void button4_Click (object sender, EventArgs e)
{
// подготовка диалогового окна
saveFileDialog1. FileName = "";
// вызов диалогового окна и определение результатов его работы
if (saveFileDialog1. ShowDialog () == DialogResult. OK)
{
// остановка таймера, для того чтобы во время записи не произошло перемещение шаров
timer1. Enabled = false;
// блок try. finally для гарантированного запуска таймера после сохранения
try
{
// определение расширения файла
if (new FileInfo (saveFileDialog1. FileName). Extension ==". dat")
{
// создание бинарного потока данных
using (BinaryWriter bw = new BinaryWriter (new FileStream (this. saveFileDialog1. FileName, FileMode. Create)))
{
// сохранения состояния области рисования
Space. Save (bw);
// сохранение количества шаров
bw. Write (listBox1. Items. Count);
// сохранение шаров
for (int i = 0; i < listBox1. Items. Count; i++)
{
satellite = listBox1. Items [i] as Shar;
satellite. Save (bw);
}
}
}
else
{
// создание текстового потока данных
using (StreamWriter sw = new StreamWriter (new FileStream (this. saveFileDialog1. FileName, FileMode. Create)))
{
// сохранение области рисования
Space. Save (sw);
// сохранение количества шаров
sw. WriteLine (listBox1. Items. Count);
// сохранение шаров
for (int i = 0; i < listBox1. Items. Count; i++)
{
satellite = listBox1. Items [i] as Shar;
satellite. Save (sw);
}
}
}
}
finally
{
// запуск таймера
timer1. Enabled = true;
}
}
}
2.6 Загрузка состояния программы
При загрузке параметров программы используются стандартные диалоговые окна для выбора файла.
private void button5_Click (object sender, EventArgs e)
{
// подготовка диалогового окна
openFileDialog1. FileName = "";
// вызов диалогового окна и определение результатов
if (openFileDialog1. ShowDialog () == DialogResult. OK)
{
// отановка займера
timer1. Enabled = false;
try
{
// стирание всех шаров
foreach (Shar sat in listBox1. Items)
sat. Hide ();
// очистка списка шаров
listBox1. Items. Clear ();
// очистка строки состояния
nameball_TS. Text = "";
speedball_TS. Text = "";
vball_TS. Text = "";
// определение расширения файла
if (new FileInfo (openFileDialog1. FileName). Extension ==". dat")
{
// создание бинарного потока данных
using (BinaryReader br = new BinaryReader (File. Open (openFileDialog1. FileName, FileMode. Open)))
{
// загрузка области рисования
Space. Load (br);
// чтение количества шаров
int c = br. ReadInt32 ();
// загрузка шаров
for (int i = 0; i < c; i++)
{
Shar sat = new Shar (Space);
sat. Load (br);
listBox1. Items. Add (sat);
}
}
}
else
{
// создание текстового потока данных
using (StreamReader sr = new StreamReader (File. Open (openFileDialog1. FileName, FileMode. Open)))
{
{
Space. Load (sr);
int c = Convert. ToInt32 (sr. ReadLine ());
for (int i = 0; i < c; i++)
{
Shar sat = new Shar (Space);
sat. Load (sr);
listBox1. Items. Add (sat);
}
}
}
}
}
finally
{
// запуск таймера
timer1. Enabled = true;
// установка доступности действий
Change_ED (false);
Del_ED (false);
Save_ED (true);
}
}
}
2.7 Работа с пунктом "О программе"
При выборе пункта "О программе" создаётся и отображается одноименное диалоговое окно (рисунок 2.2)
Рисунок 2.2 - Диалоговое окно "О программе"
private void оПрограммеToolStripMenuItem_Click (object sender, EventArgs e)
{
Form3 dialog = new Form3 ();
dialog. Text = "О программе";
if (dialog. ShowDialog () == DialogResult. OK)
dialog. Focus ();
}
2.8 Реализация диалогового окна работы с шаром
Диалоговое окно работы с шаром (рисунок 2.3) обеспечивает задание параметров шара: радиус шара, скорость движения, направление движения. Радиус шара и скорость шара вводится с помощью компонента класса TextBox, направление движения шара выбирается с помощью компонента RadioButton.
Рисунок 2.3 - Диалоговое окно работы с шаром
В проверке устанавливается, были ли пользователем введены допустимые данные.
{
// определение результата закрытия формы
if (DialogResult==DialogResult. OK)
// используется для обработки ошибок ввода данных
try
{
// проверка ввода радиуса шара
if (Radius_TB. Text. Trim () == "")
{
Radius_TB. Focus ();
throw new Exception ("Вы не ввели данные о радиусе шара");
}
// проверка ввода скорости вращения
if (Speed_TB. Text. Trim () == "")
{
Speed_TB. Focus ();
throw new Exception ("Вы не ввели данные о скорости движения шара");
}
// проверка выбора направления движения
if (! radioButton1. Checked &&! radioButton2. Checked)
{
groupBox1. Focus ();
throw new Exception ("Вы не ввели данные о направлении движения");
}
// проверка введенных значений на правильность
try
{
int speed = Convert. ToInt32 (Speed_TB. Text);
if (speed < 1 || speed > 360)
{
Speed_TB. Focus ();
throw new Exception ("Скорость должна быть в диапозоне 1.360 рад/сек");
}
}
catch (FormatException)
{
e. Cancel = true;
Speed_TB. Focus ();
MessageBox. Show ("Скорость должна быть целым числом");
return;
}
try
{
int radius = Convert. ToInt32 (Radius_TB. Text);
if (radius < 10 || radius > 100)
{
Radius_TB. Focus ();
throw new Exception ("Радиус шара должен быть не менее 10 и не более 100");
}
}
catch (FormatException)
{
e. Cancel = true;
Radius_TB. Focus ();
MessageBox. Show ("Радиус должен быть целым числом");
return;
}
}
// обработка всех других ошибок
catch (Exception E)
{
e. Cancel = true;
MessageBox. Show (E. Message);
}
}
2.9 Инструкция по использованию программы
В начальном состоянии (после запуска программы) возможными являются два основных действия: добавление шарика и загрузка ранее сохранённого состояния.
Добавление шара осуществляется с помощью кнопки "Добавить шар", кнопки на панели инструментов или пункта меню "Действие®Добавить шар".
Удаление выбранного шара осуществляется с помощью кнопки "Удалить шар", кнопки на панели инструментов или пункта меню "Действие?®Удалить шар".
Изменение параметров выбранного шара осуществляется с помощью кнопки "Редактировать шар", кнопки на панели инструментов или пункта меню "Действие?®Редактировать шар".
Загрузка сохранённого состояния программы осуществляется с помощью кнопки "Загрузить данные", кнопки на панели инструментов или пункта меню "Действие®Загрузить данные".
При выполнении команды в диалоговом окне требуется указать имя файла и его тип. Считается, что файл с расширением". txt" текстовый, а файл с раширением". dat" двоичный.
Сохранение состояния программы осуществляется с помощью кнопки на панели инструментов или пункта меню "Файл®Сохранить данные". Тип файлов сохранения определяется по тому же алгоритму, что и при загрузке.
После добавления шара или загрузки сохранённого состояния становится доступным операция сохранения текущего состояния, которая заново блокируется при удалении последнего шара.
Для выполнения операций удаления или изменения параметров некоторого шара, он должен быть выбран в списке шаров.
На рисунке 2.4 изображено состояние программы с шарами, так как ни один из шаров не выбран, то изменение и удаление недоступны.
Рисунок 2.4 - Демонстрация работы программы
Заключение
В данной курсовой работе удалось разработать программу с использованием компонентов среды визуального проектирования Visual C#.
Выполнение курсовой работы было разделено на два этапа:
- теоретический анализ поставленной задачи, включающий в себя постановку задачи, выделение основных классов, выделение основных действия и алгоритмов их реализации, определение математического аппарата, необходимого при решении задачи;
- программная реализация задачи средствами Visual C#, включающая в себя реализацию основных классов, реализацию основных действий, реализацию классов диалоговых форм, инструкцию по использовании программы.
Итогом курсовой работы можно считать закрепление знаний в области создания алгоритмов, навыков программирования на языке C# и создании приложений для операционных системы компании Microsoft, полученных в ходе курса "объектно-ориентированное программирование".
Список литературы
1. Курсовая работа по программированию на Visual C# - учебное издание - Кожемяченко В.И. - Новокузнецк - 2013 г. - 28 с.
2. Программирование в среде Visual C# часть 2: метод. указ. - /СибГИУ - сост. В.И. Кожемяченко, С.Ю. Красноперов - Новокузнецк - 2012 г. - 54 с.
Размещено на Allbest.ru
Подобные документы
Создание программы с использованием принципов объектно-ориентированного программирования на языке высокого уровня С# средствами Microsoft Visual Studio 2010. Построение алгоритма реализации. Определение математического аппарата, применение его в задаче.
курсовая работа [500,4 K], добавлен 13.01.2015Понятие объектно-ориентированного программирования, общая характеристика языков высокого уровня. Разработка программного обеспечения для реализации компьютерной игры "пинбол" с помощью императивного программирования в среде Microsoft Visual Basic.
курсовая работа [428,9 K], добавлен 19.09.2012Общая характеристика объектно-ориентированного подхода в программировании, его основные свойства и принципы. Разработка программы для автоматизация деятельности кафе на основе объектно-ориентированного подхода, проектирования и реализации схемы данных.
курсовая работа [1,2 M], добавлен 22.01.2012Объектно-ориентированная технология создания программ. Среда разработки Visual Studio.NET. Особенности среды Microsoft Visual Studio 2010. Приложения C# для расчетов по формулам, консольный ввод-вывод. Форматирование значений данных. Программы с циклами.
методичка [2,1 M], добавлен 11.09.2014Создание программы, реализующей игру "Линии". Среда разработки программы, описание ее общего вида. Основные алгоритмы программы. Реализация программы в среде разработки Microsoft Visual Studio 2008 на языке объектно-ориентированного программирования С++.
курсовая работа [639,0 K], добавлен 16.03.2012Разработка программы "Виселица" с использованием программной среды Visual Basic и средств объектно-ориентированного программирования: программные требования, описание алгоритма, блок-схема программы и дополнительной процедуры. Листинг программы.
курсовая работа [188,2 K], добавлен 28.06.2009Приемы и правила объектно-ориентированного программирования с использованием языка С++. Общие принципы разработки объектно-ориентированных программ. Основные конструкции языка С++. Разработка различных программ для Windows с использованием WIN32 API.
учебное пособие [1,6 M], добавлен 28.12.2013Разработка учебного транслятора на языке программирования C# в среде объектно-ориентированного программирования Visual Studio 2012. Выделение лексем и построение цепочки символов на этапе синтаксического анализа. Функциональное тестирование программы.
курсовая работа [406,8 K], добавлен 07.08.2013Исследование принципов объектно-ориентированного программирования на базе языка программирования С++. Разработка программного комплекса для ведения учёта памятников города. Описание процессов сортировки, поиска, формирования статистики по памятникам.
курсовая работа [782,4 K], добавлен 26.05.2014Создание программы для обработки информации об объектах предметной области "Бытовая техника" в среде визуального программирования C++. Иерархия родственных классов. Описание логической структуры программы. Реализация файлового ввода/вывода данных.
курсовая работа [711,4 K], добавлен 27.07.2014