برنامه تبدیل عدد از مبنای ۱۰ به ۲ – به زبان ساده

۸۲۱۳ بازدید
آخرین به‌روزرسانی: ۷ تیر ۱۴۰۲
زمان مطالعه: ۵ دقیقه
دانلود PDF مقاله
برنامه تبدیل عدد از مبنای ۱۰ به ۲ – به زبان سادهبرنامه تبدیل عدد از مبنای ۱۰ به ۲ – به زبان ساده

در این مطلب، روش نوشتن برنامه تبدیل عدد از مبنای ۱۰ به ۲ تشریح می‌شود. در واقع، هدف نوشتن برنامه‌ای است که یک عدد (در مبنای ۱۰) را از ورودی دریافت کرده و سپس، آن را به مبنای ۲ ببرد. برای انجام این کار، روش‌های گوناگونی وجود دارد. در ادامه، روش‌های تبدیل عدد از مبنای ۱۰ به مبنای ۲ (دستگاه اعداد دودویی) مورد بررسی قرار خواهند گرفت. همچنین، کد پیاده‌سازی این روش‌ها در زبان‌های برنامه‌نویسی گوناگون شامل ++C ،C، «جاوا» (Java)، «پایتون» (Python) و «سی‌شارپ» (#C) ارائه شده است.

997696

برنامه تبدیل عدد از مبنای ۱۰ به ۲ با روش تکرار شونده

برای هر عددی، می‌توان بررسی کرد که iاُمین بیت آن صفر (خاموش) یا یک (روشن) است. این کار، با AND بیتی 2i2^i (دو به توان i) انجام می‌شود.

  1. عدد «NUM» از ورودی دریافت می‌شود. هدف بررسی این است که بیت صفرم آن، روشن (۱) یا خاموش (۰) است.
    • bit = 2 ^ 0 (هدف بررسی بیت صفرم است، بنابراین i = 0)
    • اگر NUM & bit == 1 باشد، بدین معنا است که 0اُمین بیت روشن و در غیر این صورت، 0اُمین بیت خاموش است.
  2. به طور مشابه، اگر هدف بررسی این است که آیا ۵اُمین بیت روشن یا خاموش است، اعمال زیر باید انجام شود.
    • bit = 2 ^ 5 (هدف بررسی بیت پنجم است، بنابراین i=5)
    • اگر NUM & bit == 1 باشد، بدین معنا است که 5اُمین بیت روشن (۱) و در غیر این صورت،‌ به معنای خاموش بودن (۰) بیت مذکور است.

«عدد صحیح بدون علامت» (Unsigned Integer) سی و دو بیتی (۳۲ بیتی) که حاوی ۳۱-۰ بیت است، از ورودی دریافت می‌شود. برای چاپ کردن ارائه دودویی عدد صحیح بدون علامت، کار از از ۳۱اُمین بیت آغاز و بررسی می‌شود که بیت مذکور خاموش یا روشن است. اگر این بیت روشن باشد، «۱» و در غیر این صورت، صفر (۰) چاپ می‌شود. اکنون، بررسی می‌شود که بیت ۳۰اُم روشن یا خاموش است. اگر این بیت روشن باشد مقدار ۱ و در غیر این صورت، ۰ در خروجی چاپ می‌شود. این کار برای همه بیت‌ها از ۳۱ تا ۰ باید انجام  شود. در نهایت، ارائه دودویی عدد در خروجی دریافت خواهد شد.

برنامه تبدیل عدد از مبنای ۱۰ به ۲ با روش بازگشتی

در ادامه، الگوریتم بازگشتی (Recursive Method) تبدیل عدد NUM از مبنای ۱۰ به مبنای ۲ (دستگاه دودویی) ارائه شده است.

  1. اگر NUM > 1
    • NUM را در پشته قرار بده
    • به صورت بازگشتی، تابع با NUM / 2 را فراخوانی کن.
  2. و
    • NUM را از پشته حذف (POP) کن، آن را بر دو تقسیم و باقی‌مانده تقسیم را چاپ کن.

برنامه بازگشتی تبدیل عدد از مبنای ۱۰ به مبنای ۲ در ++C

برنامه بازگشتی تبدیل عدد از مبنای ۱۰ به مبنای ۲ در C

برنامه بازگشتی تبدیل عدد از مبنای ۱۰ به مبنای ۲ در جاوا

برنامه بازگشتی تبدیل عدد از مبنای ۱۰ به مبنای ۲ در پایتون ۳

برنامه بازگشتی تبدیل عدد از مبنای ۱۰ به مبنای ۲ در #C

برنامه بازگشتی تبدیل عدد از مبنای ۱۰ به مبنای ۲ در PHP

خروجی

در زیر، خروجی قطعه کدهای بالا برای اعداد ۷ (۱۱۱) و ۴ (۱۰۰) ارائه شده است.

111
100

تبدیل عدد از مبنای ۱۰ به ۲ با روش بازگشتی و عملگر بیتی

مراحل لازم برای تبدیل یک عدد اعشاری به عدد دودویی، در ادامه بیان شده است.

  1. n > 0 را بررسی کن.
  2. عدد را یک بیت به سمت راست شیفت بده و تابع بازگشتی را فراخوانی کن.
  3. بیت‌های عدد را چاپ کن.

برنامه تبدیل عدد از مبنای ۱۰ به مبنای ۲ در ++C

برنامه تبدیل عدد از مبنای ۱۰ به مبنای ۲ در جاوا

برنامه تبدیل عدد از مبنای ۱۰ به مبنای ۲ در پایتون ۳

برنامه تبدیل عدد از مبنای ۱۰ به مبنای ۲ در #C

برنامه تبدیل عدد از مبنای ۱۰ به مبنای ۲ در PHP

خروجی

خروجی قطعه کدهای بالا، برای اعداد ۱۳۱ (10000011) و ۳ (11)، در ادامه ارائه شده است.

10000011
11

اگر نوشته بالا برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

^^

بر اساس رای ۲۴ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
GeeksforGeeks
دانلود PDF مقاله
نظر شما چیست؟

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