begin process at 2012 02 12 11:53:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

Récupérer une chaine d'un tableau


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupérer une chaine d'un tableau

mercredi 24 septembre 2008 à 18:07:24 | Récupérer une chaine d'un tableau

sarita199

Bjr a tous,je suis bloquée dans cet exercice durant 4j,et désormais j'ai pas trouvé
la solustion.Le but de cet exercice est de récupérer les données d'un tableau dans une
chaine de caratéres pour que le programme la vérifie si cette chaine compose un verbe du 1er
groupe ou non.
Exercice:
Fait un programme qui permet de saisir lettre par lettre dans un tableau de 20 caractère un
verbe du 1er groupe,On arrêtons la saisie avec un point.
une fois le verbe saisie le programme doit s'assurer que le verbe se termine par "er" et
affiche sa partie de conjugaison.

voilà mon code:

package Tableaux;
import java.util.*;
public class Exercices{
String T[]=new String[20];
 int i,j;
 String n;
 String ch=" ";
 public void prog()throws Exception
 {
  Scanner sc=new Scanner(System.in);
  do
  {
   System.out.print("Introduire une lettre en maniscule SVP: ");
   n=sc.next();
   n=n.toLowerCase();
   T[i]=n;
   i++;
  }
     while(n.equals(".")==false);
 
  for(i=0;i<T.length;i++)
  {
   System.out.print(T[i]+"\t");
  }
  for(j=0;j<T.length;j++)
  {
   if(T[j-2]=="e"&& T[j-1]=="r")
   {
      for(i=0;i<j-3;i++)
      {ch=ch+(T[i]);}
   } 
  }
  System.out.print("C'est un verbe ddu 1er groupe"+ch);
}
 
public static void main(String[] args)throws Exception
{
 Exercices ex=new Exercices();
 ex.prog();
}

jeudi 25 septembre 2008 à 05:21:14 | Re : Récupérer une chaine d'un tableau

danimo

Bonjour,

Il y a pas mal d'erreurs dans ton programme.
Commence par ajouter un } à la fin du programme et à remplacer
 while(n.equals(".")==false); par :  while(!n.equals("."));
compile, execute et dis moi ce qu'il se passe et on continuera.

Cordialement.

...\ Dan /...

jeudi 25 septembre 2008 à 16:34:32 | Re : Récupérer une chaine d'un tableau

sarita199

Bonjour Danimo,d'abord merci de ton aide.Oui j'ai essayé ce que tu me dis et il s'amarche, mais le prob ici que l'exécution du programme s'arrête dans cet ligne:
if(T[j-2]=="e"&& T[j-1]=="r")
il m'affiche cet message:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException:-2
jeudi 25 septembre 2008 à 17:34:51 | Re : Récupérer une chaine d'un tableau

danimo

Bonjour,

C'est une des reponses que j'attendais :

Tu de doute certainement que j'ai essayé ton programme et l'ai modifié, mais j'aimerais que TU vois toi-même ce qui ne vat pas.

 for(i=0;i<T.length;i++)
  {
   System.out.print(T[i]+"\t");
  }
  for(j=0;j<T.length;j++)
  {
   if(T[j-2]=="e"&& T[j-1]=="r")
   {
      for(i=0;i<j-3;i++)
      {ch=ch+(T[i]);}
   } 
  }

Quand tu ecris  for(j=0;j<T.length;j++)  à ton avis, quelle est la longueur de T et quelle est la longueur du verbe que tu as entré ?

Et ici   if(T[j-2]=="e"&& T[j-1]=="r"),  en j-2 et j-1 oú veux-tu pointer das T ?

Le message d'erreur te dis clairement ce qui n'est pas bon.


...\ Dan /...

jeudi 25 septembre 2008 à 18:06:10 | Re : Récupérer une chaine d'un tableau

sarita199

Merci d'avance,désolé pour ces problémes mais je suis débutante en java

for(j=0;j<T.length;j++): bah pr moi cet instruction sénifie que le programme va lire les éléments jusqu'au le dernier élément.quelque soit la langueur du contenue et quand il arrive au deux derniers éléments il vas les comparer s'il sont egaux à "er",puis affiche la partie de conjugaison sans "er".

jeudi 25 septembre 2008 à 18:57:54 | Re : Récupérer une chaine d'un tableau

danimo

