Signaler

Algorithme qui convertit lis nombre entiers

Posez votre question mimi - Dernière réponse le 14 déc. 2011 à 20:50
Bonjour,
j'ai un problème dans l'algorithme je ne sais pas comment je fait pour convertire les nombre à ca algorithme.

Écrire la algorithme qui convertit lis nombre entiers de 32 à 64 en binaire .en décimal codé binaire (DCB) puis en hexadécimal

En décimal codé en binaire (DCB) ; chaque chiffre décimal est écrit en binaire sur 4 bits-

Exemples (147)10=(0001 0100 0111)BCD et (23.15)10=(0010 00110,0001 0101 )
Afficher la suite 
Utile
+0
moins plus
premièrement, tu dois faire une loop ( for ) pour incrémenter de 32 a 64
et dans cette loop tu dois utiliser une autre ( while ) , dans laquelle on trouve la plus grande puissance de 2 plus petit au nombre choisi dans (for), et on soustrait ce puissance du nb, tout en enregistrant le puissance pour savoir s'il s'agit de 1 ou de 0, et chaque fois qu'on finit (while), on imprime le nb binaire obtenu......
si tu n'as pas compris, je pourrais t'aider d'avantage
mimi- 9 déc. 2011 à 15:53
Merci pour l'aide, mais je ne comprenais pas.Donnez-moi un exemple, si vous permettez
Répondre
Ajouter un commentaire
Utile
+0
moins plus
c'est l'algorithme avec la sortie et ça marche correctement


public class decimal {
public static void main(String[] args) {
int i,j;
double k;
String s;
for (i=32; i<=64; i++)
{
s="";
k=i;
j=7;
while (j>-1)
{
if (Math.pow(2,j)>k)
{
s=s+'0';
}
else
{
s= s + '1';
k=k-Math.pow(2, j);
}
j--;
}
System.out.println(i+"(10) = "+ s + " (2)");
}
}
}


32(10) = 00100000 (2)
33(10) = 00100001 (2)
34(10) = 00100010 (2)
35(10) = 00100011 (2)
36(10) = 00100100 (2)
37(10) = 00100101 (2)
38(10) = 00100110 (2)
39(10) = 00100111 (2)
40(10) = 00101000 (2)
41(10) = 00101001 (2)
42(10) = 00101010 (2)
43(10) = 00101011 (2)
44(10) = 00101100 (2)
45(10) = 00101101 (2)
46(10) = 00101110 (2)
47(10) = 00101111 (2)
48(10) = 00110000 (2)
49(10) = 00110001 (2)
50(10) = 00110010 (2)
51(10) = 00110011 (2)
52(10) = 00110100 (2)
53(10) = 00110101 (2)
54(10) = 00110110 (2)
55(10) = 00110111 (2)
56(10) = 00111000 (2)
57(10) = 00111001 (2)
58(10) = 00111010 (2)
59(10) = 00111011 (2)
60(10) = 00111100 (2)
61(10) = 00111101 (2)
62(10) = 00111110 (2)
63(10) = 00111111 (2)
64(10) = 01000000 (2)
BUILD SUCCESSFUL (total time: 1 second)
mimi- 14 déc. 2011 à 18:45
merci ,mais pour les bas décimal codé binaire (DCB) et hexadécimal .comment je fais
Répondre
leen.net 213Messages postés lundi 31 janvier 2011Date d'inscription 14 mai 2014 Dernière intervention - 14 déc. 2011 à 20:50
je pense que ton tête ne fonctionne pas :P:P
remplace la base 2 dans l'algorithme par la base 16
Répondre
Ajouter un commentaire

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !