rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Convertir chifffres en lettres en java

Posté par éric, le lundi 17 mai 2004 à 10:12:30
Bonjour je programme sous java et j'aimerai convertir des nombres en lettres,
j'ai par exempleun tableau {0,1,2,3}et j'aimearai qu'à l'affichage ils prennent "la valeur" {a, b ,c,d}.
Merci
Répondre à éric  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Nico, le lundi 17 mai 2004 à 10:20:52
Yop,

je vois 2 possibilités :
- tu fais un énorme switch avec toutes tes possibilités
- tu regardes quelle est la différence en ASCII entre 0 et a. Si je ne me trompe pas, les nombres ASCII se suivent donc tu n'auras qu'à ajouter la meme somme.

Je ne suis pas sur pour la 2eme solution. Vérifie.

++

Nico
Répondre à Nico

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
éric, le lundi 17 mai 2004 à 11:16:36
bonjour, j'ai éeeayé avec un switch mais ça me met des erreurs à la compilation : voici mon bout de code :
for(j=0;j<tab.length;j++){
switch(tab[1][j]){
case 0 : System.out.println ( tab[1][j]="a");break;
case 1 : System.out.println ( tab[1][j]="b");break;
case 2 : System.out.println ( tab[1][j]="c");break;
case 3 : System.out.println ( tab[1][j]="d");break;
case 4 : System.out.println ( tab[1][j]="e");break;
case 5 : System.out.println ( tab[1][j]="f");break;
case 6 : System.out.println ( tab[1][j]="g");break;}
}
merci
Répondre à éric

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le lundi 17 mai 2004 à 11:59:00
Trop long :
Exemple :
int i=11;
System.out.println(Long.toHexString(i));


fait la même chose.

@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
éric, le lundi 17 mai 2004 à 13:32:48
Bonjour !
Est ce que tu pourrais expliciter ce que tu as fait STP
merci
Répondre à éric

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le lundi 17 mai 2004 à 14:40:17
Euuu, expliciter quoi ?
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Long.html
J'ai utilisé une méthode de la classe Long pour cet exemple, c'est tout.

Elle permet d'afficher la valeur héxadécimale d'un nombre et c'est ce que tu veux, non ?
@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
éric, le lundi 17 mai 2004 à 15:25:22
Bonjour batmat, je suis désolé mais je débute en java et ce qui est évident pour toi ne l'est pas forcément pour moi , et je ne comprends pas ce que tu me dis.je t'envoi ce que j'ai écrit pour que tu me dise si je suis sur la bonne route.Merci
En fait je l'ai déjà envoyé quelque message plus haut .qu'en penses tu?
Je ne comprends pas ce qui cloche.
Répondre à éric

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le lundi 17 mai 2004 à 16:18:26
OK, reprenons un peu plus haut donc.
1) Tu sais ce que veut dire hexadécimal ?
2) Quelles erreurs tu as à la compil ?

@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
éric, le lundi 17 mai 2004 à 10:30:48
Ok j'essaye merci
Répondre à éric

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le lundi 17 mai 2004 à 10:40:31
'lut,

Long.toHexString()

Dans l'autre sens, il suffit d'utiliser paseLong ou parseInt avec le paramètre radix à 16

@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Fabien, le lundi 17 mai 2004 à 15:53:54
Dans ton case tu demande un affichage (system...) et une incrémentation impossible (tab[]=), il faut que tu définisse 2 tab 1 pour chaque type. du moins je pense.
Répondre à Fabien

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
éric, le lundi 17 mai 2004 à 16:14:56
Bonjour fabien , tu me conseille e créer 2 tableaux , mais comment t'écrirai le swith?
Répondre à éric

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le lundi 17 mai 2004 à 16:31:10
Déjà, comment tu as déclaré ton tableau et quelles sont tes erreurs de compil ?

@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le lundi 17 mai 2004 à 16:42:08
Oh le boulet que je suis...

voilà, c'est ça qu'il faut écrire (en remplacant j par la variable que tu veux afficher et en encadrant le tout par ton itération) :
System.out.println((char)('a'+j));


Si tu veux des explications, pose des questions plus précises sur ce que tu ne comprends pas.

Ce que tu as écrit plus haut est pas mal, c'est juste inutilement plus compliqué que ce que je viens d'écrire. Et la simplicité est la première chose vers laquelle il faut tendre en programmation, un programme qui fait des trucs avec un code compliqué et illisible ne sera bon qu'à jeter au premier bug...

Rappelle toi de ça : KISS => "Keep It Simple, Stupid !" ou "Small is beautiful" :-)

Si tu ne donnes pas la déclaration de ton tableau et les erreurs de compil que tu obtiens, je ne peux pas t'aider pour te dire où est ton erreur.

@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

14


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
éric, le mardi 18 mai 2004 à 08:51:52
Bonour Btmat;
J'ai suivi tes conseils et je ne suis pas loin d'arriver à mes fins seuleument , je crois que j'ai pas été clair dans mes explications, e n fait le tableau s'affiche comme ça:
1 3
2 5
0 6
0 5

et je voudrais qu'il s"affiche come ça:
b 3
c 5
a 6
a 5

Merci
Répondre à éric

15


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
batmat, le mardi 18 mai 2004 à 09:47:13
Il faut se méfier du java parce qu'on est souvent habitué à jouer avec les caractères ASCII et le Java est en Unicode (ASCII : sur 8 bits => 256 possibilités, Unicode : 16 bits => 655536 !)

Mais bref, ça ça devrait marcher. La façon la plus propre que je vois, c'est d'utiliser le code de base et y ajouter le chiffre. C'est à dire qu'on va trouver le numéro du a et y ajouter donnera ... ben a :) 1 donnera b etc... (attention, si tes valeurs peuvent dépasser 26, vérifie bien que tu obtiens ce que tu cherche).

=> DONC, mais comment faire pour avoir le code de a ??? Eh ben comme en C : 'a'

Il faut donc ajouter 'a' à l'index de ta lettre et caster le résultat en char pour l'afficher.

Ça, chez moi ça marche® :
int tab[][] = new int[2][4];
tab[0][0] = 1;
tab[1][0] = 3;
tab[0][1] = 2;
tab[1][1] = 5;
tab[0][2] = 0;
tab[1][2] = 6;
tab[0][3] = 0;
tab[1][3] = 5;
		
for (int j = 0; j < tab[0].length; j++)
{
	System.out.println(((char)('a'+tab[0][j]))+" "+tab[1][j]);
}


En espérant que ça t'aide...
@++

Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Répondre à batmat

16


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 éric, le mardi 18 mai 2004 à 10:06:37
Bonjour , Merci pour ton aide entre temps j'ai trouvé la solution de mon problème, Merci de m'avoir écouté!
Répondre à éric
Logiciels pertinents trouvés dans les téléchargements
Télécharger Free Mp3 Wma Converter 2.0Free Mp3 Wma Converter - Free Mp3 Wma Converter permet de convertir tout vos fichiers Mp3 , Wma , Ogg , AAC , m4a , mp4 , Ape , flac, Wav : ...Catégorie: Conversion
Licence: Freeware/gratuit
Télécharger AMV Convert Tool 3.68AMV Convert Tool - Le package MP3 Player Utilities contient notamment un lecteur permettant de lire les fichiers au format AMV ainsi qu'un...Catégorie: Edition vidéo
Licence: Freeware/gratuit
Télécharger Mobile 3GP Converter 1.0Mobile 3GP Converter - Le programme "Mobile 3GP Converter" permet de convertir des fichiers au format 3GP (extension *.3gp ou *.3g2) vers un...Catégorie: Edition vidéo
Licence: Freeware/gratuit
Télécharger Ipod converter 3.07Ipod converter - Destiné aux heureux possesseurs d'Ipod vidéo, le logiciel Ipod Converter permet de convertir des fichiers au format Mpeg,...Catégorie: Edition vidéo
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « convertir chifffres en lettres en java »