Главная » Delphi, Исходники, Разное » Нахождение всех возможных площадей треугольников из 4-х отрезков
Янв
30

Нахождение всех возможных площадей треугольников из 4-х отрезков

Условие: Дано отрезки a, b, c ,d. Для каждой тройки этих отрезков, с которых можно построить треугольник, вывести площадь данного треугольника. Использовать процедуру, которая рассчитывает площадь треугольника со сторонами x, y, z, если такой треугольник существует.

Нахождение всех возможных площадей треугольников из 4-х отрезков

Нахождение всех возможных площадей из 4-х отрезков



[sourcecode language=»delphi»]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
LabeledEdit1: TLabeledEdit;
LabeledEdit2: TLabeledEdit;
LabeledEdit3: TLabeledEdit;
LabeledEdit4: TLabeledEdit;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }





end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure pac(x,y,z:integer; var pl:real);
var p:real;
begin
p:=(x+y+z)/2;
pl := sqrt(p*(p-x)*(p-y)*(p-z));
end;
procedure TForm1.Button1Click(Sender: TObject);
var n:real;
a,b,c,d:integer;
begin
Label1.Caption:=»;
a:=StrToInt(LabelEdEdit1.Text);
b:=StrToInt(LabelEdEdit2.Text);
c:=StrToInt(LabelEdEdit3.Text);
d:=StrToInt(LabelEdEdit4.Text);
if ((a+b>=c)and(a+c>=b)and(b+c>=a)) then
begin
pac(a,b,c,n);
Label1.Caption:= Label1.Caption+’Площа=’+floattostr(n) + #13;
end;
if ((a+b>=d)and(a+d>=b)and(b+d>=a)) then begin
pac(a,b,d,n);
Label1.Caption:= Label1.Caption+’Площа=’+floattostr(n)+ #13;
end;
if ((a+c>=d)and(a+d>=c)and(c+d>=a)) then begin
pac(a,c,d,n);
Label1.Caption:= Label1.Caption +’Площа=’+floattostr(n)+ #13;
end;
if ((c+b>=d)and(c+d>=b)and(b+d>=c)) then begin
pac(b,c,d,n);
Label1.Caption:= Label1.Caption+’Площа=’+floattostr(n) + #13;
end;
end;
end.
[/sourcecode]
[download id=»25″]



Понравилась статья? Сделай приятно ее автору, поделись с друзьями:


Хотите получать обновления данного блога на EMail?

Введите адрес Почтового Ящика:




Подтвердите подписку в письме пришедшем на Почту, после чего начнете получить рассылку.