تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
Prime Number
#1
بسم الله الرحمن الرحيم
(رب اشرح لي صدري ويسر لي امري واحلل عقدة من لساني يفقهوا قولي)


كيفية ايجاد العدد الأولي

كما نعلم اعزائي أن العدد الاولي لا يبقل القسمة إلا على نفسه وعلى الرقم (1).
طيب كيف نعلم أن عدد ما أولي أم لا برمجيا؟

الحل يكمن في معرفة معاملات العدد. كيف؟

عندما نقول أن العدد الأولي لا يقبل القسمة إلا على نفسه وعلى الرقم (1) معناه أن عدد معاملات الرقم الأولي هو 2

بمعنى أي رقم عدد معاملاته هو 2 هو عدد أولي وأي رقم تتجاوز عدد معاملاته الـ2 هو عدد غير أولي.

الان نأتي الى الامثلة/ (الامثلة باستخدام فيجوال ستوديو 2017 C#7.0 لذا ربما لا يعمل المثال بالشكل المطلوب في الاصدارات القديمة، لذا سارفق نسخة اخرى تعمل على جميع الاصدارات).

الكلاس Prime:
PHP كود :
namespace PrimeNumber
{
 
   public class Prime
    
{
 
       public bool IsPrime(int numberToCheck)
 
       {
 
           #region Factors local function
 
           int FactorsOfNumber()
 
           {
 
               var counter 0;
 
               for (int i 1<= numberToChecki++)
 
               {
 
                   if (numberToCheck == 0)
 
                   {
 
                       counter++;
 
                       if (counter 2)
 
                       {
 
                           break;
 
                       }
 
                   }
 
               }
 
               return counter;
 
           }
 
           #endregion

 
           return FactorsOfNumber() == 2;
 
       }
 
   }

كيفية الاستدعاء:
PHP كود :
using System;

namespace 
PrimeNumber
{
 
   class Program
    
{
 
       static void Main(string[] args)
 
       {
 
           var prime = new Prime();
 
           var result prime.IsPrime(5) ? "Prime" "Not Prime";
 
           Console.WriteLine(result);

 
           Console.ReadKey();
 
       }
 
   }


رابط المثال على حسابي على الـ github:

رابط المثال لجميع الاصدارات:

والحمد لله رب العالمين
الرد }}}
تم الشكر بواسطة: قاسم , sendbad100
#2
جزاك الله الف الف خير

تسلم يدك
السلام عليكم

كل الشّكر و التقدير و العرفان بالجميل و الامتنان لكل من ساعدني.
واسال لله ان يوسع له  في رزقة - ويزيدة علما وحكمه - ويكتب اجره مضاعفا - ويسعده دنيا واخرة - ويرحمه ويرحم والديه
الرد }}}
تم الشكر بواسطة: sendbad100 , Sajad


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم