একটি হেক্সাডেসিমেল নম্বর ইনপুট হিসেবে দেওয়া থাকলে, সেটি ডেসিমেল নম্বরে কনভার্ট করতে হবে।
কম্পিউটারে হেক্সাডেসিমেল নম্বর বেস ১৬-এ রিপ্রেজেন্ট করা হয় এবং ডেসিমেল নম্বর বেস ১০-এ ০-৯ মান দিয়ে। হেক্সাডেসিমেল নম্বরে ০-১৫ পর্যন্ত ডিজিট থাকে যেখানে ১০=A, ১১=B, ১২=C, ১৩=D, ১৪=E, ১৫=F।
হেক্সাডেসিমেল থেকে ডেসিমেল কনভার্ট করার ধাপ:
- ডানদিক থেকে বামদিক রিমেইন্ডার দিয়ে ডিজিট এক্সট্র্যাক্ট করুন এবং পাওয়ার ০ থেকে শুরু করে (ডিজিট সংখ্যা - ১) পর্যন্ত ১ করে বাড়ান
- ইনপুটের ডিজিটগুলোকে বেস ও পাওয়ারের সাথে গুণ করে ফলাফল সংরক্ষণ করুন
- সব গুণফল যোগ করে চূড়ান্ত ফলাফল পান যা হবে ডেসিমেল নম্বর
হেক্সাডেসিমেল থেকে বাইনারি কনভার্সন হলে পাওয়ারের বেস ১৬ হবে কারণ হেক্সাডেসিমেলের বেস ১৬।
নিচে হেক্সাডেসিমেল থেকে ডেসিমেল কনভার্সনের চিত্রগত উপস্থাপনা দেওয়া হলো:

উদাহরণ
Input: ACD A(10) ডেসিমেলে: 10 X 16^2 = 2560 C(12) ডেসিমেলে: 12 X 16^1 = 192 D(13) ডেসিমেলে: 13 X 16^0 = 13 Output: total = 13 + 192 + 2560 = 2765
আলগরিদম
Start
Step 1 -> declare function to convert hexadecimal to decimal
int convert(char num[])
Set int len = strlen(num)
Set int base = 1
Set int temp = 0
Loop For int i=len-1 and i>=0 and i--
IF (num[i]>='0' && num[i]<='9')
Set temp += (num[i] - 48)*base
Set base = base * 16
End
Else If (num[i]>='A' && num[i]<='F')
Set temp += (num[i] - 55)*base
Set base = base*16
End
End
return temp
step 2 -> In main()
declare char num[] = "3F456A"
Call convert(num)
Stop
C++ প্রোগ্রাম উদাহরণ
#include<iostream>
#include<string.h>
using namespace std;
//convert hexadecimal to decimal
int convert(char num[]) {
int len = strlen(num);
int base = 1;
int temp = 0;
for (int i=len-1; i>=0; i--) {
if (num[i]>='0' && num[i]<='9') {
temp += (num[i] - 48)*base;
base = base * 16;
}
else if (num[i]>='A' && num[i]<='F') {
temp += (num[i] - 55)*base;
base = base*16;
}
}
return temp;
}
int main() {
char num[] = "3F456A";
cout<
আউটপুট
3F456A after converting to deciaml becomes : 4146538