Добавлен: 17.06.2023
Просмотров: 963
Скачиваний: 4
СОДЕРЖАНИЕ
Основы теории языков программирования
1.2. Классификации языков программирования
2. Характеристика современных языков программирования
2.1. Язык программирования С++
2.2. Язык программирования Java
3. Создание графического приложение на языке программирования высокого уровня
3.1. Интегрированная среда разработки C++ Builder
Аналогично, с помощью флажков можно выбрать несколько смазочных материалов и ввести их количество. После нажатия на кнопку «Заказать» в всплывающем окне появится надпись: «Заказ принят!».
Кнопка «Очистить» предназначена для очистки полей для ввода данных.
Кнопка «Выход» предназначена для выхода из программы.
Написания каждой графической программы состоит из некоторых этапов.
Первый шаг – проектирование интерфейса программного продукта.[13]
Для этого необходимо запустить среду программирования C++ Builder, создать проект оконного приложения, на форме поместить такие компоненты (таблица 1):
Таблица 1 – Компоненты, которые используются в программе «Oil»
№ п/п |
Название компонента |
Предназначение |
1 |
Form1 |
база оконного приложения на которой будут размещены все визуальные компоненты |
2 |
Edit1, Edit2, Edit3, Edit4 |
Поля для ввода количества покупаемого топлива |
3 |
Edit5, Edit6, Edit7, Edit8 |
Поля для ввода количества покупаемого масла |
4 |
RadioGroup1 |
Компонент для группировки компонентов, связанных с покупкой топлива |
5 |
GroupBox1 |
Компонент для группировки компонентов, связанных с покупкой масла |
6 |
Label1 |
Надпись-заголовок формы |
7 |
CheckBox1, CheckBox2, CheckBox3, CheckBox4 |
Флажки для выбора масла |
8 |
StaticText1 |
Вывод промежуточных и конечных результатов |
9 |
BitBtn1 |
Кнопка «Очистить» |
10 |
BitBtn2 |
Кнопка «Заказать» |
11 |
BitBtn3 |
Кнопка «Выход» |
После размещения указанных компонентов необходимо с помощью Object Inspector изменить их основные свойства. В таблице 2 приведены свойства, их значения, которые использованы в проектировании интерфейса.
Таблица 2 – Свойства компонентов
№ п/п |
Название компонента |
Свойство компонента |
Значение свойства |
1 |
Form1 |
Caption |
Oil |
2 |
Edit1, Edit2, Edit3, Edit4, Edit5, Edit6, Edit7, Edit8 |
Text |
0 |
3 |
Label1 |
Caption |
Заправка Oil |
4 |
GroupBox1 |
Caption |
Масло |
5 |
RadioGroup1 |
Caption |
Топливо |
6 |
CheckBox1 |
Caption |
MotorOil |
7 |
CheckBox2 |
Caption |
Q8 |
8 |
CheckBox3 |
Caption |
LukOil |
9 |
CheckBox4 |
Caption |
Torpl |
10 |
StaticText1 |
Caption |
Сумма покупки 0 руб. |
11 |
RadioGroup1 |
Items |
А-76, А-92, А-95, Дизтопливо |
12 |
BitBtn1 |
Caption |
Очистить |
13 |
BitBtn2 |
Caption |
Заказать |
14 |
BitBtn3 |
Caption |
Выход |
После выполненных действий и настройки компонентов с помощью Object Inspector, интерфейс примет следующий вид (рис. 2):
Рисунок 2 – Интерфейс программы «Oil»
Второй этап проектирования – написание кода для программы. Рассмотрим основные функции разрабатываемой программы.
Ввод данных в поля для указания количества топлива (на примере компонента Edit1):
if (RadioGroup1->ItemIndex==0)
{
Edit2->Enabled=false;
Edit3->Enabled=false;
Edit4->Enabled=false;
sum=StrToFloat(Edit1->Text)*50.75;
StaticText1->Caption="Сумма покупки "+FloatToStr(sum)+" руб.";
RadioGroup1->Enabled=false;
}
Нажатие на кнопку BitBtn2.
StaticText1->Caption="Сумма покупки "+FloatToStr(sum+c4+c1+c2+c3)+" руб.";
MessageDlg("Заказ принят!", mtInformation, TMsgDlgButtons()<<mbYes,0);
При этом результат покупки отображается в компоненте StaticText1, а с помощью диалогового окна программа уведомляет о том, что заказ принят.
Запустим программу на выполнение и введем следующие параметры (рис.3):
Рисунок 3 – Ввод данных в программу
После нажатия на кнопку «Заказать», получим следующий результат (рис.4):
Рисунок 4 – Вывод данных
При нажатии на кнопку Очистить поля программы будут очищены.
При нажатии на кнопку Выход графическое приложение будет закрыто.
Проанализировав главу 3 можно сделать вывод, что графические приложения в наше время являются самыми популярными как среди пользователей, так и среди программистов. Использование оконного интерфейса дает новые возможности в обеспечении удобного интерфейса, графического отображения результатов вычислений (создание диаграмм и графиков).
ЗАКЛЮЧЕНИЕ
Наиболее распространенным языком программирования в течение нескольких последних десятилетий, вне всякого сомнения, является язык С ++, на основе которого "выросли" многие современные языки программирования и программные среды.
Этому способствовали такие его свойства, как лаконичность, мощность, гибкость, мобильность, возможность доступа ко всем функциональным средствам системы. Программировать на С ++ можно как для Windows, так и для Unix, причем для каждой из операционных систем существует значительное количество средств разработки: от компиляторов до мощных интерактивных сред, как, например, Borland С ++ Builder, Microsoft Visual C ++ или Visual Studio .NET.
В процессе написания курсовой работы были реализованы следующие задачи:
– рассмотрено историю возникновения алгоритмических языков программирования;
- описано основы классификации языков программирования;
- раскрыто теоретические понятия языков программирования высокого уровня;
- рассмотрено интегрированную среду разработки программных продуктов C++ Builder;
- создано оконное приложение для демонстрации методов разработки графических программ.
В процессе анализа вышеизложенной информации выявлены следующие достоинства графических программ:
- структурированное отображение данных;
- удобность введения и просмотра информации пользователем;
- формирование дружественного интерфейса «пользователь - система».
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- Аммерааль Л. STL для программистов на С++: Пер. с англ. — М.: ДМК, 2011. — 240 с.
- Бочков С. О., Субботин Д. М. Язык программирования Си для персонального компьютера. — М.: Радио и связь, 2011. — 384 с.
- Бобровский С. Самоучитель програмирования на языке C++ в среде Borland C++ Builder М.: ИНФРА-М, 2011.–251 c.
- Бруно Бабэ. Просто и ясно о Borland C++: Пер. с англ. - Москва: БИНОМ, 2014. – 400с.
- Джосьютис Н. М. C++. Стандартная библиотека. Для профессионалов: Пер. с англ. — СПб.: Питер, 2014. — 730 с.
- Керниган Б. В., Ритчи Д. М. Язык программирования Си: Пер. с англ. — 3-е изд. — СПб.: Невский Диалект, 2011. — 352 с.
- Липпман С. Б. Основы программирования на C++: Пер. с англ. — М.: Вильямс, 2012. — 256 с.
- Липпман С. Б., Лажойе Ж. Язык программирования С++. Вводный курс: Пер. с англ. — 3-е изд. — М.: ДМК, 2011. — 1104 с.
- Лишнер Р. STL. Карманный справочник: Пер. с англ. — СПб.: Питер, 2015. — 187 с.
- Мейерс С. Эффективное использование STL: Пер. с англ. — СПб.: Питер, 2013. — 224 с.
- Оллисон Ч. Философия С++. Практическое программирование. С.Петербург 2014. – 608 с.:ил.
- Послед Б.С. Borland C++ Builder 6. Разработка приложений баз. М.: 2013г. -360 г.
- Стенли Б. Липпман. C++ для начинающих: Пер. с англ. 2тт. - Москва: Унитех; Рязань: Гэлион, 2012. – 345с.
- Страуструп Б. Язык программирования C++: Пер. с англ. — 3-е спец. изд. — М.: Бином, 2013. — 1104 с.
- Страуструп Б. Дизайн и эволюция языка C++. Объектно- ориентированный язык программирования: Пер. с англ. — М.: ДМК пресс, Питер, 2013. — 448 с.
- Холингворт Д. Учебник по программированию в среде С++ Builder 5. – Наука.–М.: 2011. –865 с.
- Юпашников A.M. Программирование в среде C++ Builder. — М.: МИФИ, 2014. – 360 c.
- Эккель Б. Философия C++. Введение в стандартный C++: Пер. с англ. — 2-е изд. — СПб.: Питер, 2014. — 572 с.
- Эккель Б., Эллисон Ч. Философия C++. Практическое программирование: Пер. с англ. — СПб.: Питер, 2014. — 608 с. с. 1 (из 2)
- STL — стандартная библиотека шаблонов C++: Пер. с англ. / П. Плаугер, А. Степанов, М. Ли, Д. Массер. — СПб.: БХВ-Петербург, 2014. — 656 с.
Листинг программы
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
float sum,c1,c2,c3,c4;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
Edit1->Text=0;
Edit2->Text=0;
Edit3->Text=0;
Edit4->Text=0;
Edit5->Text=0;
Edit6->Text=0;
Edit7->Text=0;
Edit8->Text=0;
Edit1->Enabled=true;
Edit2->Enabled=true;
Edit3->Enabled=true;
Edit4->Enabled=true;
RadioGroup1->Enabled=true;
RadioGroup1->ItemIndex=-1;
CheckBox1->Checked=false;
CheckBox2->Checked=false;
CheckBox3->Checked=false;
CheckBox4->Checked=false;
StaticText1->Caption="Сумма покупки "+FloatToStr(0)+" руб.";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit1Change(TObject *Sender)
{
if (RadioGroup1->ItemIndex==0)
{
Edit2->Enabled=false;
Edit3->Enabled=false;
Edit4->Enabled=false;
sum=StrToFloat(Edit1->Text)*50.75;
StaticText1->Caption="Сумма покупки "+FloatToStr(sum)+" руб.";
RadioGroup1->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit2Change(TObject *Sender)
{
if (RadioGroup1->ItemIndex==1)
{
sum=StrToFloat(Edit2->Text)*70.3;
StaticText1->Caption="Сумма покупки "+FloatToStr(sum)+" руб.";
RadioGroup1->Enabled=false;
Edit1->Enabled=false;
Edit3->Enabled=false;
Edit4->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit3Change(TObject *Sender)
{
if (RadioGroup1->ItemIndex==2)
{
sum=StrToFloat(Edit3->Text)*82.75;
StaticText1->Caption="Сумма покупки "+FloatToStr(sum)+" руб.";
RadioGroup1->Enabled=false;
Edit1->Enabled=false;
Edit2->Enabled=false;
Edit4->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit4Change(TObject *Sender)
{
if (RadioGroup1->ItemIndex==3)
{
sum=StrToFloat(Edit4->Text)*100;
StaticText1->Caption="Сумма покупки "+FloatToStr(sum)+" руб.";
RadioGroup1->Enabled=false;
Edit1->Enabled=false;
Edit2->Enabled=false;
Edit3->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit5Change(TObject *Sender)
{
if (CheckBox1->Checked==true)
{
c1=StrToFloat(Edit5->Text)*140.5;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit6Change(TObject *Sender)
{
if (CheckBox2->Checked==true)
{
c2=StrToFloat(Edit6->Text)*160.5;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit7Change(TObject *Sender)
{
if (CheckBox3->Checked==true)
{
c3=StrToFloat(Edit7->Text)*120;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit8Change(TObject *Sender)