Binair to decimal et incrémenté un nbr binair
Résolu
Chabanus
Messages postés
978
Date d'inscription
Statut
Membre
Dernière intervention
-
Chabanus Messages postés 978 Date d'inscription Statut Membre Dernière intervention -
Chabanus Messages postés 978 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
pour passer de décimal en binaire c'est String st=Integer.toBinaryString(100);
et le contraire c'est quelle méthode ???
et comment on fait pour incrémenter un nombre binaire svp ???
pour passer de décimal en binaire c'est String st=Integer.toBinaryString(100);
et le contraire c'est quelle méthode ???
et comment on fait pour incrémenter un nombre binaire svp ???
A voir également:
- Binair to decimal et incrémenté un nbr binair
- Qwerty to azerty - Guide
- Video to video - Télécharger - Conversion & Codecs
- Majuscule to minuscule - Guide
- Bat to exe converter - Télécharger - Édition & Programmation
- Honestech vhs to dvd - Forum Lecteurs et supports vidéo
6 réponses
Bonjour
Pour traduire une chaine binaire en un nombre (si c'est bien ça que tu entends par "le contraire"), si tu es en java, tu as :
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Integer.html
Pour incrémenter un nombre "binaire" il faut lui ajouter 1 :-D
Par définition, il faut toujours ajouter 1 à un nombre pour l'incrémenter, peu importe que ce soit en binaire, en décimal ou en chiffres romains. Il ne faut pas confondre le nombre et sa représentation. Incrémenter concerne le nombre, binaire concerne la représentation.
Pour traduire une chaine binaire en un nombre (si c'est bien ça que tu entends par "le contraire"), si tu es en java, tu as :
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Integer.html
Pour incrémenter un nombre "binaire" il faut lui ajouter 1 :-D
Par définition, il faut toujours ajouter 1 à un nombre pour l'incrémenter, peu importe que ce soit en binaire, en décimal ou en chiffres romains. Il ne faut pas confondre le nombre et sa représentation. Incrémenter concerne le nombre, binaire concerne la représentation.
Je ne trouve pas dans ton lien une méthode qui convertit un binaire en décimal. parseInt c'est pour passer de chaine de caractère en entier.
Merci de me corriger si je me trompe.
cdlt
Merci de me corriger si je me trompe.
cdlt
La méthode toBinaryString que tu proposais transforme un nombre en un string qui est la représentation binaire de ce nombre
Le lien que je t'ai donné permet de transformer une chaine qui est la représentation binaire d'un nombre, en ce nombre.
C'est très exactement la réciproque de ton toBinaryString
Le problème c'est que tu emploies un vocabulaire approximatif : tu dis que toBinaryString traduit du décimal en binaire, ce qui ne veut rien dire vu qu'il n'y a pas de type décimal ni binaire en Java. Regarde de près ce que fait cette méthode, tu verras bien qu'elle prend un Integer et en sort un String et que parseInt fait exactement l'opération inverse.
Il n'y a pas deux catégories d'integer, des binaires et des décimaux : ils sont tous codés en binaire (mais peu importe comment à la limite) dans la mémoire de l'ordinateur.
Le lien que je t'ai donné permet de transformer une chaine qui est la représentation binaire d'un nombre, en ce nombre.
C'est très exactement la réciproque de ton toBinaryString
Le problème c'est que tu emploies un vocabulaire approximatif : tu dis que toBinaryString traduit du décimal en binaire, ce qui ne veut rien dire vu qu'il n'y a pas de type décimal ni binaire en Java. Regarde de près ce que fait cette méthode, tu verras bien qu'elle prend un Integer et en sort un String et que parseInt fait exactement l'opération inverse.
Il n'y a pas deux catégories d'integer, des binaires et des décimaux : ils sont tous codés en binaire (mais peu importe comment à la limite) dans la mémoire de l'ordinateur.
Ben regarde avec cette exemple :
public class Serveur {
public static void main(String []argv) throws Exception
{
int decima = 33;
String binaire= Integer.toBinaryString(decima);
System.out.println(binaire);
int decimal= Integer.parseInt(binaire);
System.out.println(decimal);
}
}
decimal ne vaut pas 33 ... ?
Ps: j'ai peut être compris ^^' tu pensais que je voulais rendre une chaine en entier en resumer, alors que je veux la conversion.
01 --> 1
10 --> 2
etc...
public class Serveur {
public static void main(String []argv) throws Exception
{
int decima = 33;
String binaire= Integer.toBinaryString(decima);
System.out.println(binaire);
int decimal= Integer.parseInt(binaire);
System.out.println(decimal);
}
}
decimal ne vaut pas 33 ... ?
Ps: j'ai peut être compris ^^' tu pensais que je voulais rendre une chaine en entier en resumer, alors que je veux la conversion.
01 --> 1
10 --> 2
etc...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Tu ne respectes pas ce qui est indiqué dans le lien que je t'ai donné. Il y a un paramètre radix, et tu l'as joyeusement zappé.
il faut lui indiquer depuis quelle base tu veux convertir.
int decimal= Integer.parseInt(binaire,2);
tu pensais que je voulais rendre une chaine en entier en resumer. Oui je le pensais. Et je le pense encore :-)
il faut lui indiquer depuis quelle base tu veux convertir.
int decimal= Integer.parseInt(binaire,2);
tu pensais que je voulais rendre une chaine en entier en resumer. Oui je le pensais. Et je le pense encore :-)