Open
Description
The following helper functions check arrays for all <0, ≤0, 0, ≥0, >0 and ≠0 entries:
// Check if all elements of a non-empty array are zero
function ArrayIsZero(const A: array of Extended): Boolean;
begin
Assert(Length(A) > 0);
Result := False;
for var Elem in A do
if not IsZero(Elem) then
Exit;
Result := True;
end;
// Check if all elements of a non-empty array are <> 0
function ArrayIsNonZero(const A: array of Extended): Boolean;
begin
Assert(Length(A) > 0);
Result := False;
for var Elem in A do
if IsZero(Elem) then
Exit;
Result := True;
end;
// Check if all elements of a non-empty array are > 0
function ArrayIsPositive(const A: array of Extended): Boolean;
begin
Assert(Length(A) > 0);
Result := False;
for var Elem in A do
if Sign(Elem) <> PositiveValue then
Exit;
Result := True;
end;
// Check if all elements of a non-empty array are < 0
function ArrayIsNegative(const A: array of Extended): Boolean;
begin
Assert(Length(A) > 0);
Result := False;
for var Elem in A do
if Sign(Elem) <> NegativeValue then
Exit;
Result := True;
end;
// Check if all elements of a non-empty array are <= 0
function ArrayIsNonPositive(const A: array of Extended): Boolean;
begin
Assert(Length(A) > 0);
Result := False;
for var Elem in A do
if Sign(Elem) = PositiveValue then
Exit;
Result := True;
end;
// Check if all elements of a non-empty array are >= 0
function ArrayIsNonNegative(const A: array of Extended): Boolean;
begin
Assert(Length(A) > 0);
Result := False;
for var Elem in A do
if Sign(Elem) = NegativeValue then
Exit;
Result := True;
end;
This issue was extracted from issue #16
Metadata
Metadata
Assignees
Projects
Status
Considering