Probleme java

Résolu
nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -  
nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
alors j'aimerai écrire une classe java qui permet de convertir une chaine binaire en un polynôme , voici la proposition que j'ai donné mais ça se compile pas:
public class polynome{

String p=" ";

public String toString(String s){
int i;
s=" ";
for(i=p.length();i>=0;i--){
if(p.charAt(i)==1){s+= "x^"+i+ "+" ;}
}
return s;
}

on me signale l'erreur ici: if(p.charAt(i)==1){s+= "x^"+i+ "+" ;}

merci.
Configuration: Windows XP
Firefox 2.0.0.20

10 réponses

  1. tarek_dotzero Messages postés 834 Statut Membre 122
     
    Les types ne sont pas les mêmes:

    p.charAt(position) retourne un "char" et 1 est un int.
    Java n'est pas comme le C/C++.

    Il faut donc mettre quelque chose comme "1" etc etc.
    0
  2. nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
     
    j'ai essayé également cette méthode mais l'erreur existe toujours.
    voici l'erreur qu'on m'affiche:
    at java.lang.String.charAt(Unknown Source)
    0
  3. tarek_dotzero Messages postés 834 Statut Membre 122
     
    Est ce que tu peux mettre l'erreur complète.
    0
  4. nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
     
    voici l'erreur complète:
    Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 1
    at java.lang.String.charAt(Unknown Source)
    at polynome.toString(polynome.java:10)
    at exec.main(exec.java:12)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Nangel38
     
    coucou
    charAt(i) va retourner un char si tu le compares au chiffre 1 il faut que tu mettes '1' sinon il y a un ^problème de type
    0
  7. nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
     
    même en mettant '1' l'erreur existe toujours.
    0
  8. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
     
    les index vont de 0 à n-1 pour un tableau (chaine) de longueur n.

    tu commences directement à regarder charAt(longueur de la chaine) donc charAt(n), ce qui est "Out of Bound" (hors des limites)

    il faut commencer ta boucle à longueur de la chaine -1
    0
  9. nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
     
    ça y'est mon programme marche correctement. merci :)
    0
    1. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
       
      cool, j'espère que tu comprends un peu mieux ce que dit ton compilateur maintenant ^^
      PS : n'oublie pas de mettre en "résolu"
      0
  10. nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
     
    oui oui c'est bon maintenant ( faut qu'il affiche les erreurs en francais)

    PS: comment le mettre en resolu ?
    0
    1. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
       
      euh... à vrai dire je ne me souviens plus... si tu remontes près de ton premier post de départ il doit y avoir une option non ?
      0
  11. nisomarwa Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
     
    oups oui j'ai pas fais attention.
    mershi
    0