Radio2 (664334)
Текст из файла
Лабораторная работа №2
Программирование разветвляющихся алгоритмов
Цель лабораторной работы: освоить использование простейших компонентов-переключателей и создать приложение, которое использует разветвляющийся алгоритм.
2.1. Пример создания приложения
Задание: создать Windows-приложение для вычисления выражения
Z= , где
по желанию пользователя. В панели интерфейса предусмотреть возможность управления контрольным выводом исходных данных.
Один из возможных вариантов панели интерфейса создаваемого приложения показан на рис. 2.1.
2.1.1. Размещение компонентов на Форме
Будем размещать компоненты на Форме так, чтобы они соответствовали панели, показанной на рис 2.1.
Рис. 2.1


При создании приложений в DELPHI часто используются компоненты в виде кнопок-переключателей. Состояние такой кнопки (включено - выключено) визуально отражается на Форме. На панели (рис. 2.1) представлены кнопки-переключатели двух типов: CheckBox и RadioGroup .
Компонент CheckBox организует кнопку независимого переключателя, с помощью которой пользователь может указать свое решение типа “да/нет”. Компонент RadioGroup организует группу кнопок - зависимых переключателей. При нажатии одной из кнопок группы все остальные кнопки выключаются.
Поместите на Форму компоненты Label, Edit и Memo в соответствии с рис.2.1. Выберите в Палитре Компонентов на странице Standard пиктограмму компонента CheckBox и разместите ее в нужном месте Формы. . В свойстве Caption Инспектора Объектов замените надпись CheckBox1 на Контрольный вывод данных. . Чтобы при запуске приложения кнопка CheckBox оказалась включена, cвойство Checked установите равным True.
Выберите в Палитре Компонентов Standard пиктограмму компонента RadioGroup и поместите ее в нужное место Формы. В свойстве Caption измените заголовок RadioGroup1 на f(x). Для размещения кнопок в один столбец, свойство Columns установите равным 1. Дважды щелкните “мышью” по правой части свойства Items - появится строчный редактор списка наименований кнопок. Наберите 2 строки с именами: в первой строке - sin(x), во второй - cos(x) и нажмите ОК. После этого на Форме появится группа из двух кнопок - переключателей с соответствующими надписями. Чтобы при запуске приложения первая кнопка RadioGroup оказалась включена, cвойство ItemIndex установите равным 0.
2.1.2. Создание процедур обработки событий FormСreate и Button1Сlick
Технология создания процедур обработки событий FormСreate и Button1Сlick ничем не отличается от предыдущей работы. Внимательно наберите операторы этих процедур, используя текст модуля UnRazvAlg.
2.1.3. Текст модуля UnRazvAlg
Unit UnRazvAlg;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label4: TLabel;
Memo1: TMemo;
Button1: TButton;
RadioGroup1: TRadioGroup;
CheckBox1: TCheckBox;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
// Процедура обработки события создания Формы:
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text:='0.5'; // начальное значение X
Edit2.Text:='1.8'; // начальное значение Y
Memo1.Clear; // очистка Memo1
// Вывод строки в Memo1:
Memo1.Lines.Add(‘Лабораторная работа №2 - Разветвляющийся алгоритм’);
end;
// Процедура обработки события нажатия кнопки Button1:
procedure TForm1.Button1Click(Sender: TObject);
var
x,y,z,fx : extended; // объявление локальных переменных
begin
x:=StrToFloat(Edit1.Text); // X присваивается содержимое Edit1
y:=StrToFloat(Edit2.Text); // Y присваивается содержимое Edit2
fx:=sin(x); // fx присваивается начальное значение
// Выбор функции, соответствующей нажатой кнопке:
case RadioGroup1.ItemIndex of
0:fx:=sin(x);
1:fx:=cos(x);
end;
// Вычисление выражения:
if x
z:=fx
else
z:=y;
// Проверка состояния кнопки CheckBox1:
if CheckBox1.Checked then
Memo1.Lines.Add('X = '+Edit1.Text+
' Y = '+Edit2.Text); // контрольный вывод X, Y в Memo1
// Вывод результата в Memo1:
Memo1.Lines.Add(' Z = '+FloatToStrF(z,ffFixed,8,3));
end;
end.
Если нажата первая кнопка RadioGroup1, в переменную целого типа RadioGroup1.ItemIndex заносится нуль, если вторая – единица. Если кнопка CheckBox1 нажата, логическая переменная CheckBox1.Checked имеет значение True, если нет – False.
2.1.4. Работа с приложением
Запустите созданное приложение. Используя все управляющие компоненты панели интерфейса, убедитесь в правильном функционировании приложения во всех предусмотренных режимах работы.
2.2. Выполнение индивидуального задания
По указанию преподавателя выберите свое индивидуальное задание. Создайте приложение и протестируйте его работу.
Индивидуальные задания
Для заданий №1-№15 на панели интерфейса предусмотреть возможность выбора одной из трех функций f(x): sh(x), x2, eX.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.