Advanced Delphi Systems- Matematik

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
Kullanıcı avatarı
Asri
Kıdemli Üye
Mesajlar: 767
Kayıt: 16 Eyl 2003 09:54
Konum: istanbul

Advanced Delphi Systems- Matematik

Mesaj gönderen Asri »

Aşağıdaki unit'i unit1'de uses olarak ekleyip bu unit içindeki procedure ve function'ları kullanbilirsiniz.

Bu unit program Matematik işleminde kullanılır.

Kod: Tümünü seç

Unit Ads_Math;

{Copyright(c)2000 Advanced Delphi Systems

 Richard Maley
 Advanced Delphi Systems
 12613 Maidens Bower Drive
 Potomac, MD 20854 USA
 phone 301-840-1554
 maley@advdelphisys.com

 The code herein can be used or modified by anyone.  Please retain references
 to Richard Maley at Advanced Delphi Systems.  If you make improvements to the
 code please send your improvements to maley@advdelphisys.com so that the
 entire Delphi community can benefit.  All comments are welcome.
}

Interface

Uses
  SysUtils, ExtCtrls, StdCtrls, Ads_Strg, Ads_Misc;

{!~ Returns the larger of two numbers}
Function Max(Number1, Number2: Single): Single;

{!~ Returns the smaller of two numbers}
Function Min(Number1, Number2: Single): Single;

{!~
Returns the smaller of two integers
}
Function Min_I(Number1, Number2: Integer): Integer;

{!~ Converts a string to an Extended floating point number}
Function NumVal(InputString: String): Extended;

{!~ Returns the constant pi as a real number}
Function Pi_Real: Real;

{!~ Returns A PseudoRandom Number Between 0 And 1}
Function Rand: Integer;

{!~ Returns A Random Number}
Function RandomInteger(RandMin, RandMax: Integer): Integer;

Implementation

Type
  TPanel_Cmp_Sec_ads = class(TPanel)
  Public
    procedure ResizeShadowLabel(Sender: TObject);
  End;

procedure TPanel_Cmp_Sec_ads.ResizeShadowLabel(
  Sender     : TObject);
Var
  PH, PW : Integer;
  LH, LW : Integer;
begin
  PH := TPanel(Sender).Height;
  PW := TPanel(Sender).Width;
  LH := TLabel(Controls[0]).Height;
  LW := TLabel(Controls[0]).Width;
  TLabel(Controls[0]).Top  := ((PH-LH) div 2)-3;
  TLabel(Controls[0]).Left := ((Pw-Lw) div 2)-3;
end;

Type
  TEditKeyFilter = Class(TEdit)
  Published
    {!~ Throws away all keys except 0-9,-,+,.}
    Procedure OnlyNumbers(Sender: TObject; var Key: Char);

    {!~ Throws away all keys except 0-9}
    Procedure OnlyNumbersAbsolute(Sender: TObject; var Key: Char);

    {!~ Throws away all keys except a-z and A-Z}
    Procedure OnlyAToZ(Sender: TObject; var Key: Char);

  End;

{!~ Throws away all keys except 0-9,-,+,.}
Procedure TEditKeyFilter.OnlyNumbers(Sender: TObject; var Key: Char);
Begin
  KeyPressOnlyNumbers(Key);
End;

{!~ Throws away all keys except 0-9}
Procedure TEditKeyFilter.OnlyNumbersAbsolute(Sender: TObject; var Key: Char);
Begin
  KeyPressOnlyNumbersAbsolute(Key);
End;

{!~ Throws away all keys except a-z and A-Z}
Procedure TEditKeyFilter.OnlyAToZ(Sender: TObject; var Key: Char);
Begin
  KeyPressOnlyAToZ(Key);
End;
{!~ Returns the larger of two numbers}
Function Max(Number1, Number2: Single): Single;
Begin
  If Number1 > Number2 Then
  Begin
    Result := Number1;
  End
  Else
  Begin
    Result := Number2;
  End;
End;

{!~ Returns the smaller of two numbers}
Function Min(Number1, Number2: Single): Single;
Begin
  If Number1 < Number2 Then
  Begin
    Result := Number1;
  End
  Else
  Begin
    Result := Number2;
  End;
End;

{!~
Returns the smaller of two integers
}
Function Min_I(Number1, Number2: Integer): Integer;
Begin
  If Number1 < Number2 Then
  Begin
    Result := Number1;
  End
  Else
  Begin
    Result := Number2;
  End;
End;

{!~ Converts a string to an Extended floating point number}
Function NumVal(InputString: String): Extended;
Begin
  Result      := 0;
  InputString := NumbersOnly(InputString);
  Try
    Result    := StrToFloat(InputString);
  Except
  End;
End;

{!~ Returns the constant pi as a real number}
Function Pi_Real: Real;
Begin
  Result := Pi;
End;

{!~ Returns A PseudoRandom Number Between 0 And 1}
Function Rand: Integer;
Begin
  Result := RandomInteger(0,1);
End;

{!~ Returns A Random Number}
Function RandomInteger(RandMin, RandMax: Integer): Integer;
Var
  RandRange: Integer;
  RandValue: Integer;
Begin
  If RandMax <= RandMin Then
  Begin
    Result := RandMin;
    Exit;
  End;

  Randomize;
  RandRange := RandMax-RandMin;
  RandValue := Random(RandRange);
  Result    := RandValue + RandMin;
End;

End.
Öğrenmek ve öğretmek, akıntıya karşı yüzmek gibidir ilerleyemediğiniz taktirde gerilersiniz.
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Re: Advanced Delphi Systems- Matematik

Mesaj gönderen ALUCARD »

Asri yazdı:Aşağıdaki unit'i unit1'de uses olarak ekleyip bu unit içindeki procedure ve function'ları kullanbilirsiniz.

Bu unit program Matematik işleminde kullanılır.
hocam iyi hoş eline sağlık bukadar uğraşmıssın teşekkur ederiz

bunlar Advanced Delphi Systems in unitleri diğer veri tabanları ile çalışabilirmi

denedin mi diye soracak olursan denemedim sadece merak ediyorum
şu an denemeye fırsatım yok onun için deneyemiyorum..
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Kullanıcı avatarı
Asri
Kıdemli Üye
Mesajlar: 767
Kayıt: 16 Eyl 2003 09:54
Konum: istanbul

Mesaj gönderen Asri »

Tabiki hepsini denemedim, ancak convert olanı ekleyip denemiştim. Dikkat edersen Advanced Delphi Systems'in unit lerindeki procedure ve function'lar kullanıma hazır haldedir.Ayrıca genelde delphi'nin standart unitlerini kullanıyor. Farklı bir unit yada component kullanılmışsa bu bilgi Uses bölümünde veriliyor zaten.
Uses
SysUtils, ExtCtrls, StdCtrls, Ads_Strg, Ads_Misc;
Ben sadece Convert başlığı altındaki unit i denedim ve projeme unit ekleden ekleyip Implementation'in altına uses ads_convert olarak ekledim. Kendi unit imde ads'nin procedurlerini çalıştığını test ettikten sonra buraya göndermye karar verdim.

Tabiki bütün hepsini tek tek test etmedim. Problemli olan yada çalışmayan bir unit olursa bildirin gerekli düzenlemeyi yapiyim.


iyi çalışmalar.
Öğrenmek ve öğretmek, akıntıya karşı yüzmek gibidir ilerleyemediğiniz taktirde gerilersiniz.
Cevapla