Вход

работа с Множествами на С#

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 292909
Дата создания 16 июня 2014
Страниц 40
Мы сможем обработать ваш заказ (!) 25 апреля в 16:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
480руб.
КУПИТЬ

Описание

программа реализует операции с множетсвами(обьединение, пересечение, отрицане, разность) и представляет в графическом виде! ...

Содержание

Содержание

1 ПОСТАНОВКА ЗАДАЧИ 6
1.1 Цель и задачи работы 6
1.2 Обоснование выбора средства программирования 6
1.3 Входная и выходная информация 6
1.4 Требования к аппаратному обеспечению 7
1.5 Требования к программному обеспечению 7
2 СВЕДЕНИЯ ИЗ ТЕОРИИ 8
2.1 Описание среды разработки 8
2
2.2 Сведения о системах счисления 11
3 АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ 14
3.1 Обобщенный алгоритм решения задачи 14
4 ОПИСАНИЕ ПРОГРАММЫ 16
4.1 Функциональное назначение файлов проекта 16
4.2 Описание содержимого Form1.cs 21
5 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 25
ЗАКЛЮЧЕНИЕ 26
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 27
Приложение А 28


Введение

В современном мире стремительными темпами развиваются информа-ционные технологии и те сферы человеческой деятельности, которые с ними связаны. С каждым годом всё больший и больший объём информации обрабатывается при помощи современных и продолжающих совершенствоваться персональных компьютерах.
C# — объектно-ориентированный язык программирования. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework.

Фрагмент работы для ознакомления

