- Пример решения задачи, вычисляющей характеристики геометрических фигур с использованием делегатов
- Содержание
- Условие задачи
- Соображения
- Выполнение
- 1. Запустить Microsoft Visual Studio . Создать проект (приложение) по шаблону Windows Forms Application
- 2. Разработка формы приложения
- 3. Написание программного кода
- 4. Запуск программы на выполнение
- Создание простых геометрических фигур в C++/SFML
- Круги
- Регулярные полигоны
- Создание графического калькулятора
- 📸 Видео
Видео:Задача 7. Найти длину окружности и площадь круга - #shortsСкачать
Пример решения задачи, вычисляющей характеристики геометрических фигур с использованием делегатов
Данный пример демонстрирует использование делегатов языка C# для решения задачи, в которой вычисляются характеристики геометрических фигур. Пример предназначен исключительно для изучения работы делегатов.
Содержание
- Условие задачи
- Соображения
- Выполнение
- 1. Запустить Microsoft Visual Studio . Создать проект (приложение) по шаблону Windows Forms Application
- 2. Разработка формы приложения
- 3. Написание программного кода
- 3.1. Объявление типа делегата
- 3.2. Объявление методов вычисления характеристик геометрических фигур
- 3.3. Программирование события Click , которое вызывается при клике на кнопке button1 (вариант 1)
- 3.4. Программирование события Click , которое вызывается при клике на кнопке button1 (вариант 2)
- 3.5. Текст модуля Form1.cs
- 4. Запуск программы на выполнение
- Связанные темы
Поиск на других ресурсах:
Условие задачи
В приложении типа Windows Forms Application объявить тип делегата, который ссылается на метод. Требования к сигнатуре метода следующие:
- метод получает входным параметром переменную типа double ;
- метод возвращает значение типа double , которое есть результатом вычисления.
Реализовать вызов методов с помощью делегата, которые получают радиус R и вычисляют:
- длину окружности по формуле D = 2 * π* R;
- площадь круга по формуле S = π* R²;
- объем шара. Формула V = 4/3 * π * R³.
Методы должны быть объявлены как статические (с ключевым словом static ).
Соображения
Для работы программы выбираем следующие имена:
- название типа делегата – CalcFigure ;
- название делегата (объекту) – CF ;
- название метода, который вычисляет длину окружности – Get_Length() ;
- название метода, который вычисляет площадь круга – Get_Area() ;
- название метода, который вычисляет объем шара – Get_Volume() .
Объявление типа делегата и методов осуществляется в классе Form1 главной формы приложения типа Windows Forms Application .
Выполнение
1. Запустить Microsoft Visual Studio . Создать проект (приложение) по шаблону Windows Forms Application
Создать проект по шаблону Windows Forms Application . Имя модуля главной формы «Form1.cs» . Имя проекта можно задать, например, «Delegates01» . Имя экземпляра объекта формы приложения Form1 .
Пример создания проекта по шаблону Windows Forms Application подробно описывается в теме:
Окно новосозданной формы приложения изображено на рисунке 1.
Рис. 1. Окно главной формы приложения Form1
После создания проекта текст модуля основной формы приложения следующий:
2. Разработка формы приложения
Разместить на форме приложения следующие элементы управления:
- четыре элемента управления типа Label . В результате будет создано 4 экземпляра (объекта) класса Label с именами label1 , label2 , label3 , label4 ;
- элемент управления типа TextBox с именем textBox1 ;
- элемент управления типа Button с именем button1 .
С помощью окна Properties настроить следующие свойства элементов управления:
- в элементе управления label1 свойство Text = «R = « ( label1.Text = «R = « );
- label2.Text = «Длина окружности = « ;
- label3.Text = «Площадь круга = « ;
- label4.Text = «Объем шара = « ;
- в элементе управления Form1 (главная форма) свойство Text = «Расчет» ;
- в Form1 свойство StartPosition = CenterScreen ;
- в элементе управления button1 свойство Text = «Вычислить» .
После выполненных действий, форма приложения будет иметь вид как изображено на рисунке 2.
Рис. 2. Форма приложения после настройки и размещения элементов управления
3. Написание программного кода
3.1. Объявление типа делегата
В соответствии с соображениями, тип делегата носит имя CalcFigure и объявляется в классе Form1 (файл «Form1.cs» ) перед конструктором формы Form1() . Текст объявления делегата следующий:
При объявлении типа делегата используется ключевое слово delegate .
3.2. Объявление методов вычисления характеристик геометрических фигур
Методы объявляются в классе формы после реализации конструктора формы Form1() . В соответствии с условием задачи, методы в классе объявляются как статические с ключевым словом static .
После объявления методов текст модуля «Form1.cs» имеет вид:
3.3. Программирование события Click , которое вызывается при клике на кнопке button1 (вариант 1)
Следующий шаг – программирование события клика на кнопке «Вычислить» (элемент управления button1 ).
Текст обработчика события клика на кнопке button1 следующий:
Объясним некоторые фрагменты кода.
Радиус окружности считывается во внутреннюю переменную radius . Преобразование из строки в текст осуществляется с помощью класса Convert (метод ToDouble() ).
Следующим шагом строится делегат с именем CF . Этот делегат инициализируется значением Get_Length . Это означает, что делегат ссылается на метод Get_Length() .
На следующих шагах происходит переопределение делегата CF соответственно методами Get_Area() и Get_Volume() .
Следующий пункт отображает другой вариант реализации обработчика события.
3.4. Программирование события Click , которое вызывается при клике на кнопке button1 (вариант 2)
Обработчик события клика на кнопке button1 может иметь и другую реализацию, которая есть более наглядной и упрощенной.
В этом случае происходит так называемое групповое преобразование делегированных методов. При таком преобразовании ключевое слово new опускается. Программный код упрощается.
3.5. Текст модуля Form1.cs
Текст всего модуля Form1.cs решения данной задачи (вариант 2) имеет вид:
4. Запуск программы на выполнение
Окно программы после запуска изображено на рисунке 3.
Видео:Длина окружности. Математика 6 класс.Скачать
Создание простых геометрических фигур в C++/SFML
Обновл. 22 Фев 2021 |
Ты всю жизнь ощущал, что мир не в порядке. Странная мысль, но её не отогнать. Она — как заноза в мозгу. Она сводит с ума, не дает покоя. Это и привело тебя ко мне… Примешь синюю таблетку — и сказке конец. Ты проснешься в своей постели и поверишь, что это был сон. Примешь красную таблетку — войдешь в страну чудес. Я покажу тебе, насколько глубока библиотека SFML кроличья нора.
Видео:Длинна окружности на языке C#Скачать
Круги
Предлагаю для начала потренироваться на простых геометрических фигурах типа Михаила круга. В этом деле большую помощь нам окажет класс CircleShape:
конструктор данного класса принимает в качестве параметра радиус нашей будущей фигуры (например, circle(50.f) );
закрасить фигуру можно с помощью метода setFillColor() , который очень похож на уже знакомый нам метод window.clear() ;
ну и для отображения круга в окне используется метод window.draw() .
Результат выполнения программы:
Наша фигура может иметь контур. Для его создания используется метод setOutlineThickness(), а для цвета контура — setOutlineColor():
Результат выполнения программы:
Как уже знаем из предыдущего урока, при закрашивании фигур или фона можно еще указать значение прозрачности. Например, строкой setOutlineColor(Color(80, 220, 50, 150)) мы устанавливаем 150 в качестве значения прозрачности контура:
А теперь с помощью строки setOutlineColor(Color(80, 220, 50, 50)) мы установим 50 в качестве значения прозрачности контура:
Вы уже наверняка заметили, что наш круг выходит за границы окна, а это не совсем хорошо. Нужно его немного подвинуть, а поможет нам в этом метод move():
Результат выполнения программы:
Видео:Вычисление площади круга и длинны окружности по заданному радиусу в Паскаль с применением константыСкачать
Регулярные полигоны
-Welcome to the real world!
Отлично! Сейчас мы рассмотрим, как нарисовать и другие фигуры. Теперь ты готов узнать истину. Она заключается в том, что, на самом деле, ложки не существует, Нео твой круг — это немножко не круг, а многоугольник. Да-да, самый обычный многоугольник с большИм количеством вершин. Всё дело в том, что у конструктора класса CircleShape есть еще и второй параметр (помимо радиуса), который отвечает за количество вершин у создаваемой фигуры, и он по умолчанию равен 30 . Именно при значениях близких к 30, многоугольник становится мало отличимым от круга. В то же время, задавая этот параметр самостоятельно, мы можем получить абсолютно другие геометрические элементы. Не трудно догадаться, что 3 вершины — это треугольник, 4 вершины — квадрат, 5 вершин — пятиугольник, ну а 8 вершин — восьмиугольник (октагон).
Ниже приведен полный код матрицы программы, которая наглядно покажет создание данных фигур:
Видео:Настройка консольного окна в Visual Studio. Программирование на С++ для начинающих. Урок 2Скачать
Создание графического калькулятора
В статье “Делаем консольный калькулятор.” мы создавали небольшой калькулятор, который работает в консоли. В этой статье пришло время научиться создавать графический калькулятор на языке C# с помощью Windows Forms.
Сам по себе калькулятор довольно прост, но если вы совсем новичок в создании подобных приложений, тогда будет посложнее. Разработку калькулятора начнем с разработки формы (Windows Forms) приложения. Запускаем Visual Studio и создаем проект:
Интерфейс созданного проекта должен выглядеть так:
На интерфейсе мы видим: слева панель элементов для нашей формы, справа обозреватель решений и свойства выбранной формы/элемента и по середине виден сам конструктор с формой (по умолчанию он имеет имя “Form1”).
На форму нужно поместить кнопки, текстовое поле, а также надпись. Надпись нужна, чтобы пользователь видел первый операнд. Когда введет нужную цифру, нажмет кнопку, например “+”, надпись будет содержать введенное значение.
Все нужные элементы можно найти слева в панели элементов. Чтобы найти текстовое поле просто введите в поиске “textBox” и с помощью мышки перенесите его на свою форму. Для добавления кнопок просто введите в поиске “Button” и перенесите нужное количество кнопок на свою форму. Также добавьте на “ListBox” один пустой “Label”:
Изменять свойства формы можно с помощью окна “Свойства” справа внизу. Для этого нажмите на нужную форму, например “Button1” и поменяйте ему свойство “text” на “С”:
Добавьте все нужные кнопки. Измените свойство “Font” для элементов TextBox и Label. Цвет кнопок и имя программы меняйте на свое усмотрение.
С помощью “MultiLine” измените ширину элемента TextBox:
В итоге у нас получилось 19 кнопок Button, 1 TextBox и ещё 1 пустой Label:
Теперь посмотрим, как работает калькулятор. Мы используем четыре члена класса. Напишем их в самое начало программы:
Первые два – это наши операнды, a и b. Третий – это выбранный пользователем оператор. Четвертый – признак знака. Запрограммируем обработчик кнопки “+/-“, изменяющий знак числа. Для этого в форме нажмите на нужную кнопку два раза. Visual Studio переведет вас в нужную секцию кода:
В фигурных скобках пишем код:
Если znak=true, мы меняем знак операнда в textBox1, а если false, то знак числа удаляется из текстового поля.
Для каждой цифровой кнопки обработчик будет следующий:
На основе этого кода повесьте на цифровые кнопки от 0 до 9 обработчик событий. Нажмите на нужную цифровую кнопку и впишите код.
Обработчик кнопки операторов “+, -, *, /”. Нажмите на нужную кнопку с оператором и впишите код.
В данном коде мы в переменную “a” записываем значение из текстового поля, попутно преобразовав его в float посредством вызова метода float.Parse(). Далее мы очищаем текстовое поле, чтобы можно было вводить второй операнд. oper = 1 означает присвоение номера оператора (для + – это 1 и так далее по увеличению). Далее заносим в надпись информацию об операнде и операторе.
Обработчик кнопки “,” добавляет запятую в текстовое поле:
Далее нам понадобится создать функцию, которая будет применять нужные нам математические операции к числам. Назовём её calculate. Но перед этим мы кликнем дважды на кнопку “=” на форме и в коде к ней мы запишем:
При нажатии пользователем на кнопку “=” выполнится функция подсчёта calculate, и, заодно, очистится Label, так как результат мы в будущем коде выведем в TextBox.
Здесь мы используем конструкцию switch-case. Нам осталось обработать две кнопки:
Обработчик кнопки “С”. Данная кнопка будет очищать все записи из TextBox’a и Label’a. Код кнопки:
Кнопка “
📸 Видео
Задача 4. Найти длину окружностиСкачать
Задача 7. ООП с коструктором. Найти длину окружности и площадь кругаСкачать
Длина окружности. Площадь круга - математика 6 классСкачать
Создание шаблонов кода С++ для Visual Studio 2019 #5Скачать
how to enable visual studio line numbering / как включить нумерацию строк visual studioСкачать
Visual Studio 97Скачать
Программа вычисления площади треугольника на языке Си.Скачать
Топ-5 расширений Visual Studio Code нужных в работеСкачать
Полное удаление Visual Studio CodeСкачать
2023 Programing in HTML \CSS I’m visual studios #coding #html #css #webСкачать
Гайд по Визуальному конструктору классов | Visual Studio | Class DesignerСкачать
УСТАНОВКА VISUAL STUDIO 2022 ЗА 2 МИНУТЫСкачать
ТОП 10 расширений для Visual Studio CodeСкачать
Простейший пример использования отладчика в Visual Studio (C#)Скачать