[JAVA] convertion binaire

Résolu
oliver3923 Messages postés 971 Date d'inscription   Statut Membre Dernière intervention   -  
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   -
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   Statut Contributeur Dernière intervention   846
 
Je pense pas que je m'inquièterais de toutes manières ^^
2
oliver3923 Messages postés 971 Date d'inscription   Statut Membre Dernière intervention   143
 
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   Statut Contributeur Dernière intervention   846
 
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   Statut Membre Dernière intervention   143
 
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   Statut Membre Dernière intervention   143
 
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   Statut Contributeur Dernière intervention   846
 
De rien :-)
0
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   846
 
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 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
il vaut mieux utiliser les ArrayList que les Vector ...
0