Программирование в Windows.Forms-приложениях

Сведения об окружности, ее радиус и площадь. Разработка программы для вычисления площади круга и длины окружности по заданному радиусу с использованием Windows.Forms-приложений. Пошаговая инструкция; описание главного окна, код, примеры работы программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 14.09.2014
Размер файла 818,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ОГЛАВЛЕНИЕ

  • Вступление
  • Раздел 1. Ознакомление
  • Раздел 2. Разработка программы
    • 2.1 Исторические сведения
    • 2.2 Детальное описание Form 1 (главное окно)
      • 2.2.1 Листинг
    • 2.3 Детальное описание Form 2
      • 2.3.1 Листинг
    • 2.4 Предотвращение ошибок
  • Раздел 3. Примеры решения
  • Выводы
  • Литература

ВВЕДЕНИЕ

Данная курсовая работа помогает вычислять площадь круга и длину окружности по заданному радиусу.

В описании указаны некие исторические сведения о радиусе, площади и о самой окружности. Также представлены иллюстрации, код и примеры работы программы.

Прочитав описание, можно понять поставленную перед разработчиком задачу и методы ее исполнения.

РАЗДЕЛ 1. ОЗНАКОМЛЕНИЕ

Моя программа считает площадь круга (Square) и/или длину окружности (Length) по заданному радиусу окружности.

Данный проект состоит из:

- поля ввода типа Text_Box с меткой;

- группы из двух флажков типа Check_Box;

- кнопки типа Button.

А также обеспечивает возможность:

- ввода радиуса окружности;

- выбора режима с помощью флажков: подсчет площади круга (Square) и/или длины окружности (Length) по заданному радиусу окружности;

- вывода круга введенного радиуса в центре главного окна.

То есть, для того чтобы программа выполнила представленные перед ней задачи, нужно следовать пошаговой инструкции:

1. Откройте программу.

2. Выберите на панели основного меню команду «Input» (при выборе данной команды открывается диалоговое окно, содержащее величины, необходимые для подсчета).

3. Введите радиус окружности.

4. Выберите нужную величину для подсчета (площадь круга (Square) и/или длину окружности (Length)).

5. Нажмите на кнопку «Send» (при нажатии на данную кнопку данное диалоговое окно закроется).

6. В главном окне выбираете команду «Calc» (при выборе данной команды открывается окно сообщений с результатами).

7. При выборе команды «Draw» в центре главного окна выводится круг введенного радиуса или выдается сообщение, что рисование невозможно (если диаметр превышает размеры рабочей области).

8. При выборе команды «About» открывается диалоговое окно с информацией о разработчике.

9. При выборе команды «Exit» приложение завершает работу.

РАЗДЕЛ 2. РАЗРАБОТКА ПРОГРАММЫ

2.1 Исторические сведения

Окружность -- геометрическая фигура, состоящая из всех точек плоскости, расположенных на заданном расстоянии от данной точки. [1]

Радиус окружности -- это отрезок, соединяющий центр с какой-либо точкой окружности. Все радиусы имеют одну и ту же длину (по определению). [1]

Если у вас нет возможности вычислить радиус окружности математическими приборами, то можно воспользоваться более практичными способами. Например, небольшие окружности можно вычерчивать с помощью бечевы и привязанных на расстоянии длины радиуса двух кольев. Один из них ставится в центр, другим очерчивается граница круга. [2]

Рис. 2.2.1 - Окружность

Установлено, что какой бы ни была окружность (Рис. 2.1), отношение ее длины к диаметру является постоянным числом. Это число принято обозначать буквой р (читается - "пи").[3] Обозначая длину окружности буквой , а ее диаметр буквой d, запишем формулу:

Число р представляет собой соотношение длины окружности к длине ее диаметра и является постоянной величиной. Значение р = 3,1415926 получило применение после работ Л. Эйлера в 1737 г. [4]

Исходя из формулы выше, выведем, чему равна окружность, если известен диаметр (d):

Если известен радиус (r), то формула длины окружности будет выглядеть так:

Площадь окружности можно вычислить через константу р и радиус окружности. [3]

Формула площади круга через радиус выглядит так

2.2 Детальное описание Form1 (главное окно)

Главное окно состоит из меню с командами «Input», «Calc», «Draw», «About», «Exit».

1. «Input» - при выборе данной команды открывается диалоговое окно (Рис. 2.2.2), содержащее величины, необходимые для подсчета.

Рис. 2.2.1 - Окно с величинами

Рис. 2.2.2 - Детальное описание главного окна

Код для данной команды:

private void inputToolStripMenuItem_Click(object sender, EventArgs e)

{

Form2 f = new Form2();

f.ShowDialog();

}

2. «Calc» - при выборе данной команды открывается окно сообщений с результатами (Рис. 2.2.3).

