Болчокторду кошуу жана кемитуу 28.02.2014

FPC.
Жыйынтык толук чыкпады, болчокту кыскартуу учун "Алгоритм Эвклида" ыкмасын уйронуш керек, азырынча уйроно элекмин.
Болчокту кемитуу функциясын оз алдынча жазасанар болот, ал учун тендемедеги "+" белгисин "-" алмаштыргыла.
Button1, баскычта параметрлер берилет. addition_fractions функциясы болчокторду кошот жана жыйынтыкты жолчолук массив турундо (*строковой массив*) кайтарат. res[0], res[1], res[2]- алымы болуму ортосунда болуу белгиси.
______________________________________________________________________
//Fee Pascal(Lazarus)

unit Unit1;

{$mode objfpc}{$H+}

interface

uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type
massiv_type = array[0..2] of string;
{ TForm1 }

TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }
function addition_fractions(a,b,c,d:real):massiv_type;
var
bd:real;
bd_a:real;
bd_c:real;
a_c:real;

res:massiv_type;
begin
bd:=b*d;
bd_a:=(bd/b)*a;
bd_c:=(bd/d)*c;
a_c:=bd_a+bd_c;

res[0]:=FloatToStr(a_c);
res[1]:='/';
res[2]:=FloatToStr(bd);

Result:=res;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
res:massiv_type;
str:string;
begin
res:=addition_fractions(1,4,1,4);
str:=res[0]+res[1]+res[2];
ShowMessage(str);
end;

end.
______________________________________________________________________


comments powered by Disqus