WAP to convert Hexadecimal to Decimal number system
C program to convert
Hexadecimal to Decimal number system
Write a C program to read hexadecimal
number from user and convert it to Decimal number system. How to convert from
Hexadecimal number system to Decimal number system in C programming. Logic to
convert hexadecimal number to decimal number system in C program.
Example
Input
Input hexadecimal: 1A
Output
Decimal number: 26
Required knowledge
Hexadecimal number system
Hexadecimal
number system is a base 16 number system. It uses 16 symbols to represent all
number i.e. 0123456789ABCDEF
Decimal number system
Decimal
number system is a base 10 number system. It uses 10 symbols to represent all
numbers i.e. 0123456789
Algorithm to convert Hexadecimal to Decimal
Step by step descriptive logic
to convert hexadecimal to decimal number system.
1.
Read any hexadecimal number from user. Store it in some variable hex.
2.
Initialize decimal = 0, digit = length_of_hexadecimal_digit - 1 and i = 0.
4.
Inside the loop find the integer value of hex[i]. Store it in some variable say val.
5.
Convert the hex to decimal using decimal = decimal + (val * 16 ^ digit). Where val = hex[i].
Program to convert hexadecimal to decimal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
/** * C program to convert Hexadecimal to
Decimal number system */ #include <stdio.h> #include <math.h> #include <string.h> int main() { char hex[17]; long long decimal,
place; int i = 0,
val, len; decimal = 0; place = 1; /* * Input
hexadecimal number from user */ printf("Enter
any hexadecimal number: "); gets(hex); /* Find the length
of total number of hex digit */ len = strlen(hex); len--; /* * Iterate
over each hex digit */ for(i=0; hex[i]!='\0';
i++) { /* *
Find the decimal representation of hex[i] */ if(hex[i]>='0' &&
hex[i]<='9') { val
= hex[i] - 48; } else if(hex[i]>='a' &&
hex[i]<='f') { val
= hex[i] - 97 + 10; } else if(hex[i]>='A' &&
hex[i]<='F') { val
= hex[i] - 65 + 10; } decimal
+= val * pow(16, len); len--; } printf("Hexadecimal
number = %s\n", hex); printf("Decimal
number = %lld", decimal); return 0; } |
Output
Enter any hexadecimal number: 1a
Hexadecimal number = 1a
Decimal number = 26
Lucky Club Casino Site
ReplyDeleteLucky Club Casino is operated by the same people as Vegas Hotel & Casino in Las Vegas. They're not affiliated with any casinos, Rating: 5 · Review by LuckyClub.com luckyclub