Рис. 2.2.3 - Результаты

Код для данной команды:

private void calcToolStripMenuItem_Click(object sender, EventArgs e)

{

string result = "";

if (Data.Square == true)

{

result = "Square = " + Convert.ToString(Math.PI * (Data.Radius *

Data.Radius)) + "\n";

}

if (Data.Length == true)

{

result += "Length = " + Convert.ToString(2 * Math.PI * Data.Radius);

}

if (result != "")

{

MessageBox.Show(result, "Result");

}

else

{

MessageBox.Show("Вы не выбрали флаги!", "Error");

}

}

3. «Draw» - при выборе данной команды в центре главного окна выводится круг введенного радиуса (Рис. 2.2.4) или выдается сообщение, что рисование невозможно (если диаметр превышает размеры рабочей области (Рис. 2.2.5).

Рис. 2.2.4 - Рисунок круга

Рис. 2.2.5 - Недопустимые значения

Код для данной команды:

private void drawToolStripMenuItem_Click(object sender, EventArgs e)

{

Bitmap image = new Bitmap(pictureBox1.Width, pictureBox1.Height

Graphics g = Graphics.FromImage(image);

if (Data.Radius < 300)

{

g.DrawEllipse(new Pen(Color.Black), 0, 0, Data.Radius, Data.Radius);

}

else

{

g.DrawString("Слишком большой размер", new Font("Microsoft Sans

Serif", 12), new SolidBrush(Color.Black), 0, 0);

}

pictureBox1.Image = image; }

4. «About» - при выборе данной команды открывается диалоговое окно с информацией о разработчике (Рис. 2.2.6).

Рис. 2.2.6 - О программе

Код для данной команды:

private void aboutToolStripMenuItem_Click(object sender, EventArgs e)

{

MessageBox.Show("Работу выполнил студент 2 курса\nCпециальность

'Прикладная математика'\nKолледж экономики и соц.работы\nСтас

Луканев");

}

5. При выборе команды «Exit» приложение завершает работу (Рис. 2.2.7).

Рис. 2.2.7 - Завершение работы программы

Код для данной команды:

private void exitToolStripMenuItem_Click(object sender, EventArgs e)

{

DialogResult dr = MessageBox.Show("Выйти их программы?",

"Предупреждение", MessageBoxButtons.YesNo);

if (dr == DialogResult.Yes)

{

Close();

}

}

2.2.1 Листинг

namespace Program

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void exitToolStripMenuItem_Click(object sender, EventArgs e)

{

DialogResult dr = MessageBox.Show("Выйти их программы?",

"Предупреждение", MessageBoxButtons.YesNo);

if (dr == DialogResult.Yes)

{

Close();

}

}

private void inputToolStripMenuItem_Click(object sender, EventArgs e)

{

Form2 f = new Form2();

f.ShowDialog();

}

private void calcToolStripMenuItem_Click(object sender, EventArgs e)

{

string result = "";

if (Data.Square == true)

{

result = "Square = " + Convert.ToString(Math.PI * (Data.Radius *

Data.Radius)) + "\n";

}

if (Data.Length == true)

{

result += "Length = " + Convert.ToString(2 * Math.PI * Data.Radius);

}

if (result != "")

{

MessageBox.Show(result, "Result");

}

else

{

MessageBox.Show("Вы не выбрали флаги!", "Error");

}

}

private void drawToolStripMenuItem_Click(object sender, EventArgs e)

{

Bitmap image = new Bitmap(pictureBox1.Width, pictureBox1.Height);

Graphics g = Graphics.FromImage(image);

if (Data.Radius < 300)

{

g.DrawEllipse(new Pen(Color.Black), 0, 0, Data.Radius, Data.Radius);

}

else

{

g.DrawString("Слишком большой размер", new Font("Microsoft Sans

Serif", 12), new SolidBrush(Color.Black), 0, 0);

}

pictureBox1.Image = image;

}

private void aboutToolStripMenuItem_Click(object sender, EventArgs e)

{

MessageBox.Show("Работу выполнил студент 2 курса\nCпециальность

'Прикладная математика'\nKолледж экономики и соц.работы\nСтас

Луканев");

}

}

}

2.3 Детальное описание Form2

1 - «Radius» - поле ввода типа Text_Box с меткой, для ввода радиуса окружности. Был создан класс Data для обмена данными.

Рис. 2.3.1 - Детальное описание

Код для данного поля ввода:

public static int Radius { get; set; } //радиус

Data.Radius = Convert.ToInt32(textBox1.Text);

Конвертируем из строкового формата в int и присваиваем значение значению Radius класса Data.

2 - выбор режима с помощью флажков типа Check_Box: подсчет площади круга (Square) и/или длины окружности (Length) по заданному радиусу окружности.

public static bool Square { get; set; } //статус первого чекбокса

public static bool Length { get; set; } //статус второго чекбокса

Код для данных режимов:

Data.Square = checkBox1.Checked;

Data.Length = checkBox2.Checked;

3 - «Send» - при нажатии на эту кнопку производятся все расчеты и данное диалоговое окно закрывается.

Код для данной кнопки:

private void button1_Click(object sender, EventArgs e)

{

try

{

Data.Radius = Convert.ToInt32(textBox1.Text); Data.Square =

checkBox1.Checked;

Data.Length = checkBox2.Checked;

Close();

}

catch (FormatException)

{

MessageBox.Show("Неверный ввод данных!", "Error");

}

}

2.3.1 Листинг

namespace Program

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

try

{

Data.Radius = Convert.ToInt32(textBox1.Text);

Data.Square = checkBox1.Checked;

Data.Length = checkBox2.Checked;

Close();

}

catch (FormatException)

{

MessageBox.Show("Неверный ввод данных!", "Error");

}

}

}

}

2.4 Предотвращение ошибок

1. При выборе команды «Calc» открывается окно сообщений с результатами.

Но для начала нам нужно определить выбраны ли пользователем какие-то величины, если выбран хотя бы один из пунктов, то выводим окно с результатами:

if (result != "")

{

MessageBox.Show(result, "Result");

}

Если ни один из пунктов не выбран - то выводим окно ошибки (Рис. 2.4.1):

else

{

MessageBox.Show("Вы не выбрали флаги!", "Error");

}

Рис. 2.4.1 - Ошибка

Задаем строку, которая будет выводиться: string result = "";

Далее смотрим какие выбраны величины:

o если выбран пункт «Square» (Площадь), то задаем условие (Рис. 2.4.2):

if (Data.Square == true)

{

result = "Square = " + Convert.ToString(Math.PI * (Data.Radius *

Data.Radius)) + "\n";

}

Рис. 2.4.2 - Площадь

o если выбран пункт «Length» (Длина окружности), то задаем условие (Рис. 2.4.3):

if (Data.Length == true)

{

result += "Length = " + Convert.ToString(2 * Math.PI * Data.Radius);

}

Рис. 2.4.3 - Длина окружности

2. «Draw» - при выборе данной команды в центре главного окна выводится круг введенного радиуса или выдается сообщение, что рисование невозможно (если диаметр превышает размеры рабочей области).

Чтобы нарисовать круг необходимо для начала создать холст по размерам pictureBox:

Bitmap image = new Bitmap(pictureBox1.Width, pictureBox1.Height);

Далее подключаем графику:

Graphics g = Graphics.FromImage(image);

Также нам нужно проверить, подойдет ли по размерам заданный круг в pictureBox, для этого задаем условие:

if (Data.Radius < 300)

Если подходит - рисуем круг (Рис. 2.4.4):

if (Data.Radius < 300)

{

g.DrawEllipse(new Pen(Color.Black), 0, 0, Data.Radius, Data.Radius);

}

Рис. 2.4.4 - Рисунок

Если не подходит - пишем в pictureBox предупреждение(Рис. 2.4.5):

else

{

g.DrawString("Слишком большой размер", new Font("Microsoft Sans

Serif", 12), new SolidBrush(Color.Black), 0, 0);

}

И выводим результат (либо рисунок, либо предупреждение):

pictureBox1.Image = image;

Рис. 2.4.5 - Предупреждение

3. «Send» - при нажатии на эту кнопку производятся все расчеты и данное диалоговое окно закрывается.

Мы выполняли операции в безопасном блоке try, чтобы при наличии ошибки при вводе значений, программа вела себя достойно.

try

{

Data.Radius = Convert.ToInt32(textBox1.Text); Data.Square =

checkBox1.Checked;

Data.Length = checkBox2.Checked;

Close(); //закрываем окно

}

Если же произошел ввод неверных значений, например, буквы (вместо цифр), программа выдает ошибку (Рис. 2.4.6):

catch (FormatException)

{

MessageBox.Show("Неверный ввод данных!", "Error");

}

Рис. 2.4.6 - Ошибка

программа площадь длина окружность

РАЗДЕЛ 3. ПРИМЕРЫ РЕШЕНИЯ

Пример 1. Дан радиус окружности r = 90 см. Найти:

1) Площадь круга;

2) Длину окружности.

Решение:

1) Вводим значение радиуса (Рис. 3.1):

Рис. 3.1 - Радиус

Затем ставим флажок напротив нужной величины (Площадь):

Рис. 3.2 - Флажок напротив нужной величины (Площадь)

Нажимаем на кнопку «Send», данное окно закроется. Перед нами предстанет главное окно, где мы сможем:

a) кликнуть по команде «Calc» и получить результат (Рис. 3.3):

Рис. 3.3 - Результат

b) кликнуть по команде «Draw» и получить рисунок (если радиус не превышает размеры рабочей области), (Рис. 3.4):

Рис. 3.4 - Рисунок

2) Вводим значение радиуса, далее выбираем нужную для вычисления величину (длина окружности), (Рис. 3.5):

Рис. 3.5 - Выбрана длина окружности

Нажимаем на кнопку «Send», данное окно закроется. Перед нами предстанет главное окно, где мы сможем кликнуть по команде «Calc» и получить результат (Рис. 3.6):

Рис. 3.6 - Результат

ВЫВОДЫ

Разработка этого проекта помогла мне детально разобраться и научиться более качественно работать в Windows.Forms-приложениях.

Эта программа считает площадь круга (Square) и/или длину окружности (Length) по заданному радиусу окружности.

Данный проект состоит из:

o поля ввода типа Text_Box с меткой;

o группы из двух флажков типа Check_Box;

o кнопки типа Button.

А также обеспечивает возможность:

o ввода радиуса окружности;

o выбора режима с помощью флажков: подсчет площади круга (Square) и/или длины окружности (Length) по заданному радиусу окружности;

o вывода круга введенного радиуса в центре главного окна.

Как вы уже заметили, данный проект весьма актуальный и удобный для подсчета площади круга (Square) и/или длины окружности (Length) по заданному радиусу окружности.

ЛИТЕРАТУРА

1. ГлавСправ. Образование. [Електронный ресурс]

