در این جلسه تیم کدگیت را با آموزش ب م م در سی شارپ(بزرگترین مقسوم علیه مشترک) همراهی کنید.. پیش نیاز این آموزش ، آشنایی با متد و دستور شرطی if است.

ب م م

بزرگترین مقسوم علیه مشترک یا ب م م بین دو عدد را عددی میگویند که بین مقسوم علیه های مشترک دو عدد، بزرگترین باشد. برای مثال ب م م دو عدد 4 و 8 میشود 4. ویژگی های بارز ب م م شامل موارد زیر هست:

  1. ب م م دو عدد یکسان میشود خود عدد
  2. ب م م هر عدد با صفر میشود صفر
  3. ب م م هر عدد با یک میشود 1

برای پیدا کردن ب م م روش ساده این است که تمامی مقسوم علیه های دو عدد را بنویسیم و بزرگترین عددی که بین آن دو مشترک هست را ب م م انتهاب کنیم.

پیاده سازی ب م م در سی شارپ

برای پیاده سازی ب م م در سی شارپ ما ایتدا نیاز به دو عدد داریم که آنها را a و b مینامیم. برای پیاده سازی ما از این روش استفاده میکنیم که عدد کوچکتر را در نظر میگیریم و تمامی اعداد بین 1 تا عدد کوچکتر را بر هر دو عدد تقسیم میکنیم اگر باقیمانده صفر شد ما آن عدد را به عنوان ب م م در نظر میگیریم. توجه داشته باشید که ما از عدد کوچکتر شروع میکنیم و یکی یکی به پایین حرکت میکنیم.

namespace GCD
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            int a = 11;
            int b = 10;

            int gcd = GCD(a, b);
            Console.WriteLine(gcd);
            Console.ReadKey ();

        }

        private static int GCD(int a, int b) {
            int gcd = 0;

            if (a == 0 || b == 0) {
                gcd = 0;
            } else {
                if (a > b) {
                    for (int i = b; i > 0; i--) {
                        if (a % i == 0 && b % i == 0) {
                            gcd = i;
                            break;
                        }

                    }
                } else if (a < b) {
                    for (int i = a; i > 0; i--) {
                        if (a % i == 0 && b % i == 0) {
                            gcd = i;
                            break;
                        }

                    }
                } else {
                    // a == b
                    gcd = a;
                }


            }
            return gcd;
        }

    }
}

پسورد: www.codegate.ir