a.Divs(b) NotDivs DivsAll a.DivsAny(2,3,5)
if a.Divs(b) and a.NotDivs(5) then SF a.D(b) a.ND(b)
This commit is contained in:
parent
67c6ff9319
commit
084bc1632a
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
|||
public const string Major = "3";
|
||||
public const string Minor = "7";
|
||||
public const string Build = "1";
|
||||
public const string Revision = "2681";
|
||||
public const string Revision = "2683";
|
||||
|
||||
public const string MainVersion = Major + "." + Minor;
|
||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
%MINOR%=7
|
||||
%REVISION%=2681
|
||||
%REVISION%=2683
|
||||
%COREVERSION%=1
|
||||
%MAJOR%=3
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
3.7.1.2681
|
||||
3.7.1.2683
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
!define VERSION '3.7.1.2681'
|
||||
!define VERSION '3.7.1.2683'
|
||||
|
|
|
|||
|
|
@ -11833,6 +11833,36 @@ end;
|
|||
// -----------------------------------------------------
|
||||
//>> Методы расширения типа integer # Extension methods for integer
|
||||
// -----------------------------------------------------
|
||||
/// Возвращает True если целое делится на указанное значение
|
||||
function Divs(Self,d: integer): boolean; extensionmethod := Self mod d = 0;
|
||||
|
||||
/// Возвращает True если целое не делится на указанное значение
|
||||
function NotDivs(Self,d: integer): boolean; extensionmethod := Self mod d <> 0;
|
||||
|
||||
/// Возвращает True если целое делится на одно из значений
|
||||
function DivsAny(Self: integer; params a: array of integer): boolean; extensionmethod;
|
||||
begin
|
||||
Result := False;
|
||||
for var i:=0 to a.High do
|
||||
if Self mod a[i] = 0 then
|
||||
begin
|
||||
Result := True;
|
||||
exit
|
||||
end;
|
||||
end;
|
||||
|
||||
/// Возвращает True если целое делится на все значения
|
||||
function DivsAll(Self: integer; params a: array of integer): boolean; extensionmethod;
|
||||
begin
|
||||
Result := True;
|
||||
for var i:=0 to a.High do
|
||||
if Self mod a[i] <> 0 then
|
||||
begin
|
||||
Result := False;
|
||||
exit
|
||||
end;
|
||||
end;
|
||||
|
||||
/// Возвращает квадратный корень числа
|
||||
function Sqrt(Self: integer): real; extensionmethod;
|
||||
begin
|
||||
|
|
@ -12112,6 +12142,14 @@ end;
|
|||
//------------------------------------------------------------------------------
|
||||
//>> Методы расширения типа string # Extension methods for string
|
||||
//------------------------------------------------------------------------------
|
||||
/// Заменяет count вхождений подстроки oldStr на подстроку newStr в исходной строке
|
||||
function Replace(Self: string; oldStr,newStr: string; count: integer): string; extensionmethod;
|
||||
begin
|
||||
var reg := new Regex(oldStr);
|
||||
Result := reg.Replace(Self,newStr,count);
|
||||
end;
|
||||
|
||||
|
||||
/// Возвращает True если значение находится между двумя другими
|
||||
function Between(Self: string; a, b: string): boolean; extensionmethod;
|
||||
begin
|
||||
|
|
|
|||
|
|
@ -69,6 +69,10 @@ function Prln(Self: char): char; extensionmethod := Self.Println;
|
|||
function Prln(Self: boolean): boolean; extensionmethod := Self.Println;
|
||||
function Prln(Self: string): string; extensionmethod := Self.Println;
|
||||
|
||||
|
||||
function D(Self,b: integer): boolean; extensionmethod := Self mod b = 0;
|
||||
function ND(Self,b: integer): boolean; extensionmethod := Self mod b <> 0;
|
||||
|
||||
/// Записывает в min значение x если x<min
|
||||
procedure ReMin(var min: integer; x: integer);
|
||||
begin
|
||||
|
|
|
|||
|
|
@ -11833,6 +11833,36 @@ end;
|
|||
// -----------------------------------------------------
|
||||
//>> Методы расширения типа integer # Extension methods for integer
|
||||
// -----------------------------------------------------
|
||||
/// Возвращает True если целое делится на указанное значение
|
||||
function Divs(Self,d: integer): boolean; extensionmethod := Self mod d = 0;
|
||||
|
||||
/// Возвращает True если целое не делится на указанное значение
|
||||
function NotDivs(Self,d: integer): boolean; extensionmethod := Self mod d <> 0;
|
||||
|
||||
/// Возвращает True если целое делится на одно из значений
|
||||
function DivsAny(Self: integer; params a: array of integer): boolean; extensionmethod;
|
||||
begin
|
||||
Result := False;
|
||||
for var i:=0 to a.High do
|
||||
if Self mod a[i] = 0 then
|
||||
begin
|
||||
Result := True;
|
||||
exit
|
||||
end;
|
||||
end;
|
||||
|
||||
/// Возвращает True если целое делится на все значения
|
||||
function DivsAll(Self: integer; params a: array of integer): boolean; extensionmethod;
|
||||
begin
|
||||
Result := True;
|
||||
for var i:=0 to a.High do
|
||||
if Self mod a[i] <> 0 then
|
||||
begin
|
||||
Result := False;
|
||||
exit
|
||||
end;
|
||||
end;
|
||||
|
||||
/// Возвращает квадратный корень числа
|
||||
function Sqrt(Self: integer): real; extensionmethod;
|
||||
begin
|
||||
|
|
|
|||
|
|
@ -69,6 +69,10 @@ function Prln(Self: char): char; extensionmethod := Self.Println;
|
|||
function Prln(Self: boolean): boolean; extensionmethod := Self.Println;
|
||||
function Prln(Self: string): string; extensionmethod := Self.Println;
|
||||
|
||||
|
||||
function D(Self,b: integer): boolean; extensionmethod := Self mod b = 0;
|
||||
function ND(Self,b: integer): boolean; extensionmethod := Self mod b <> 0;
|
||||
|
||||
/// Записывает в min значение x если x<min
|
||||
procedure ReMin(var min: integer; x: integer);
|
||||
begin
|
||||
|
|
|
|||
Loading…
Reference in a new issue