الفرق بين المراجعتين لصفحة: «عاملي»

من موسوعة العلوم العربية
اذهب إلى التنقل اذهب إلى البحث
ط (١ مراجعة: الصفحات في تصنيف رياضيات)
(لا فرق)

مراجعة 21:15، 12 نوفمبر 2010

في الرياضيات، المضروب أو العاملي لعدد صحيح طبيعي n، والذي يكتب n!، والذي يقرأ "عاملي n"، هو جذاء الأعداد الصحيحة الموجبة قطعا والأصغر أو تساوي n. و يكتب :

أمثلة :

  • 1! = 1
  • 2! = 1 x 2 = 2
  • 3! = 1 x 2 x 3 = 6
  • 10! = 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 = 3628800

و تعريف العاملي على شكل جذاء يترتب عنه كون 0! = 1 ذلك أن 0! جذاء مفرغ، وبمعنى آخر مقتصر على العنصر المحايد في عملية الضرب.

و يلعب العاملي دورا أساسيا في علم الإحتمالات والتراتيب بما أنه يوجد n! طريقة مختلفة لتوزيع n شيئا. و يظهر العاملي في عدة معادلات رياضية، مثل سيغة الثنائي لنيوتن وصيغة تايلور.

و تعطينا صيغة ستيرلينغ مقاربا لـ n! عندما تكون n كبيرة :

عاملي عدد غير صحيح

لكل عدد صحيح n، لدينا حيث Γ هي دالة أولير (دالة غاما) وضعها ليونارد أولير. وتمكننا دالة أولير من تعميم العاملي على مجموعة الأعداد المركّبة باستثناء الأعداد السالبة قطعا. وفي النهاية نجد :

البرمجة

يمكن حساب عاملي عدد ما باستعمال خوارزميات الاستقراء. فلنكتب باستعمال لغة Scheme، القريبة من لغة Lisp، برنامجا استقرائيا يعطينا عاملي عدد صحيح :

(define fact
  (lambda (x)
    (if (= x 0) 1
      (* x (fact (- x 1))))))

و هذا البرنامج السابق غير مفيد في حالة الاعداد الكبيرة.

و بنفس الطريقة في Caml :

let rec fact n = 
  match n with
    | 0 -> 1
    | _ -> n * fact(n-1)
;;

و بطريقة أخرى:

let fact n =
  let rec aux n r =
    match n with
      | 0 -> r
      | _ -> aux (n-1) (n*r)
  in
  aux n 1
;;

و في لغة سي:

 int factorielle_recursive(int n)
 {
   if (n == 0)
     return 1;
   else
     return n * factorielle_recursive(n-1);
 }

و بطريقة أخرى:

 int factorielle_iterative(int n)
 {
   int res;
    
   for (res = 1; n > 1; n--)
     res *= n;
    
   return res;
 }

و في لغة Python:

 fact = lambda x : x>0 and x*fact(x-1) or 1
 
 ----------------------------------------------------
 
 الاستعمال :
 for i in range(10):
     print "fact %d = %d" %(i, fact(i))
 
 ويظهر على الشاشة :
 fact 0 = 1
 fact 1 = 1
 fact 2 = 2
 fact 3 = 6
 fact 4 = 24
 fact 5 = 120
 fact 6 = 720
 fact 7 = 5040
 fact 8 = 40320
 fact 9 = 362880

هذه الدوال (البرامج) لا تمكننا من حساب عملي أعداد أكبر من 12 إذا كانت الاعداد الصحيحة محدودة بـ 32 بت، لأن النتيجة تتعدى المساحة المتوفرة.


bg:Факториел bs:Faktorijel ca:Factorial cs:Faktoriál cv:Факториал da:Fakultet (matematik) de:Fakultät (Mathematik) en:Factorial eo:Faktorialo es:Factorial et:Faktoriaal eu:Faktorial fa:فاکتوریل fi:Kertoma fr:Factorielle gl:Factorial he:עצרת hu:Faktoriális id:Faktorial io:Faktorialo is:Aðfeldi it:Fattoriale ja:階乗 ka:მათემატიკური ფაქტორიალი ko:계승 lmo:Faturiaal lt:Faktorialas lv:Faktoriāls ml:ഫാക്റ്റോറിയൽ ms:Faktorial nl:Faculteit (wiskunde) no:Fakultet (matematikk) pl:Silnia pms:Fatorial pt:Fatorial ru:Факториал scn:Fatturiali simple:Factorial sk:Faktoriál sl:Fakulteta (funkcija) sq:Faktoriali sr:Факторијел sv:Fakultet (matematik) th:แฟกทอเรียล tr:Faktöriyel uk:Факторіал ur:عاملیہ vi:Giai thừa zh:階乘