اذهب إلى المحتوى
  • 0

حساب العاملي Factorial للأعداد الأوليه prime فقط ضمن مصفوفة ++C

Zeina Almakdisi

السؤال

قمت بكتابة كود يبدل العدد ب العاملي للعدد" أو ما يسمى Factorial

لكن عند تجربة الكود احصل على ارقام عشوائية غير صحيحة 

سأقوم بمشاركة الكود ,أرجو المساعدة 

#include <iostream>
using namespace std;
int Factoriall(int n);
int main()
{
    int a[8], i, j, n, k;
    cout << "enter size of array\n";
    cin >> n;
    cout << "\n insert the items..\n";
    for (i = 0; i < n; i++)
        cin >> a[i];
  
    for (i = 0; i < n; i++)
    {
        for (j = 2; j < a[i]; j++)
        {
            if (a[i] % j != 0)
                a[i] = f(a[i]);
        }
    }
    for (k = 0; k < n; k++)
        cout << a[k] << " ";
}
int Factoriall(int n)
{
    if ((n == 0) || (n == 1))
        return 1;
    else
        return n * f(n - 1);
    return 0;
}

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

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

  1. لكل عدد في المصفوفة، نفرض أنه أولي،
  2. إن قبل القسمة على عدد أقل منه يصبح غير أولي،
  3. إن بقي العدد ألي نحسب العاملي له
    for (i = 0; i < n; i++)
    {
      bool prime = true;
      
        for (j = 2; j < a[i]; j++)
        {
            if (a[i] % j == 0) // قبل القسمة على عدد أصغر منه
              prime = false;
                
        }
      if (prime)
      	a[i] = Factorial(a[i]);
    }

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...