سؤال

هل من الممكن التعبير عن اللانهاية (الرياضية) بشكل إيجابي أو سلبي في لغة C#؟إذا كان الأمر كذلك، كيف؟

هل كانت مفيدة؟

المحلول

و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"

نصائح أخرى

واستخدم PositiveInfinity وNegativeInfinity الثوابت:

double positive = double.PositiveInfinity;
double negative = double.NegativeInfinity;
public const double NegativeInfinity = -1.0 / 0.0;
public const double PositiveInfinity = 1.0 / 0.0;

نعم، والثوابت الاختيار القيم من أنواع float وdouble، مثل:
float.PositiveInfinity
float.NegativeInfinity
تلك القيم متوافقة مع IEEE-754، لذلك قد ترغب في التحقق من كيفية حدوث ذلك بالضبط، لذلك سوف تكون على علم ومتى وكيف يمكنك الحصول على هذه القيم في حين جعل العمليات الحسابية. مزيد من المعلومات هنا .

انظر إلى هذا (فقط قم بإرجاع اللانهاية الإيجابية ∞)

ملاحظات :

قيمة هذا الثابت هي نتيجة تقسيم الرقم الإيجابي على الصفر. يتم إرجاع هذا الثابت عندما تكون نتيجة العملية أكبر من 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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top