Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лабораторная работа / лабораторные работы по LAZARUS / Программирование разветвляющихся алгоритмов №2 вар7

.doc
Скачиваний:
57
Добавлен:
11.02.2014
Размер:
43.52 Кб
Скачать

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ

САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ, ТЕХНОЛОГИИ И УПРАВЛЕНИЯ

факультет: ИС

кафедра: УИТ

дисциплина: системное программное обеспечение

Лабораторная работа №2

Программирование разветвляющихся алгоритмов

Выполнил:

студент 3 курса

гр. УИТ-31

приняла:

г. Балаково 2009 г.

Цель лабораторной работы: освоить использование простейших компонентов-переключателей и создать приложение, которое использует разветвляющийся алгоритм.

7

bx < 1

bx = 1

bx > 1

Программа:

unit Unit1;

{$mode objfpc}{$H+}

interface

uses

Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,

Buttons, CheckLst, ExtCtrls;

type

{ TForm1 }

TForm1 = class(TForm)

Button1: TButton;

CheckBox1: TCheckBox;

Edit1: TEdit;

Edit2: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Memo1: TMemo;

RadioGroup1: TRadioGroup;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ private declarations }

public

{ public declarations }

end;

var

Form1: TForm1;

implementation

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);

begin

Edit1.Text:='2.5';

Edit2.Text:='1.8';

Memo1.Clear;

Memo1.Lines.Add('Лабораторная работа №2 - Разветвляющийся алгоритм');

end;

procedure TForm1.Button1Click(Sender: TObject);

var

b,x,q,fx : extended;

begin

b:=StrToFloat(Edit1.Text);

x:=StrToFloat(Edit2.Text);

case RadioGroup1.ItemIndex of

0:fx:=ln(x);

1:fx:=0.4343*ln(x);

end;

if b*x<1 then

q:=b*x-fx*b*x

else if b*x=1 then

q:=sqr(fx)

else

q:=b*x+fx*b*x;

if CheckBox1.Checked then

Memo1.Lines.Add('B = '+Edit1.Text+

' X = '+Edit2.Text);

Memo1.Lines.Add(' Q = '+FloatToStrF(q,ffFixed,8,3));

end;

initialization

{$I unit1.lrs}

end.

Полученные результаты:

Лабораторная работа №2 - Разветвляющийся алгоритм

B = 2.5 X = 1.8

Q = 7,145

B = 2.5 X = 1.8

Q = 5,649