Bonjour, je veux faire un code qui convertit un hexadecimal en entier.
mais lorsque j'éxecute le code tout ce passe comme si leDecimal = LeChiffre
lorsque je tape 1 j'obtiens 17. Pouvez vous m'aider à trouver une solution.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
int main(void)
{
	char leHexa;
	int leChiffre = 0;
	int leDecimal=0;
	do 
	{
		scanf("%c",&leHexa);
		if (leHexa >= '0' && leHexa <= '9')
			leChiffre = leHexa - '0';
		/*else if (leHexa >= 'a' && leHexa <= 'f')
			leChiffre = leHexa - 'a' + 10;*/
		else if (leHexa >= 'A' && leHexa <= 'F')
			leChiffre = leHexa - 'A' + 10;
 
 
	leDecimal = (leDecimal*16)  + leChiffre;
	}
	while (leHexa != '\n');
	printf("%d\n", leDecimal);
	return 0;
}