Fixed initializer of zero polynomial

This commit is contained in:
Stefan Müller 2024-05-25 02:35:55 +02:00
parent baa1f8f31f
commit fa5616f3cc
2 changed files with 7 additions and 13 deletions

View File

@ -256,6 +256,10 @@ begin
SetLength(Result.FCoefficients, high + 1);
for i := 0 to high do
Result.FCoefficients[i] := ACoefficients[i];
end
else begin
SetLength(Result.FCoefficients, 1);
Result.FCoefficients[0] := TBigInt.Zero;
end;
end;

View File

@ -33,9 +33,7 @@ type
procedure TestCreateWithDegree(const ACoefficients: array of TBigInt; const ADegree: Integer);
published
procedure TestCreate;
procedure TestCreateDegreeOne;
procedure TestCreateDegreeZero;
procedure TestCreateDegreeZeroTrim;
procedure TestEqual;
procedure TestUnequalSameLength;
procedure TestUnequalDifferentLength;
@ -66,19 +64,11 @@ begin
TestCreateWithDegree([992123, 7, 20, 4550022], 3);
end;
procedure TBigIntPolynomialTestCase.TestCreateDegreeOne;
begin
TestCreateWithDegree([4007], 0);
end;
procedure TBigIntPolynomialTestCase.TestCreateDegreeZero;
begin
TestCreateWithDegree([], -1);
end;
procedure TBigIntPolynomialTestCase.TestCreateDegreeZeroTrim;
begin
TestCreateWithDegree([0], -1);
TestCreateWithDegree([4007], 0);
TestCreateWithDegree([], 0);
TestCreateWithDegree([0], 0);
end;
procedure TBigIntPolynomialTestCase.TestEqual;