سؤال

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

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

المحلول

وعن طريق تقسيم محاكمة بسيط، وهذا يبدأ مع p=2 ويقسم مرارا وتكرارا من قبل n p، تزايد p لأنه غني.

open LargeInt  (* if you want to work with huge numbers like 5000000000 *)
infix 7 quot rem
val prime_factors =
  let fun trial_division p n =
    if p > n then nil else
      if n rem p = 0
        then p :: trial_division  p      (n quot p)
        else      trial_division (p + 1)  n
  in trial_division 2 end

نصائح أخرى

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

والبحث أو ابتكار خوارزمية في شبة الكود. عندها فقط تقلق بشأن كيفية وضعه في ML.

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