Chaîne de caractère en java :(

Fermé
cecatem Messages postés 6 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 14 février 2008 - 11 févr. 2008 à 17:12
 walid - 8 avril 2011 à 11:37
Hello tous le monde !!! Voila actuellement étudiante en IUT SRC, j'ai au programme du java ( parce que juvamine !!! ) et il se trouve que je suis un grosse quiche donc je voudrais savoir si vous pourriez pas m'aider pour un p'tit exo histoire que ça puisse me lancer pour les autres parce que je vois pas trop comment faire ...

En gros, il me dise d'écrire un programme qui extrait et affiche la première moitié d'un mot donnée par l'utilisateur et il me dise d'utiliser la méthode next() de la classe Scanner et les méthodes length et substring de la classe string. Or j'ai pas tout compris avec la classe scanner ( qui permet de mémoriser ce que rentre l'utilisateur ) et alors la classe string, je sais même pas ce que c'est, si ça veut dire chaîne en français XD, donc voili voila merci d'avance pour votre aide ><
A voir également:

14 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
11 févr. 2008 à 18:16
Salut
Voici un bout de code que je viens de faire ;)
import java.util.*;

public class Invers {

    public static void main (String []args){
        //permet de récupérer les mots entrés par l'utilisateur
	Scanner entree=new Scanner(System.in);
        
	System.out.print("Entrer le mot : ");

	//pour stocker le mot entré par l'utilisateur
        String mot=entree.next();

        //on affiche la moitié du mot (commence à 0 et fini à la taille divisée par deux)
	System.out.println(mot.substring(0,mot.length()/2));
    }
}


J'espère que ça te sera utile.
3
Bonjour,
je suis une débutante en java et je voulais faire un peti programme qui m'affiche une chaine inversé tout en suppriment les caractères spéciaux(? . !! etc..)
j'arrive à afficher la chaine mais il ya tjrs les caractères spéciaux .
merci
1
ok
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
11 févr. 2008 à 17:19
Salut,
Es-tu obligée d'utiliser la méthode next() de Scanner ? Et comment l'utilisateur entre ses données ? Lors du lancement du programme ou après le lancement du programme avec l'affichage d'un message ?

Cordialement
0
cecatem Messages postés 6 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 14 février 2008
11 févr. 2008 à 17:43
bah je pense que oui parce que c'est demandé dans l'énnoncé et pour entrer les valeurs d'habitude y'a écrit entrer une valeur et la on tape une valeur, donc avec avec l'affichage d'un message
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cecatem Messages postés 6 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 14 février 2008
11 févr. 2008 à 21:05
oui je pense merci beaucoup en tout cas ^^
0
cecatem Messages postés 6 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 14 février 2008
12 févr. 2008 à 18:49
Hey désolé encore de vous déranger, mais j'arrive pas à avancer, je rencontre quelques petits problèmes et je ne vois pas comment les résoudre :(

Enfaite il me demande d'écrire un programme, ou l'utilisateur entre 3 variables et après si les calculs sont possibles grâce au booléen, on doit afficher si c'est vrai ou pas, mais or rien quand compilant mon programme pour voir si je peux entrer les valeurs, il me dit que mon programme est faux à cause de main dans public static void et alors la je comprends pas ! Y'a aussi autre chose que je ne comprends pas très bien, c'est si ma syntaxe est bonne pour vérifier si c'est true au false, est ce que + suivit du calcul est bon ? et quand on me parle du et cela correspond au & ?

import java.util.*;
public class Logique
{
public static void main(String[] args);
{
Scanner bouh = new Scanner(System.in);
int a;
int b;
int c;

System.out.println("Entrez une première valeur :");
a = bouh.nextInt();
System.out.println("Entrez une deuxième valeur :");
b = bouh.nextInt();
System.out.println("Entrez une troisième valeur :");
c = bouh.nextInt();
System.out.println("La valeur de a est :" + a);
System.out.println("La valeur de b est :" + b);
System.out.println("La valeur de c est :" + c);

System.out.println("a est supérieur à 3 et le quotient entier de la somme de a et de b par c est un multiple de 4" + a>3 & (a+b+c)%4=0);
System.out.println("a divise b et a divise c" + b/a & b/a);
System.out.println("si a divise b alors a divice bc" + b/a == bc/a);

}
}