Drawing. Некоторые наиболее важные типы этого пространства имен представлены в таблице:ТипОписаниеBitmapСодержит файл изображения и определяет набор методов для выполнения операций с этим изображениемBrushBrushesSolidBrushSystemBrushesTextureBrushОбъекты Brush (кисть) используются для заполнения пространства внутри геометрических фигур (прямоугольников, эллипсов, многоугольников). Тип Brush – абстрактный базовый класс, остальные – производные от негоBufferedGraphicsНовый тип .NET 2.0, обеспечивающий графический буфер для двойной буферизации, которая используется для уменьшения или полного исключения влияния эффекта мелькания, возникающего при перерисовке изображенийColorSystemColorsОпределяют ряд статических свойств, доступных для чтения и используемых для получения нужного цвета при использовании различных перьев и кистейFontFontFamilyТип Font содержит характеристики шрифта (имя, начертание, размер и т.д.). FontFamily представляет набор шрифтов, которые относятся к одному семейству, но имеют небольшие отличияGraphicsПредставляет реальную поверхность для изображения, а также предлагает ряд методов для вывода текста, изображений и геометрических фигурIconSystemIconsПредставляют пользовательские и системные иконкиImageImageAnimatorImage – это абстрактный базовый класс для поддержки возможностей типов Bitmap, Icon и Cursor. Тип ImageAnimator обеспечивает показ изображений через указанные интервалы времениPenPensSystemPensPen – это класс, используемый для построения линий и кривых. Тип Pen определяет ряд статических свойств, позволяющий получить перо с заданными свойствами (например, с заданным цветом)PointPointFЭти структуры обеспечивают работу с координатами точки. Point работает со значениями типа int, а PointF – с типом floatRectangleСтруктуры, предназначенные для работы с прямоугольными областями (int/float)RectangleFSizeЭти структуры обеспечивают работу с размерами: высотой и шириной (int/float)SizeFStringFormatИспользуется для форматирования текста (выравнивание, междустрочный интервал и т.д.)RegionОпределяет область, занятую геометрической фигуройМногие методы требуют указания положения или области для вывода графического объекта. Другим часто используемым методам необходимо передавать размеры (высоту или ширину) прямоугольной области, в которую будет производиться вывод, или, если область вывода будет не прямоугольной, задать эту область другим образом.Для передачи методам подобной информации в пространстве имен System.Drawing предусмотрены служебные типы Point, Rectangle, Region и Size. Основные свойства данных типов приведены в таблице:СтруктураСвойствоНазначение свойстваPointPointFXКоордината xYКоордината ySizeSizeFWidthШиринаHeightВысотаRectangleRectangleFLeftКоордината x левой граниRightКоордината x правой граниTopКоордината y верхней граниBottomКоордината y нижней граниWidthШирина прямоугольникаHeightВысота прямоугольникаXАналогично LeftYАналогично TopLocationЛевый верхний уголSizeРазмер прямоугольникаСеансы вывода графики. Класс GraphicsРабота с графическими устройствами, такими, как принтер, дисплей в Windows вообще и в .NET в частности является аппаратно-независимой. Это значит, что при программировании под Windows средств прямого доступа к аппаратуре нет. Все взаимодействие с ней производится через специальные методы. При этом для вывода на графические устройства используется один и тот же набор функций.Для того чтобы определить, на какое устройство осуществляется вывод (весь экран, клиентская область окна, принтер и т.д.), используется понятие контекста устройства (device context). Это объект класса Graphics, содержащий все методы для построения изображения в окне. Кроме того, он содержит данные о графическом устройстве вывода. Для осуществления вывода создается контекст устройства и тем самым определяется конкретное устройство для вывода. А далее к созданному объекту можно применять все имеющиеся методы класса Graphics.Этот класс не только представляет «поверхность» для размещения изображения (форма, элемент управления или область в памяти), но определяет также множество методов для вывода текста, изображений, геометрических фигур. Частичный список методов данного класса представлен в таблице:МетодОписаниеFromHdc()Статические методы, обеспечивающие возможность получения объекта Graphics из элемента управления или изображенияFromHwnd()FromImage()Clear()Закрашивает объект Graphics заданным цветомDrawArc()Рисует сегмент круга между заданными угламиDrawBezier()Рисует гладкую кривую через заданные 4 точкиDrawBeziers()Рисует гладкую кривую через заданный массив точекDrawCurve()Рисует гладкую кривую через заданный массив точекDrawEllipse()Рисует эллипсDrawIcon()Рисует изображение с заданной иконкойDrawLine()Рисует одиночную прямую линиюDrawLines()Рисует серию ломаных линий по массиву точекDrawPie()Рисует сектор эллипсаDrawPath()Рисует замкнутый контур на основе серии точек и кривыхDrawRectangle()Рисует прямоугольникDrawRectangles()Рисует несколько прямоугольниковDrawString()Рисует текстFillEllipse()Рисует закрашенный эллипсFillPath()Рисует закрашенный замкнутый контурFillPie()Рисует закрашенный сектор эллипсаFillPolygon()Рисует закрашенный замкнутый контур по серии точекFillRectangle()Рисует закрашенный прямоугольникКласс Graphics не допускает непосредственного создания своего объекта с помощью ключевого слова new, поскольку этот класс не имеет открытых конструкторов. Поэтому контекст устройства можно только получить из элемента управления или изображения, а затем ссылку на него присвоить объекту класса Graphics. Например:Graphics G = PictureBox1.CreateGraphics();2.5Системы координат GDI+Система координат по умолчанию использует в качестве единицы измерения пиксели, а в качестве исходной точки – верхний левый угол. Координата X определяет смещение вправо, а координата Y – смещение вниз.Разница между измерением положения относительно верхнего левого угла документа и относительно верхнего левого угла экрана настолько важна, что в GDI+ предусмотрены специальные наименования для этих координатных систем:мировые координаты (world coordinates) – указывают позицию точки, измеренную в пикселях от левого верхнего угла документа;страничные координаты (page coordinates) – указывают позицию точки, измеренную в пикселях от левого верхнего угла клиентской области;координаты устройства (device coordinates) – подобны страничным координатам за исключением того, что в качестве единиц измерения используются не пиксели, а другие единицы измерения, определяемые пользователем через свойство PageUnit класса Graphics (дюймы, миллиметры и т.д.). Как было сказано выше, по умолчанию точкой отсчета для системы координат является верхний левый угол клиентской области окна. Однако бывают ситуации, когда удобнее, чтобы точка отсчета была расположена в другом месте. Для этого используется метод TranslateTransform() класса Graphics. Например, установить точку отсчета в положение 100, 100 относительно системы координат по умолчанию можно следующим образом:g.TranslateTransform(100, 100);Сведения о системах счисленииНад множествами, как и над многими другими математическими объектами, можно совершать различные операции, которые иногда называют теоретико-множественными операциями или сет-операциями. В результате операций из исходных множеств получаются новые.Бинарные операцииНиже перечислены основные операции над множествами:пересечение: INCLUDEPICTURE "http://upload.wikimedia.org/math/f/7/0/f70f4f1e93f32fd39d86e957c0e23bbd.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/f/7/0/f70f4f1e93f32fd39d86e957c0e23bbd.png" \* MERGEFORMATINET объединение: INCLUDEPICTURE "http://upload.wikimedia.org/math/a/1/9/a19d95a463899fcde08e72998e13d56c.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/a/1/9/a19d95a463899fcde08e72998e13d56c.png" \* MERGEFORMATINET разность (дополнение): INCLUDEPICTURE "http://upload.wikimedia.org/math/4/6/e/46e797a684fa859624f56a1d2cc90bae.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/4/6/e/46e797a684fa859624f56a1d2cc90bae.png" \* MERGEFORMATINET Унарные операцииАбсолютное дополнение: INCLUDEPICTURE "http://upload.wikimedia.org/math/0/a/7/0a777e2f24b03131d5c0fba022022b0a.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/0/a/7/0a777e2f24b03131d5c0fba022022b0a.png" \* MERGEFORMATINET Операция дополнения подразумевает некоторый универсум (универсальное множество  INCLUDEPICTURE "http://upload.wikimedia.org/math/4/c/6/4c614360da93c0a041b22e537de151eb.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/4/c/6/4c614360da93c0a041b22e537de151eb.png" \* MERGEFORMATINET , которое содержит  INCLUDEPICTURE "http://upload.wikimedia.org/math/7/f/c/7fc56270e7a70fa81a5935b72eacbe29.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/7/f/c/7fc56270e7a70fa81a5935b72eacbe29.png" \* MERGEFORMATINET ): INCLUDEPICTURE "http://upload.wikimedia.org/math/6/8/a/68a2565a9a73590a96531c7d00a8324a.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/6/8/a/68a2565a9a73590a96531c7d00a8324a.png" \* MERGEFORMATINET Относительным же дополнением называется А\В (см. выше):Мощность множества: INCLUDEPICTURE "http://upload.wikimedia.org/math/8/c/e/8ce7f2ced5b55654edb86bb9cefb944e.png" \* MERGEFORMATINET INCLUDEPICTURE "http://upload.wikimedia.org/math/8/c/e/8ce7f2ced5b55654edb86bb9cefb944e.png" \* MERGEFORMATINET Результатом является кардинальное число (для конечных множеств — натуральное).АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ Алгоритм решения представим в словесной форме:начальная инициализация операндов;обработка операций объединение и её графическое построение;обработка операции пересечение её графическое построение;обработка операции разность её графическое построение;обработка операции отрицание её графическое построение; ОПИСАНИЕ ПРОГРАММЫ Функциональное назначениеДанная программа предназначена для выполнения с числовыми множествами. Она выполняет основные бинарные операции, такие как: объединение, пересечение и разность, а также унарную операцию - взятие дополнения (отрицание). Функциональное назначение файлов проектаПапка Properties содержит 3 файла:AssemblyInfo.cs – файл отвечает за управление общими сведениями о сборке.Resources.resx – файл отвечает за отображение внешних ресурсов, которые используются в программе Settings.settings – файл отвечающий за сохранение пользовательских настроек.Файл Form1.cs содержит код, выполняющийся в форме Form1.Файл Form1.Designer.cs содержит описание визуального оформления окна Form1.Файл Program.cs используется для запуска приложения и формы Form1Файл Class1.cs содержит описание класса dig.Файл WindowsFormsApplication1.csproj позволяет открыть проект целиком, используя остальные файлы проекта.В папках bin и obj хранится отладочная информация.Описание элементов формы Form1:Рисунок 1 – Вид окна Form1В окне Form1 используются элементы графического интерфейса разных типов, а именно: Label, TextBox и Button. Более подробное описание этих элементов представлено в Таблице.Таблица 2 – Описание элементов формы Form1ИмяТипНазначениеLbl_title_aLabelПодпись для Lbl_size_aLbl_title_bLabelПодпись для Lbl_size_bLbl_title_cLabelПодпись для Lbl_size_cLbl_size_aLbl_size_bLbl_size_cLabelОтображение вычисления мощности множества a, b ,c.Txt_box_set_aTxt_box_set_bTxt_box_set_cTextBoxПредоставляет элемент управления "текстовое поле" Windows.Rb_unionRb_intrsctRb_diffRb_notRadioButtonПозволяет пользователю выбрать единственный вариант из группы доступных (объединение, пересечение и разность и отрицание)Gprbx_set_aGprbx_set_bGprbx_set_cGprbx_operationsGroupBoxотображает рамку вокруг группы элементов управленияpicPictureBoxПоле для отображения графиковBtn_resultButtonПо нажатию кнопки выполняются вычисления и построение графикаОписание элементов формы dif_form:Рисунок 2 – Вид окна Form1В окне dif_form используются элементы графического интерфейса разных типов, а именно:, RadioButton и Button. Более подробное описание этих элементов представлено в Таблице Описание элементов формы dif_form:ИмяТипНазначениеRb_aRb_bRadioButtonПозволяет пользователю выбрать единственный вариант из группы доступных Btn_okButtonПо нажатию кнопки выполняются вычисления и построение графикаОписание элементов формы not_form:Рисунок 3 – Вид окна not_formВ окне not_form используются элементы графического интерфейса разных типов, а именно RadioButton и Button. Более подробное описание этих элементов представлено в Таблице Описание элементов формы not_form:ИмяТипНазначениеRb_aRb_bRadioButtonПозволяет пользователю выбрать единственный вариант из группы доступных Btn_okButtonПо нажатию кнопки выполняются вычисления и построение графикаОбработчики событий: btn_result_Click– при нажатии на кнопку программа считывает данные из Txt_box_set_a, Txt_box_set_b, Txt_box_set_c; производит выбранные действия в соответствии с RadioButton; выводит результат в Lbl_size_c , Txt_box_set_c, PictureBox.Описание остальных функций представлено в ПРИЛОЖЕНИИ А.РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯЗапускаемым файлом программы является файл Множества.exe. После запуска на экране появляется главное окно программы, представленное на рисунке 1. Рисунок 4 – Главное окно программы «Калькулятор»Чтобы выполнить вычисление множеств, следует:ввести первое множество через пробел или запятую;ввести второе множество через пробел или запятую;нажать кнопку объединение, пересечение, разность или отрицание;нажать кнопку Результат;В случае выбора кнопки разности на экран выводится окно о выборе операции.Рисунок 5 – Пример окна сообщения о выборе разности.Чтобы выполнить вычисление множеств, следует:выбрать необходимую разность;нажать кнопку ОК;В случае выбора кнопки отрицание на экран выводится окно о выборе операции. Рисунок 6 – Пример окна сообщения о выборе отрицания.Чтобы выполнить вычисление множеств, следует:выбрать необходимое отрицаниенажать кнопку ОК.;Для выхода из программы можно нажать кнопку в правом верхнем углу окна программы.ЗАКЛЮЧЕНИЕВ ходе выполнения курсовой работы были получены и закреплены навыки программирования в среде Microsoft Visual Studio 2010 на языке C#.В результате создано работоспособное приложение «Множества». Проведенное тестирование работы «Множества» не выявило существенных ошибок. Это, однако, не исключает возможности их появления при проведении более глубокого и длительного тестирования.Разработанное приложение позволяет работать с множествами и производить над ними операции, такие как: объединение, пересечение, разность и отрицание.ЛИТЕРАТУРАГерберт Шилдт C# 4.0: полное руководство = C# 4.0 The Complete Reference. — М.: «Вильямс», 2011. — 1056 с. Кристиан гросс c# 2008 и платформа .NET 3.5 Framework– 480 с.\. Интернет-энциклопедия Wikipedia.org Материалы статьи «Операции над множествами [Электронный ресурс]. – Режим доступа: http://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8_%D0%BD%D0%B0%D0%B4_%D0%BC%D0%BD%D0%BE%D0%B6%D0%B5%D1%81%D1%82%D0%B2%D0%B0%D0%BC%D0%B8ПРИЛОЖЕНИЕ АЛистинг основного модуля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;using System.Drawing.Drawing2D;namespace Множества{ public partial class main_form : Form { public not_form nf; public dif_form df; public main_form() { InitializeComponent(); nf = new not_form(); nf.Owner = this; df = new dif_form(); df.Owner = this; } public void check_data() { txt_box_set_c.Clear(); data.c.Clear(); lbl_size_a.Text = data.a.Count.ToString(); lbl_size_b.Text = data.b.Count.ToString(); if (data.a.Count > 0 || data.b.Count > 0) // или а или б полные, включить кнопки { grpbx_operations.Enabled = true; btn_result.Enabled = true; } else { grpbx_operations.Enabled = false; btn_result.Enabled = false; } } private void txt_box_set_a_TextChanged(object sender, EventArgs e) { try { data.a.Clear(); //Получаем всю строку string buff = txt_box_set_a.Text; //Разбираем на составляющие string[] lines = buff.

Список литературы

7 ЛИТЕРАТУРА

1. Герберт Шилдт C# 4.0: полное руководство = C# 4.0 The Complete Reference. — М.: «Вильямс», 2011. — 1056 с.
2. Кристиан гросс c# 2008 и платформа .NET 3.5 Framework– 480 с.\
3. . Интернет-энциклопедия Wikipedia.org Материалы статьи «Опе-рации над множествами [Электронный ресурс]. – Режим доступа: http://ru.wikipedia.org/wiki/Операции_над_множествами
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00518
© Рефератбанк, 2002 - 2024