Можно ли выразить (математическую) бесконечность, положительную или отрицательную, в С#? Если да, то как?
Выразить математическую бесконечность в С#
Ответ 1
double.PositiveInfinity
double.NegativeInfinity
float zero = 0;
float positive = 1 / zero;
Console.WriteLine(positive); // Outputs "Infinity"
float negative = -1 / zero;
Console.WriteLine(negative); // Outputs "-Infinity"
Ответ 2
Используйте константы PositiveInfinity
и NegativeInfinity
:
double positive = double.PositiveInfinity;
double negative = double.NegativeInfinity;
Ответ 3
public const double NegativeInfinity = -1.0 / 0.0;
public const double PositiveInfinity = 1.0 / 0.0;
Ответ 4
Да, проверьте значения констант типов float
и double
, например: float.PositiveInfinity
float.NegativeInfinity
Эти значения соответствуют IEEE-754, поэтому вы можете проверить, как это работает в точности, поэтому вы будете знать, когда и как вы можете получить эти значения при выполнении вычислений. Подробнее здесь.
Ответ 5
Посмотрите это (просто верните Positive-infinity ∞)
Примечания:
Значение этой константы является результатом деления положительного числа на ноль. Эта константа возвращается, когда результатом операции является больше MaxValue. Используйте IsPositiveInfinity, чтобы определить, значение оценивается до положительной бесконечности.
Таким образом, это будет равно бесконечности.
Console.WriteLine("PositiveInfinity plus 10.0 equals {0}.", (Double.PositiveInfinity + 10.0).ToString());
а теперь для отрицательного значения
Эта константа возвращается, когда результат операции меньше MinValue.
чтобы это соответствовало бесконечности.
Console.WriteLine("10.0 minus NegativeInfinity equals {0}.", (10.0 - Double.NegativeInfinity).ToString());
ссылка: https://msdn.microsoft.com/en-us/library/system.double.negativeinfinity(v=vs.110).aspx