Bonjour,
J'essaye de faire le labo java suivant : Lire un nombre entier nbr compris entre 10001 et 99999 avec le chiffre des unités différent de 0. Une lecture doit être redemandée si l’utilisateur entre une autre valeur.Et écrire une classe Lib pour sommeChiffres(calculer somme des chiffres que l'utilisateur entre) -->Appeler la méthode statique Lib.sommeChiffres(nbr) qui doit retourner une valeur entière qui correspond à la somme des chiffres de nbr.Et symetrique--> Appeler la méthode statique Lib.symetrique(nbr) qui doit retourner une valeur entière qui correspond au symétrique du nombre nbr.(symetrique = retourner la valeur que utilisateur entre à l'envers).
J'aimerais savoir ou se trouve mes fautes:
Code:import javax.swing.JOptionPane; public class Java31 { public static void main(String args[]) { String str,str1,message=null; int nombre=0,a,b,c,d,e=0,somme,symetrique; //Demander à l'utilisateur d'entrer une valeur entière comprise //entre 10001 et 999999 if(e==0) do{ str=JOptionPane.showInputDialog("Entrez nbr (10001 et 99999)"); //Convertir le texte en valeur numérique entière nombre= Integer.parseInt(str); } while( nombre< 10001 || nombre >999999 ); a= nombre/10000; nombre = nombre%10000; b= nombre/1000; nombre= nombre%1000; c=nombre/100; nombre=nombre%100; d=nombre/10; e=nombre%10; somme = Lib1.sommeChiffres( nombre); symetrique = Lib1.symetrique( nombre); message = "La somme des chiffres de" + nombre + "est égale à" + somme + "" + "\n Le symétrique de" + nombre + "est" + symetrique; JOptionPane.showMessageDialog( null, message, "Laboratoire 1", JOptionPane.INFORMATION_MESSAGE ); System.exit(0); }} Ma classe Lib : public class Lib1 { static int sommeChiffres(int chiffre) { int a , reste; a=0; reste=0; do{ a=chiffre%10; reste = reste + a ; chiffre =chiffre/10; } while(chiffre!=0); return chiffre; } static int symetrique( int nombre1) { int a,b,c,d,e,nombre=0; a= nombre/10000; nombre = nombre%10000; b= nombre/1000; nombre= nombre%1000; c=nombre/100; nombre=nombre%100; d=nombre/10; e=nombre%10; nombre1 = a+b+c+d+e; return nombre1; }
Merci d'avance
-----