D'accord, je comprend ce que tu veux faire, mais le message d'erreur (l'exception) indique que tu veux lire l'élément -2 de ton tableau. Ces éléments sont numérotés 0 à 20, donc tu es hors des dimensions de ton tableau ArrayIndexOutOfBoundsException:-2

La boucle
for(j=0;j<T.length;j++)
  {
   if(T[j-2]=="e"&& T[j-1]=="r")
   {
n'est pas nécessaire, il faut que testes directement à la fin de ton intro et non  à la fin du tableau.
Pour cela tu dois stocker la longueur de ce que tu as entré ici :
do
  {
   System.out.print("Introduire une lettre en minuscule SVP: ");
   n=sc.next();
   n=n.toLowerCase();
   T[i]=n;
   i++;
  }
     while(n.equals(".")==false); et cette longueur c'est i.


Voici une solution:


{
Scanner sc=new
Scanner(System.in);
do
{
System.out.print("Introduire une lettre en minuscule SVP: "
);
n=sc.next();
n=n.toLowerCase();
if (!n.equals("."
))
{
Ï
T[i]=n;
Ï
i++;
Ï
}
}
while(!n.equals("."));
// ==false);
isv = i;ÏString leverbe = ""
;
for(i = 0;i<isv;i++)

{ÏSystem.out.println(T[i]);
Ï
leverbe = leverbe.concat(T[i]);
}


 
if ((T[isv-2].equals("e")) && (T[isv-1].equals("r"
)))
{
ÏSystem.out.println("Le verbe " + leverbe + " est un verbe du 1er groupe.");

}
else System.out.println("Le verbe " + leverbe + " n'est pas un verbe du 1er groupe."
);
}
Tu peux essayer ? Et n'hésites pas situ as besoin d'explications.

Il faut quand même savoir que tout ce qui sera entré terminant par er sera considéré comme verbe (exemple abcder ou 123456er).

D'autre part si on entre un 21eme caractère on aura l'exception :

ArrayIndexOutOfBoundsException: 20

Cordialement.

...\ Dan /...

jeudi 25 septembre 2008 à 19:05:10 | Re : Récupérer une chaine d'un tableau

danimo

Une petite erreur (grave) dans ma 3eme reponse :

D'accord, je comprend ce que tu veux faire, mais le message d'erreur (l'exception) indique que tu veux lire l'élément -2 de ton tableau. Ces éléments sont numérotés 0 à 20, donc tu es hors des dimensions de ton tableau ArrayIndexOutOfBoundsException:-2

Ces éléments sont numérotés 0 à 19 et non Ces éléments sont numérotés 0 à 20 !!!!!

Pardon.

...\ Dan /...

vendredi 26 septembre 2008 à 00:26:20 | Re : Récupérer une chaine d'un tableau

sarita199

Merci pr ton aide et ton explication.bah quand j'été coupée ton programme une erreur il m'afiche concernant le Ï qui ce trouve dans cette position
ÏT[i]=n;
Ïi++;
Ï}//Syntax error, insert "AssignmentOperator ArrayInitializer" to complete ArrayInitializerAssignement
et vous pouvez m'expliquer a quoi sert il , car c'est la 1er fois que je l'ai vu. j'ai compris d'aprés le  msg d'erreur qu'elle est une outil d'initialisation mais c'est pas claire.  
vendredi 26 septembre 2008 à 03:34:20 | Re : Récupérer une chaine d'un tableau

danimo

Réponse acceptée !
Désolé,

C'est venu quand j'ai copié collé et je ne l'ai pas vu :



{
Scanner sc=
new
Scanner(System.in);
do
{
System.out.print(
"Introduire une lettre en minuscule SVP: "
);
n=sc.next();
n=n.toLowerCase();
if (!n.equals("."
))
{
T[i] = n;
i++;
}
}
while(!n.equals("."));
// ==false);

int isv = i;      // ici il manquait int devant isv
String leverbe = ""
;

for(i = 0;i<isv;i++)

{
System.out.println(T[i]);
leverbe = leverbe.concat(T[i]);
}


 
if ((T[isv-2].equals("e")) && (T[isv-1].equals("r"
)))
{
System.out.println("Le verbe " + leverbe + " est un verbe du 1er groupe.");

}
else System.out.println("Le verbe " + leverbe + " n'est pas un verbe du 1er groupe."
);
}


...\ Dan /...

vendredi 26 septembre 2008 à 17:17:30 | Re : Récupérer une chaine d'un tableau

sarita199

bjr danimo merci de ton aide


Cette discussion est classée dans : string, system, chaine, tableau, verbe


Répondre à ce message

Sujets en rapport avec ce message

Convertir une chaine String en tableau de byte [ par JuS ] Bonjour,Je cherche à convertir une chaine de caractere String en un tableau de byte pour pouvoir correspondre en client/serveur à l'aide de sockets.Vo tableau chaine de caracter [ par loupiti ] bonjour,je veux creer un tableau de chaine de caractere mais je n'y arrive pas String chaine[]=new String[2]; chaine={"Lsi", "Ms"};pouvez vous me di tableau de car => string [ par monstor_rox ] Bonjour je voudrai savoir comment passer un tableau de caractère en string   string chaine;      try      {        Buffer problème d'affichage d'une chaine dans un servlet [ par 2tsiris ] Bonjour à tous, j'ai créer un servlet qui récupère une valeur dans une table mysql.J'ai donc créer une méthode qui se connect à la base et effectue Classer fichier .txt dans tableau java [ par Rasta rockeuse ] Bonjour à tous ! Comme indiqué, je me lance dans un programme sensé prendre les données présentes dans un fichier texte et les classer dans un tablea erreur [ par alahomenza ] bonjour a tt le monde je suis entraint de realiser un tp en java et quand je compile j ai des erreur que j arrive pas a comprendre apparament dans les un probleme le plus difficile que je croise [ par sikove ] salut, je suis tombé sur un probleme, et c'est le plus difficle que je croise jusqu'a maintenant : Programmation structurée : Ecrivez un programme per Exercice très simple modélisant des amis blagueurs. [ par fpat ] Bonjour tout le monde, j'suis bloqué à un exercice j'suis sûr que la réponse est bête mais j'ai trop réfléchi dessus :'(Question:Je résume ! Je dois é programmation java [ par talibikeba ] Bonjour je suis debutant en java et j'ai du mal à faire l'appel d'un tableau en parametre dans le main au niveau du construteur j'ai 3 choses en argum récupérer la valeure d'un tableau défini spécialement :) [ par naincus ] Bonjour tout le monde, je fais de l'ihm et j'ai un peu de mal sur le java en lui meme et surtout les tableaux ! Alors voila mon probleme :


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,480 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales