একটি ইন্টিজারকে ডেসিমেল নম্বর সিস্টেম (বেস-১০) থেকে বাইনারি নম্বর সিস্টেম (বেস-২) তে কনভার্ট করা। ইন্টিজারের আকার ৩২ বিট ধরা হয়েছে, সংখ্যাটিকে বেস দিয়ে ভাগ করতে হয়। কম্পিউটার এটি ব্যবহার করে ইন্টিজার ভ্যালুকে বাইটে রূপান্তর করে।
Input:10 Output:1010
ব্যাখ্যা
যদি ডেসিমেল নম্বর ১০ হয়
১০ কে ২ দিয়ে ভাগ করলে ভাগশেষ ০। তাই ০।
১০ কে ২ দিয়ে ভাগ করলে নতুন নম্বর ১০/২ = ৫।
৫ কে ২ দিয়ে ভাগ করলে ভাগশেষ ১। তাই ১।
৫ কে ২ দিয়ে ভাগ করলে নতুন নম্বর ৫/২ = ২।
২ কে ২ দিয়ে ভাগ করলে ভাগশেষ ০। তাই ০।
২ কে ২ দিয়ে ভাগ করলে নতুন নম্বর ২/২ = ১।
১ কে ২ দিয়ে ভাগ করলে ভাগশেষ ১। তাই ১।
১ কে ২ দিয়ে ভাগ করলে নতুন নম্বর ১/২ = ০।
নম্বর ০ হয়ে গেলে অ্যারেটি রিভার্স অর্ডারে প্রিন্ট করুন। সমতুল্য বাইনারি নম্বর ১০১০।
উদাহরণ
#include <iostream> using namespace std; int main() { long n, d, r, binary = 0; n=10; d = n; int temp = 1; while (n!=0) { r = n%2; n = n / 2; binary = binary + r*temp; temp = temp * 10; } printf("%ld", binary); return 0; }