Этапы разработки программы
1) Запустить среду разработки Borland C++ Builder.
2) Сохранить заголовочный файл и файл реализации в отдельной папке
под именем «U_work1». Для этого в разделе меню «File» выбрать команду «Save As…» и в открывшемся диалоговом окне сначала создать папку, затем написать имя файла и нажать кнопку «Сохранить». В результате будут сохранены оба файла.
3) В Палитре компонентов открыть страницу «Standard», нажав на со-
ответствующую вкладку Палитры. На данной странице Палитры компонентов найти компонент Panel (панель), навести на него курсором мыши, и нажать один раз левую кнопку мыши. Определить компонент можно по всплывающей подсказке, если задержать на некоторое время курсор мыши на значке компонента.
После этого переместить курсор мыши в нужную часть формы Form1 и
повторно нажать левую кнопку мыши. В результате этих действий на форму будет помещена панель Panel1.
4) Аналогичным образом разместить на форме справа от панели Panel1
панель Panel2.
5) Разместить на панели Panel1:
– три компонента типа Label (Label1-Label3);
– три компонента типа Edit (Edit1-Edit3);
– два компонента типа Button (Button1, Button2).
Разместить на панели Panel2:
– четыре компонента типа Label (Label4-Label7);
– два компонента типа Edit (Edit4, Edit5);
– один компонент типа Button (Button3).
7) Перейти в Инспекторе объектов к свойствам панели Panel1. Найти свойство панели Caption (надпись, отображаемая в центре панели) и стереть соответствующее ему значение. То же самое проделать и с панелью Panel2.
8) Перейти к свойствам компонента Label1 и изменить его свойство
Caption (отображаемая надпись) на значение «Значение Х1».
Сменить надпись компонента Label2 на значение «Значение Y1».
Сменить надпись компонента Label3 на значение «Результат».
9) С помощью свойства Name кнопки Button1 изменить ее имя на
Umn_But. При смене имени компонента желательно, чтобы это имя было осмысленным, коротким и содержало в себе часть названия компонента. Это во многом способствует скорости создания приложения, так как по имени компонента можно быстро восстановить его назначение и функциональные особенности.
Изменить надпись на кнопке (свойство Caption) на значение «Умно-
жить».
10) Изменить имя кнопки Button2 на Div_But, а надпись на «Делить».
11) Изменить имя кнопки Button3 на Calc_But, а надпись на «Вычис-
лить».
12) Аналогично с пунктом 8 изменить надпись на компонентах Label4,
Label5, Label6. Надписи сделать «Значение Х2», «Значение Y2» и «Резуль-
тат» соответственно.
13) Стереть значение надписи Label7. При этом компонент станет не-
видимым.
Изменить имя данного компонента (свойство Name) на Res_Lab.
14) Изменить имя компонента Edit1 на X1_Edit (свойство Name), сте-
реть значение свойства Text данного компонента (отображаемый текст).
Стереть значения свойства Text у компонентов Edit2, Edit3, Edit4 и
Edit5.
Изменить имя компонента Edit2 на Y1_Edit, имя компонента Edit3 на
Res_Edit, имя компонента Edit4 на X2_Edit, а имя компонента Edit5 на
Y2_edit.
15) Сохраняем.
16) Созданное приложение пока что не выполняет никаких действий,
если не считать отображение интерфейса. Для того чтобы приложение выполняло действия, надо написать обработчики событий.
Компоненты, размещенные на панели Pane1, будут иметь следующие
назначения. Поле для ввода текста X1_Edit нужно для ввода числа X, поле Y1_Edit
– для ввода числа Y. Текстовое поле Res_Edit, расположенное внизу панели, будет отображать результат выполнения арифметической операции.
Назначение кнопок понятно из надписей. При нажатии на кнопку «Ум-
ножить» нужно вычислить произведение X*Y, а результат поместить в компоненте Res_Edit. При нажатии на кнопку «Делить» необходимо произвести деление X/Y, а результат также поместить в компонент Res_Edit.
17) Ввести в программу необходимые переменные. Для этого необхо-
димо перейти в Редактор кода на страницу с заголовочным файлом
«U_work1.h». В разделе public конструктора класса TMainForm введем три переменных типа double:
double X; //переменная X
double Y; //переменная Y
double Result; //переменная для результата
Расположить их можно сразу после прототипа конструктора формы,
т.е. после заголовка функции TMainForm(TComponent* Owner).
18) Теперь нужно создать обработчик нажатия кнопки «Умножить».
Для этого перейти в окно Инспектора объектов (Object Inspector) и выбрать в нем компонент Umn_But (т.е. кнопку). После этого открыть страницу Events, нажав соответствующую вкладку.
На данной странице найти событие OnClick и в пустой ячейке справа
сделать двойной щелчок левой кнопкой мыши. В данной ячейке появится надпись Umn_ButClick. При этом в окне Редакторе кода на странице файла реализации «Unit1.cpp» появится заготовка обработчика, имеющая следующий вид:
void __fastcall TMainForm::Umn_ButClick(TObject *Sender)
{
}
Теперь можно приступать к описанию тела обработчика, т.е. вводить
необходимые операторы внутри фигурных скобок.
19) Сначала необходимо переменным X и Y присвоить значения, которые введены в поля X1_Edit и Y1_Edit. Значения, вводимые во время выполнения в данные поля, являются текстом. Нельзя просто присвоить переменной типа double текстовое значение, нужно выполнить преобразование из текста в формат с плавающей запятой, воспользовавшись специальной функцией StrToFloat(AnsiString S):
X = StrToFloat(X1_Edit–>Text);
Y = StrToFloat(Y1_Edit–>Text);
20) Объявленной в заголовочном файле переменной Result необходимо
присвоить произведение X*Y, и после этого вывести значение переменной Result в поле Res_Edit.
Для вывода значения необходимо присвоить свойству Text компонента
Res_Edit значение переменной Result, проведя при этом преобразование из формата double к типу AnsiString посредством функции FloatToStr(double Value):
Result = X*Y;
Res_Edit–>Text = FloatToStr(Result);
21) Сохраняем и можно проверить программу.
22) Таким же способом делаем кнопку делить. Заменяем умножение делением чтобы наш вод принял вид:
Result = X/Y;
Res_Edit–>Text = FloatToStr(Result);
23) Добавить в обработчик нажатия кнопки «Делить» проверку значе-
ния переменной Y на 0 с выводом сообщения. Для этого после присвоения переменной Y значения необходимо воспользоваться условным оператором if следующим образом:
if (Y == 0) //если Y равно 0
{//Вывод сообщения
Application–>MessageBoxA(“Деление на 0!”, “Ошибка”, MB_OK);
return; //выход из обработчика
}
В приведенном примере при переменной Y = 0 будет выведено сообщение, показанное на рисунке 1.8. После нажатия пользователем кнопки «OK», будет осуществлен выход из обработчика посредством оператора return. В данном случае этот оператор не возвращает никакого значения, т.к. этого не требует тип функции обработчика, записанный в заголовке (тип void).
24) Создать обработчик нажатия кнопки «Вычислить». При этом в качестве значений X и Y использовать соответствующие компоненты, расположенные на панели Panel2.
Результат вывести в надписи компонента Res_Lab. Для обращения к
свойству Caption (тип AnsiSting) данного компонента необходимо использовать конструкцию Res_Lab–>Caption.
Вариант вычислений брать из таблицы в контрольной работе , которая соответсвует вашему варианту.
Код функции будет выглядеть следующим образом:
//---------------------------------------------------------------------------
void __fastcall TMainForm::Calc_butClick(TObject *Sender)
{
X = StrToFloat(X2_Edit->Text);
Y = StrToFloat(Y2_Edit->Text);
Result = (Y+(2*X))/((5*X)+(Y*Y)) ;//Формула из варианта
Res_Lab->Caption = FloatToStr(Result);
}
//---------------------------------------------------------------------------
25)Результат будет выглядеть вот так:
Заключение
В заключении можно сказать, что Мы ознакомились с программой и узнали:
Ø ИСР Borland C++ Builder предназначен для написания прикладного и системного программного обеспечения;
Ø Обработчик событий – это процедура, которая вызывается в ответ на событие;
Ø Одноместные операции называются так потому, что их аргументом является один операнд, к таким операция относят инкремент и декремент. Эти 8 операции можно совершать только над переменными, но не над константами;
Ø Двуместные операции Си выполняются над двумя аргументами.(х*у);
Ø Функции прописываются через редактор кодов (Например #имя_директивы лексемы_препроцессора);
Ø Прототипом функции в языке Си или C++ называется объявление функции, которое не содержит тело функции, но указывает имя функции, арность, типы аргументов и возвращаемый тип данных. В то время как определение функции описывает, что именно делает функция, прототип функции может восприниматься как описание её интерфейса.
В прототипе имена аргументов являются необязательными, тем не менее, необходимо указывать тип вместе со всеми модификаторами (например, указатель ли это или константный аргумент);
Ø Сделали с помощью программы калькулятор.
Список литературы:
1.А.Нейбауэр Моя первая программа на С++.
2. Бьярн Страуструп - Язык программирования C++ .
3. Бьярн Страуструп - Язык программирования С++. Специальное издание
4. Герберт Шилдт - C++. Руководство для начинающих .
5. Г. Шилдт - Самоучитель C++