#c, آموزش قدم به قدم #c, سی شارپ

قرینه کردن عدد در سی شارپ (reverse number)

قرینه کردن عدد در سی شارپ

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

  1. آشنایی با For
  2. آشنایی با While
  3. آشنایی با متد

قرینه عدد

معکوس یک عدد یا همان قرینه یک عدد، عددی است که فقط جای خانه های پر ارزش با کم ارزش جابجا شده است. بدین صورت که فرض کنید ما عدد 1234 را داریم و حال قرینه این عدد را میخواهیم محاسبه کنیم. برای محاسبه قرینه یک عدد بایئ از کم ارزشترین شروع کرد. برای بدست آوردن کم ارزشترین باید باقیمانده عدد 1234 با عدد 10 را محاسبه کرد. باقیمانده میشود عدد 4. حال ما باید عدد 1234 را بر 10 تقسیم کنیم و خارح قسمت صحیح آن را استفاده کنیم. در اینجا عدد جدید میشود 123. حال دوباره باقیمانده عدد جدید را بر 10 محاسبه میکنیم. تفاوتی که با مرحله قبل داریم این است که ما یک عدد 1 از حالت قبل داریم و باید قبل از اینکه عدد جدید را وارد کنیم عدد قبل را در 10 ضرب کنیم(چرا؟). سپس کارهای قبل را ادامه میدهیم. این کار را آنقدر ادامه میدهیم تا عدد ما صفر شود.

پیاده سازی قرینه کردن عدد در سی شارپ

برای قرینه کردن عدد در سی شارپ دو روش استفاده میکنیم:

  1. پیاده سازی با for
  2. پیاده سازی با while

کد زیر پیاده سازی قرینه کردن عدد در سی شارپ با for است:

        public static int reverseNumWithFor(int number) {
            int reverse = 0;
            for (; number > 0;) {
                int mod = number % 10;
                reverse *= 10;
                reverse += mod;

                number /= 10;
            }
            return reverse;
        }

همانطور که میبینید ما متدی با یک ورودی و خروجی نوشتیم. ورودی عددی است که میخواهیم قرینه کنیم و خروجی عدد قرینه شده است. متغیر reverse عدد معکوس شده را در خود نگه میدارد. در اخر یک حلقه نوشتیم. این حلقه هر بار یک باقیمانده عدد را میگیریم و آن را در reverse قرار میدهیم. حلقه تا موقعی ادامه دارد که عدد ما بزرگتر از صفر باشد.

کد زیر پیاده سازی قرینه کردن عدد در سی شارپ با while است:

  public static int reverseNumWithwhile(int number) {
            int reverse = 0;
            while (number > 0) {
                int mod = number % 10;
                reverse *= 10;
                reverse += mod;

                number /= 10;
            }
            return reverse;
        }

کد بالا دقیقا شبیه به کد for است و تغیر خاصی داده نشده در الگوریتم.

تست قرینه کردن عدد در سی شارپ

برای تست کدهای بالا، کد main زیر را بزنید:

        public static void Main (string[] args)
        {
            int number = 1234;
            Console.WriteLine(reverseNumWithwhile(number));
            Console.WriteLine(reverseNumWithFor(number));
            Console.ReadKey ();

        }

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *