Skip to content

Commit 9f6ac7b

Browse files
committed
convert number to different base
1 parent bfb4086 commit 9f6ac7b

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

prog.7.7.c

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
// Program to convert a positive integer to another base
2+
3+
#include <stdio.h>
4+
5+
int main (void)
6+
{
7+
const char baseDigits[16] = {
8+
'0', '1', '2', '3', '4', '5', '6', '7',
9+
'8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
10+
int convertedNumber[64];
11+
long int numberToConvert;
12+
int nextDigit, base, index = 0;
13+
14+
// get the number and the base
15+
16+
printf ("Number to be converted? ");
17+
scanf ("%ld", &numberToConvert);
18+
printf ("Base? ");
19+
scanf ("%i", &base);
20+
21+
// convert to the indicated base
22+
23+
do {
24+
convertedNumber[index] = numberToConvert % base;
25+
++index;
26+
numberToConvert = numberToConvert / base;
27+
}
28+
while ( numberToConvert != 0 );
29+
30+
// display the results in reverse order
31+
32+
printf ("Converted number = ");
33+
34+
for ( --index; index >= 0; --index ) {
35+
nextDigit = convertedNumber[index];
36+
printf ("%c", baseDigits[nextDigit]);
37+
}
38+
39+
printf ("\n");
40+
return 0;
41+
}

0 commit comments

Comments
 (0)