2. Как просто. Електронный журнал. [Електронный ресурс]

3. 2mb. Познавательный журнал. [Електронный ресурс]

4. Школьный помощник. Познавательный журнал. [Електронный ресурс]

Размещено на Allbest.ru


Подобные документы

  • Общие положения по программированию в интерфейсе Windows Forms. Среда разработки MicrosoftVisualStudio, ее главные особенности и характеристика. Создание эмулятора пункта меню Microsoft Office Word "Формат-Шрифт" с использованием интерфейса Windows Forms.

    курсовая работа [3,4 M], добавлен 26.01.2013

  • Описание платформы NET Framework. База данных Microsoft Access. Разработка Windows приложения. Модель программирования Windows Forms. Функциональное назначение программы. Входные и выходные данные. Требования к техническому и программному обеспечению.

    курсовая работа [2,2 M], добавлен 15.03.2015

  • Разработка проекта с помощью встроенных средств языка C#, на базе сетевого стека и сетевых функций Windows. Специфика создания удобного интерфейса программы с использованием Windows Forms, которая способна пересылать данные на удалённый компьютер.

    курсовая работа [162,6 K], добавлен 16.06.2013

  • Описание предметной области коучинга, его основные понятия. Разработка, реализация прикладной программы на базе WindowsForms. Описание пользовательских классов и реализованных форм. Описание принципа работы программы, структур хранения и получения данных.

    курсовая работа [1,3 M], добавлен 09.09.2012

  • Программирование логических игр с помощью подходов СИИ. Методы работы с Windows Forms в языке С#, алгоритм поиска в пространстве состояний. Формализация дерева состояний. Описание использованных алгоритмов. Иерархическая схема и блок-схемы программы.

    курсовая работа [1,7 M], добавлен 01.12.2015

  • Разработка программного приложения Windows Forms для работы с базой данных на языке высокого уровня в автономном режиме с использованием ADO.NET. Создание консольных приложений (варианты метода Main), выполнение запросов к SQL серверу и листинг программ.

    курсовая работа [2,4 M], добавлен 16.06.2014

  • Программирование и структура программы на языке Turbo Pascal и MS Visual C++6.0. Вычисление площади круга. Реализация программы в системе Turbo Pascal и MS VISUAL C++6.0 для Windows. Структура окна ТРW. Сохранение текста программы в файле на диске.

    лабораторная работа [3,7 M], добавлен 22.03.2012

  • Программа операционной системы. Перемещение и копирование объектов. Окна Windows, операционное меню, настройка свойств папки, вызов справки Windows. Работа с дисками, папками и файлами, с приложениями и документами. Стандартные программы Windows.

    контрольная работа [21,9 K], добавлен 29.01.2011

  • Описание общего алгоритма и интерфейса программы. Метод заполнения массива случайными числами. Метод вычисления длины линии между пространственными точками. Создание, синхронизация и завершение потоков. TThread как абстрактный класс, листинг программы.

    курсовая работа [664,0 K], добавлен 08.04.2014

  • Реализация информационно-справочной системы "Отдел кадров" на языке программирования, с использованием технологии сериализации объектов. Средства конструктора баз данных Windows Forms. Обработка информации и соответствующие организационные ресурсы.

    отчет по практике [95,7 K], добавлен 09.08.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.