Отчёт.2.5
.docxБийский технологический институт (филиал)
федерального государственного бюджетного образовательного
учреждения высшего образования
«Алтайский государственный технический университет им. И. И. Ползунова»
Технологический факультет
Кафедра методов и средств измерения и автоматизации
Отчет
по лабораторной работе № 2
Программирование разветвляющихся алгоритмов
(название лабораторной (практической) работы)
по дисциплине Языки программирования
(наименование дисциплины)
Вариант № 5
Выполнил
студент гр. ИСТ-
подпись и.о. фамилия
Проверил
профессор каф. МСИА А. И. Сидоренко
подпись и.о. фамилия
г. Бийск, 2017
Цель:
научиться пользоваться простейшими компонентами организации переключений (TСheckBox, TRadioGroup). Написать и отладить программу разветвляющегося алгоритма.
Постановка индивидуальной задачи:
Написать и отладить программу разветвляющегося алгоритма вида
Описание разработанной программы:
Программа выполняет разветвляющий алгоритм, состоящий из трех условий. При истинности каждого из условий выполняется заранее предопределенный линейный алгоритм с переменными x, i и f. При этом в алгоритм вместо переменной f подставляется результат одной из функций , выбранной в окне программы.
Разработанная программа:
-
Интерфейс программы (Рис. 1)
Рисунок 1 – Интерфейс программы
-
Код программы
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Math.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Memo1->Clear();
Edit1->Clear();
Edit2->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
double x, func, a;
int i;
x = StrToFloat(Edit1->Text);
i = StrToInt(Edit2->Text);
switch (RadioGroup1->ItemIndex) {
case 0: func = sinh(x); break;
case 1: func = pow(x, 2); break;
case 2: func = exp(x); break;
}
if (i % 2 && x > 0) a = i * sqrt(func);
else if (!(i % 2) && x < 0) a = i / (2 * sqrt(fabs(func)));
else a = sqrt(fabs(func * i));
Memo1->Lines->Add("–езультат " + FloatToStrF(a, ffFixed, 8, 4));
}
Вывод:
В ходе лабораторной работы были получены навыки пользования простейшими компонентами организации переключений (TСheckBox, TRadioGroup). Также была написана и отлажена программа разветвляющегося алгоритма.