On me demande de faire un programme aussi qui permet d'inverser la première lettre et la dernière lettre de chaque mot, je sais que je dois utilisé la mot.charAT(index) d'après ce que j'ai vu sur le net, mais je ne comprends pas comment m'en servir voici le programme que j'ai écris déjà :s

import java.util.*;

public class TeteAQueue {

public static void main (String []args){
Scanner hihi=new Scanner(System.in);

System.out.print("Entrer le mot : ");
String mot=hihi.next();
System.out.println(mot.chartAT(0,2));
}
}

Mais ça à pas l'air d'être bon :-\

Merci d'avance pour votre aide !
0
cecatem Messages postés 6 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 18:10
hello ! Bon j'ai testé pour le premier en effet ça paraît plus logique mais quand j'écris ça :

test2 = (b/a) & (c/a);
test3 = (b/a) & ((b*c)/a) ;

il me sort qu'il y a un problème avec le & et je ne comprends pas pourquoi :@ auriez-vous une idée ? Sinon, ou est ce qu'on peut trouver la javadoc ?!
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
14 févr. 2008 à 18:17
Salut,
b/a te renvoie le quotient de b par a. Ça ne signifie pas : Si a divise b.
Voilà la condition de test2 : test2=(b%a==0) & (c%a==0);
Là, ça devrait marcher. Je te laisse t'exercer sur test3.

Cordialement
0
cecatem Messages postés 6 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 18:35
oki oki je suis vraiment naze merci bcp en tout cas :)
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
14 févr. 2008 à 18:37
Mais non, juste une étourderie. À la prochaine ;)
0
import fr.jussieu.script.Deug;
public class TeteAQueue {
    public static void main (String []args){
        Deug.println("Entrer le mot : ");
        String mot = Deug.readString();
        char prem = mot.charAt(0) ;
	char dern = mot.charAt(mot.length() - 1) ;
	Deug.println(dern + mot.substring(1,mot.length() - 1) + prem);
    }
}


Voci le code pour TeteAQueue lol
0
Lol j'ai remarqué que les gens qui ont envie qu'on leur fasses ou répondent a des choses urgentes ( genre exos a rendre pour le lendemain ;) )
C'est toujours des filles ^^ C'est normal ? héhéh
0
Jean marie r.
4 nov. 2008 à 14:16
Voici Encore.java

 import fr.jussieu.script.Deug;

public class Encore {
   public static void main(String[] args) {
	String a, b;
	boolean c;
	a = "oui";
	b = "oui";
	c = Deug.equals(a ,b);
	while(c == true){
	Deug.println("Encore ?");
	b = Deug.readString();
	c = Deug.equals(a , b);
	}

}
}
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
12 févr. 2008 à 19:11
Salut,

Alors tu as écris public static void main(String[] args); // faut pas de ;
Ensuite tes println ne marcheront pas à cause de tes + (...), à moins de caster en boolean. Mais je te conseille pas, c'est illisible.
Pourquoi ne pas faire tout simplement : boolean test1=a>3 & (a+b+c)%4==0; //n'oublie pas que c'est == l'opérateur de comparaison. Ainsi dans ton println tu feras + test1.
De même pour les autres tests ;)

Pour l'autre programme :

La méthode est : charAt(int index), cela te permet d'avoir accès à la case "index" du tableau.
Par exemple String toto="abcde"; toto.charAt(0) va te retourner 'a', etc.
Je te laisse donc réfléchir un peu pour échanger la première et dernière lettre du mot. Petit indice, il existe la méthode length() qui te permet de connaître la longueur du mot.

Sinon, n'oublie pas la javadoc. Elle est primordial en java pour connaître comment utiliser une méthode et quelles sont les méthodes d'une classe ;)

Cordialement
-1