Я пытаюсь создать коллекцию, в которой есть десятичные дроби с точностью, округленной до 2 десятичных знаков. Однако в коллекции есть несколько огромных номеров, и я должен использовать BigInteger в качестве решения.
Особенности:
- Получил коллекцию, в которой есть BigIntegers
- Получил еще одну коллекцию BigIntegers
- Получил третью коллекцию Больших целых
- Мне нужно создать коллекцию, которая имеет среднее значение из трех вышеупомянутых коллекций, а значения округляются до 2 десятичных знаков.
т.е. если collection1 имеет {2,3,4} и collection2 имеет {4,5,5}, а collection3 имеет {5,3,2}, я должен создать 4-ую коллекцию, которая имеет {3.67,3.67,, 3.67}
Для этого я использую этот код:
BigInteger divisor = new BigInteger(3.0d);
var averages = collection1.Zip(collection2, BigInteger.Add)
.Zip(collection3,
(xy, z) => BigInteger.Divide(BigInteger.Add(xy,z), divisor));
Однако десятичные дроби не отображаются. Я не уверен, может ли biginteger содержать только целочисленные значения, а не десятичные.
Можете ли вы предложить решение для этого?
Примечание: он должен быть основан на LINQ, так как коллекции довольно большие с некоторыми большими значениями (и, следовательно, biginteger).