[JAVA] convertion binaire

Résolu/Fermé
oliver3923 Messages postés 971 Date d'inscription vendredi 14 mai 2010 Statut Membre Dernière intervention 15 novembre 2014 - 16 oct. 2010 à 15:09
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 17 oct. 2010 à 19:05
Bonjour,

j'ai fait un programme en java pour convertir des nombres décimaux en nombres binaires (ou n'importe quelle autre base)

voici d'abord le code :

import java.util.Scanner;


public class Convertisseur{
	public static void main (String[] args) {
		
		int decimal, quotient, reste, choix, base;
		Scanner sc = new Scanner (System.in);
		
	
		System.out.println ("Que voulez vous faire : ");
		System.out.println ("1. decimal--binaire");
		System.out.println ("2. binaire--decimal");
		System.out.println ("3. decimal-- base(x)");
		choix = sc.nextInt();
		
		switch (choix)
		{
			case 1 :
			{
		System.out.print ("entrez un nombre decimal : ");
		decimal = sc.nextInt();
		
		quotient = decimal /2;		  
		
		reste = decimal %2;
		
		System.out.print (reste);
				
					while (quotient >= 2)
		{
			
			reste = quotient %2;
			quotient = quotient / 2;
		
		System.out.print (reste);
		}
		
		System.out.print (quotient+ "\n");
		
			}
		
				break;
			
			case 2 :
				break;
			
			case 3 :
			{
				System.out.print ("entrez un nombre decimal : ");
				decimal = sc.nextInt();
				System.out.print ("entrez une base : ");
				base = sc.nextInt();
				
				quotient = decimal / base;
				reste = decimal - quotient * base;
				System.out.print (reste);
				
				while (quotient >= base)
				{
					reste = quotient %base;
					quotient = quotient / base;
					System.out.print (reste);
				}
				System.out.println (quotient);
				
			}
			
		}
		
	
}
}


alors j'ai deux questions :
la première comment faire pour afficher le résultat en binaire dans le bon sens?
Pour ceux qui ne savent pas faire les conversions il faut diviser le nombre décimal par 2 (en nombre entier) puis le quotient par 2 a nouveau jusqu'a ce que le quotient soit inférieur a 2 (donc 0 ou 1)
le résultat est alors le dernier quotient suivi par tout les restes pris a l'envers
or mon programme donne ce résultat a l'endroit (pas une catastrophe suffit de lire a l'envers mais c'est désagréable^^)
donc si vous savez comment faire ca serait sympa de m'expliquer


la seconde question : vous avez probablement remarqué qu'il n'y a rien pour la partie conversion binaire-décimal
c'est tout simplement pcq je n'y arrive pas
j'avais pensé a mettre le nombre binaire dans un tableau puis faire une boucle qui part de la fin en prenant 3 chiffres a chaque fois (ou 4 je ne me souviens plus) mais je ne peux pas savoir a l'avance la taille du tableau a utiliser et il faudrait faire entrer a chaque chiffre donc c'est tout sauf pratique.
a nouveau si vous avez une solution je prend


merci d'avance pour vos réponses


A voir également:

6 réponses

Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
17 oct. 2010 à 13:18
Je pense pas que je m'inquièterais de toutes manières ^^
2
oliver3923 Messages postés 971 Date d'inscription vendredi 14 mai 2010 Statut Membre Dernière intervention 15 novembre 2014 143
16 oct. 2010 à 18:15
pourrait tu m'expliquer les tableaux a taille variable stp?
je ne trouve rien de clair sur google (je ne suis pas très bon en java mais j'aimerais bien réussir ce programme^^)
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
17 oct. 2010 à 10:17
Hello,

Jette donc un oeil ici : http://download.oracle.com/javase/1.4.2/docs/api/java/util/Vector.html

Si tu lis l'anglais tu ne devrais pas avoir de mal à comprendre !
0
oliver3923 Messages postés 971 Date d'inscription vendredi 14 mai 2010 Statut Membre Dernière intervention 15 novembre 2014 143
17 oct. 2010 à 11:33
ok merci
je vais lire ca (ca fait longtemps que j'ai pas fait d'anglais donc le temps de traduire tkt pas si t'as plus de nouvelles pour mon programme pendant 1jour ou 2)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
oliver3923 Messages postés 971 Date d'inscription vendredi 14 mai 2010 Statut Membre Dernière intervention 15 novembre 2014 143
17 oct. 2010 à 18:42
lol
je voulais juste dire pense pas que je suis pas sympa pcq je te remercie pas tout de suite^^
je comprend a peu près ce que j'ai lu ca devrait aller

donc merci pour ton aide^^
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
17 oct. 2010 à 19:05
De rien :-)
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
16 oct. 2010 à 16:56
Salut,

1/ Lit ton tableau de la droite vers la gauche, et place les chiffres un à un dans un second tableau.

2/ Il existe des tableau à taille variable en Java, les "vector" je crois :-)
-1
choubaka Messages postés 39409 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 24 décembre 2024 2 104
16 oct. 2010 à 17:36
il vaut mieux utiliser les ArrayList que les Vector ...
0