سؤال

كنت أستخدم وظيفة أسراب من فئة biginteger في F # عندما أخبرني مترجمي:

تم إهمال هذا البناء. تمت إزالة هذا العضو للتأكد من أن هذا النوع متوافقا مع نظام .NET 4.0 Type.Numerics.biginteger

عادل بما فيه الكفاية أعتقد، لكنني لم أجد بديلا على الفور.

هناك واحد؟ يجب أن نستخدم فقط وظائف أسرارك؟ و (كيف) سوف يتم استبداله في Net4.0؟

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

المحلول

يمكنك استخدام وظيفة Pown

let result = pown 42I 42

تعمل بوسط على أي نوع "يفهم" الضرب "و" واحد ".

نصائح أخرى

إذا نظرت إلى F # من منظور التعتمد على Ocaml، ثم OCAML NUM الوحدة لديه power_num. نظرا لأن OCAML Type Num هي أرقام عقلانية تعسفية الدقة، فيمكنهم التعامل مع أي رقم بحجم، على سبيل المثال، لا يقتصرون على سجل وحدة المعالجة المركزية لأنها يمكن أن تفعل الرياضيات رمزية. كما يتم تعريف num كما

اكتب num =
| int int.
| big_int of big_int.big_int.
| نسبة النسبة

يمكنهم التعامل مع أعداد صغيرة جدا مع فقدان الدقة بسبب نوع النسبة.

منذ f # ليس لديه نوع الأسطو، جاك تم إنشاؤها fsharp.comPatiable.ocaml. الوحدة التي لديها num.fs. وهو متاح عبر Nuget.

لذلك يمكنك الحصول على كل الدقة التي تريد استخدامها، ويمكن أن تتعامل وظائف الأسطوانة مع الأسطر السلبية.

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