La fonction suivante peut convertir des nombres décimaux en nombres binaires :
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
#inclure
#inclure
#définir MAX 33
en utilisant l'espace de nomsestd;
/* Convertir un nombre décimal en nombre binaire (représentation sous forme de chaîne) */
char*decToBin(longnum);
intmain()
{
longdec = 123456789;
cout
cout
retour0;
}
/* Convertir un nombre décimal en nombre binaire (représentation sous forme de chaîne) */
char*decToBin(longnum)
{
char*arr;
chartemp;
inti, n;
arr = (char*)malloc(sizeof(char) * MAX);
n = 0;
pendant(num > 0)
{
arr[n++] = num % 2 + '0';
num /= 2;
}
pour(i=0; i
{
temp = arr[i];
arr[i] = arr[n-1-i];
arr[n-1-i] = temp;
}
arr[n] = '
retourarr;
}
1. Un nombre décimal fait référence à une valeur dans laquelle tous les chiffres sont composés de nombres inférieurs à 10 (0..9), comme 123, 45678, etc. Un nombre binaire fait référence à une valeur numérique dans laquelle tous les chiffres sont composés de chiffres inférieurs à 2 (0..1), comme 10, 1011, etc. Convertir un nombre décimal en nombre binaire consiste à convertir une valeur composée entièrement de chiffres inférieurs à 10 en une valeur composée entièrement de chiffres inférieurs à 2. Par exemple, le nombre décimal 100 est converti en un nombre binaire 1100100.
2. L'algorithme de conversion des nombres décimaux en nombres binaires consiste à utiliser la méthode du reste euclidien, c'est-à-dire à diviser continuellement le nombre à convertir par 2 pour prendre le reste, à enregistrer le reste et à utiliser le nouveau quotient pour continuer à diviser par 2 pour prendre le reste jusqu'à ce que le nombre soit zéro. Puisque le reste est inférieur à 2, toutes les valeurs composées de restes sont composées de 0 et 1. Ensuite, inversez simplement ces restes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!