- •2 . Пример
- •Лабораторная работа № 2
- •1 Содержание работы
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •2. Пример
- •Лабораторная работа№ 3
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •Часть вторая: Оператор выбора
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •Группа а Таблица 7
- •Группа в
- •2. Примеры
- •Лабораторная работа№ 4
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •2 Примеры
- •For (выражение1; выражение2;выражение3) {операторы; }
- •Лабораторная работа№ 5
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •2. Примеры
- •3. Сортировка элементов массива
- •Сортировка выбором
- •3.2. Сортировка вставкой
- •3.3. Сортировка методом прямого выбора
- •3.4. Сортировка методом обмена
- •Лаборатоная работа № 6
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •Методические указания
- •Лабораторная работа № 7
- •1 Порядок выполнения лабораторной работы:
- •Лаборатоная работа № 8
- •1 Порядок выполнения лабораторной работы:
- •Задания
- •2. Теоретические сведения
- •Год рождения – 1978
- •Лабораторная работа № 9
- •1 Порядок выполнения лабораторной работы:
- •Лабораторная работа № 10
- •1 Порядок выполнения лабораторной работы:
- •2. Задание для выполнения
- •2. Примеры
- •Лабораторная работа № 11
- •1 Порядок выполнения лабораторной работы:
- •2. Задание для выполнения
- •Варианты заданий
- •Лабораторная работа № 12
- •1 Порядок выполнения лабораторной работы:
- •2. Краткие теоретические сведения Объектно-ориентированный подход
- •Сущности и Объекты
- •Система типов
- •Инкапсуляция
- •Пример класса
- •Создание объектов. Конструкторы и деструктор
- •Наследование
- •Перегрузка функций
- •Полиморфизм
- •Функции-друзья
- •Абстрактные классы
- •Дополнительные возможности
- •Индивидуальные задания
- •2.1. Пример решения задания
- •Int windForce; // Сила ветра в баллах
- •Int startHeight; // Начальная высота
- •Int fuel; // Запас топлива
- •Результат выполнения программы:
- •Список использованной литературы
Задание
Задание приведено таблице 2 и3 лабораторной работы №1. Для решения задачи в среде Си++Builder необходимо вначале ознакомиться с компонентами Label, Edit, Button, Memo вкладки Standard.
2. Пример
Пример
2.1 вычислить арифметическое
выражение
,
если переменные имеют следующие значения
а=2,3 и b=4 .
Решение задачи: 1. Алгоритм решения задачи представляем на блок-схеме. Алгоритм - линейный (Рисунок-3).
2
.
На форму из палитры компонентов вкладки
Standard среды Си++Builder установить следующие
компоненты: три - Label,
два - Edit,
два – Button,
задаем свойства (Рисунок-5. Обратите
внимание на таблицы 3 и 4). Для компоненты
Form1 установить
BorderStyle – формат формы,
Width – ширину
формы;
Height - высоту.
Для компонентов Label
установить свойства
Caption, Left, Top,
для двух командных кнопок Button
– в
свойстве
Caption отразить выполняемые
действия. Поле Edit
предназначено для ввода
значений переменных, поэтому необходимо
его свойство Text очистить.
Для этих целей можно воспользоваться
возможностями страницы Properties окна
инспектора объектов (Object Inspector) Си++Builder.
7-м Рисунке Button1
компонентінің Свойстван
тағайындау және оның оқиғасын таңдау
сәті бейнеленген. Осы амалды басқа да
компоненттердің Свойстван тағайындауға
қолдану керек.
Свойства компонента Form1 Таблица 4
Компонент |
Свойства |
Значение |
Form1 |
BorderStyle |
bsSizeable |
Caption |
Лабораторная_работа№2 |
|
Width |
270 |
|
Height |
196 |
Свойства компонентов Label, Edit, Button Таблица 5
Компонент |
Caption |
Text |
Left |
Top |
Label1 |
a |
|
24 |
24 |
Label2 |
b |
|
24 |
56 |
Label3 |
- |
|
24 |
96 |
Edit1 |
|
- |
104 |
24 |
Edit2 |
|
- |
104 |
56 |
Button1 |
Вычислить |
|
|
|
Button2 |
Очистить |
|
|
|
3. Для использования математических функций необходимо подключить файл math.h с помощью директивы препроцессора #include <math.h>.
4. Для вычисления выражения поставленной задачи вызываем событие OnClick компоненты Button1: имя метода состоит из имени компоненты и имени события Button1+Click=Button1Click
void __fastcall TForm1::Button1Click(Sender: TObject);
5. Необходимо объявить переменные, согласно заданию: b - целое, a - вещественное, результат y – число вещественного типа: int b; double a,y;
6. Считывание данных :
a=StrToFloat(Edit1.Text); //перевод строкового типа данных в вещественные
b=StrToInt(Edit2.Text);
7. Принимая во внимание правило записи арифметических выражений, вычисляем значение переменной у:
y= pow(a,b)*sqrt(а*a+b*b)-3*abs(b);
8. Для вывода результатов вычислений , используем ствойство Caption компоненты Label3 :
Label3->Caption=”Результат вычисления y= ”+FloatToStrF (y,ffFixed,5,2);
9. С
помощью функциональной клавишы F12
или кнопки
панели иснтрументов переходим с окна
кода редактора программы на окно формы
.
10. Теперь редактируем событие кнопки Button2:
void __fastcall TForm1::Button2Click(Sender: TObject);
11. Для обновления данных в поле компоненты Edit необходимо с помощью функции Clear () очистить его:
Edit1->Clear(); Edit2->Clear();
12. Повторяем пункт 9.
13. При сохранении проекта с помощью команды FileSave Project As основного меню среда Си++Builder предлагает два диалоговых окна: Save Unit As – сохранение модуля ; Save Project As – сохранение проекта. В обоих окнах в поле Имя файла необходимо ввести имена модуля и проекта.
14. С
помощью функциональной клавиши F9
или кнопки
панели инструментов произвести компиляцию
проекта.
15. Ввести значения переменных в поле компонентов Edit1, Edit2 (Рисунок-5).
16. Текст программы:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <math.h>
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{ double a,b,y;
a=StrToFloat(Edit1->Text); //Edit1 орісіне накты сан усыну
b=StrToInt(Edit2->Text); //Edit2 орісіне бyтін сан yсыну№
y= pow(a,b)+sqrt(a*a+b*b)-3*abs(b);
Label3->Caption="Результат вычисления Y= " + FloatToStrF(y,ffFixed,5,2);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Edit1->Clear();
Edit2->Clear();
}
//---------------------------------------------------------------------------
Пример
2.2 Используя компоненту
Memo для
вывода результатов вычислить выражение
,
если а=23,6 b=4.
Решение задачи: Алгоритм решения задачи, подготовка формы, установка компонентов, назначение его свойств, объявление переменных аналогичны предыдущему примеру. Разница в том, что для вывода результатов вместо Label используется компнента Memo1.
Компонент Memo класса TMemo используется для ввода/вывода большого текста. Текст класса TStrings сохраняется с свойстве Lines. Для вывода результатов вычислений метод компоненты Memo1 записывается следующим образом:
Memo1->Lines->Add(“Результат вычисления:”);
Memo1->Lines->Add(”y = ”+FloatToStrF(y,ffGeneral,7,3));
