C++. Пример разработки приложения определения объема цилиндра в C++ Builder




Пример разработки приложения определения объема цилиндра

Условие задачи

Дан радиус R и высота цилиндра H. Разработать приложение, которое определяет объем цилиндра. Приложение реализовать как «VCL Forms Application«.

 Формула объема цилиндра:

05_01_00_007_formulaгде R — радиус круга цилиндра; H — высота цилиндра.

Выполнение

1. Запустить Borland C++ Builder

Создать проект по шаблону VCL Forms Application. Сохранить проект.

 

2. Создание формы

Вынести на форму следующие компоненты:
– три компонента типа TLabel (для вывода текста «R = «, «H = «, «V = «);
– два компонента типа TEdit (поле ввода) для ввода значений радиуса и высоты;
– один компонент типа TButton для начала процесса расчета.

Компоненты типа TLabel, TButton и TEdit размещаются на форме в вкладыше Standard палитры компонент Tool Palette (рис. 1).

05_01_00_007_01_

Рис. 1. Компонент TLabel, TButton и TEdit на палитре инструментов

 

2.1. Компонент TLabel.

После вынесения компонента на форму автоматически создается объект-переменная с именем Label1. По желанию, это имя можно изменить в свойства Name в Object Inspector (рис. 2). То же относится и к другим компонентам (TButton, TEdit и т.д.).

 Изменяем свойства компонент

Задаем название текста сообщения в Label1 путем изменения свойства Caption на значение «R = » (рис. 2).

05_01_00_007_02_

Рис. 2. Установление текста «R = » в компоненте Label1

 После выполненных действий форма приложения примет вид, как показано на рисунке 3.

05_01_00_007_03_

Рис. 3. Форма приложения в режиме проектирования

 Так же размещаем на форме компонент типа TLabel с именем Label2. В свойство Caption заносим текст «H = «. Форма приложения имеет вид как показано на рисунке 4.

05_01_00_007_04_

Рис. 4. Форма приложения после вынесения компонент Label1 и Label2

 

2.2. Компонент TEdit.

Размещаем на форме два компонента типа TEdit. Автоматически создаются два объекта-переменные с именами Edit1 и Edit2.

Изменяем свойство Text компонентов Edit1 и Edit2 таким образом, чтобы текст отсутствовал.

В результате выполненных действий форма приложения имеет следующий вид (рис. 5).

05_01_00_007_05_

Рис. 5. Форма приложения с вынесенными компонентами Edit1 и Edit2

 

2.3. Компонент TButton.

Размещаем на форме компонент типа TButton. Создается объект-переменная с именем Button1.

В свойство Caption компонента Button1 заносим текст «Calculation» (рис. 6).

05_01_00_007_06_

Рис. 6. Изменение свойства Caption компонента Button1

 

2.4. Вывод результата.

Результат будет выводиться в компоненте типа TLabel. В свойство Caption заносим значения «V = «.

Перед внесением программного кода форма приложения будет иметь вид как показано на рисунке 7.

05_01_00_007_07_

Рис. 7. Форма приложения после выполненных операций

 

2.5. Изменение названия формы

Выделяем форму (активизируем Form1 в Object Inspector). Изменяем текст названия формы с помощью свойства Caption (рис. 8).

05_01_00_007_08_

Рис. 8. Изменение названия формы в свойстве Caption

 

3. Программирование события клика на кнопке «Calculation«.

Следующим шагом есть программирование фрагмента кода, который будет вызываться после того, как пользователь нажмет на кнопке Calculation.

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






Для вызова фрагмента кода обработки события последовательность шагов следующая:

  • выделить компонент Button1;
  • в палитре инструментов «Tool Palette» перейти в вкладыш «Events«;
  • сделать двойной клик напротив названия события «OnClick«.

В результате C++ Builder сгенерирует следующий код:

void __fastcall TForm1::Button1Click(TObject *Sender)
{

}

 Между фигурными скобками вносим текст расчета объема цилиндра. В целом обработчик события будет иметь следующий вид:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  double r, h, v;
  const double pi = 3.1415;
  r = StrToFloat(Edit1->Text); // чтение значения R
  h = StrToFloat(Edit2->Text); // чтение значения H
  v = pi*r*r*h;
  Label3->Caption = "V = " + FloatToStrF(v,ffFixed,8,2);
}

Объясним некоторые фрагменты кода.

 Получение входных значений r и h берется из строк ввода Edit1->Text и Edit2->Text. Поскольку, переменные r и h есть типа double, а свойства Edit1->Text и Edit2->Text есть строчного типа, то для корректного присвоения используется функция преобразования StrToFloat.

 Обратное преобразование из числового в строчный тип осуществляет функция FloatToStr. Эта функция получает входное значение (переменная v) и превращает его в строчный тип соответственно заданному формату. В нашем случае задан фиксированный формат – ffFixed. Также задаются точность (2 знаки после запятой) и ширина вывода (8 знаков).

4. Запуск приложения на выполнение

 Запуск приложения на выполнение осуществляется клавишей F9 или выбором команды Run из меню Run. Результат работы приложения показан на рисунке 9.

05_01_00_007_09_

Рис. 9. Выполнение приложения

Похожие темы:

Delphi — Программа расчета площади круга и объема шара.

C# — Пример создания Web-приложения в MS Visual Studio.