IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Demande de deblocage


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maldives

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 8
    Par défaut Demande de deblocage
    Bonjour,

    Je suis debutant en Java. Je suis des cours a distance et malheureusment certains exercices de caodag en Java me bloquent et je ne trouve pas comment m'y mettreny par pou commencer. Vous verrez tout en bas apres l'enonce et les affichages possibles une partie du code que j'ai effectuee.

    La situation est la suivante :

    1. J'ai une methode static booleen :

    public static boolean continuer (String msgInvite)





    Voulez-vous traiter des combinaisons de codes postaux et de numeros civiques (oui / non) ? o


    Le code partiel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    public static boolean continuer (String msgInvite){
            boolean continuer;
            continuer = true;
            String reponse;
     
            int strlen;
     
            reponse = "oui";
            strlen= reponse.length();
            if(strlen > 3) {
                System.out.println ("ERREUR! La reponse doit etre oui, non , o ou n !");
                reponse = Clavier.lireString();
            }
            if(strlen == 2) {
                System.out.println ("ERREUR! La reponse doit etre oui, non , o ou n !");
                reponse = Clavier.lireString();
            }
     
            return continuer;
    Merci pour votre aide.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Hello,

    et donc, peux-tu décrire où tu te sens un peu perdu, et quelle est ta question au juste ?

    Avec ce que tu nous écris là, c'est un peu comme si tu pensais qu'on allait faire l'exercice à ta place, ce qui n'a pas franchement d'intérêt, n'est-ce pas ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maldives

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 8
    Par défaut
    Bonjour Telvin,

    Cela fait deux mois que je debute en Java. Et c'est la premiere fois que je me vois confronter a faire une methode statique booleenne qui sera ensuite appelee dans le main.

    Je sais que je dois inserer dans cette methode deux String oui et non tels que :

    1. le length des deux String doit etre 3 ou 1 mais pas 2 et pas plus de 3. sinon ca affiche le message d'erreur tant que je ne respecte pas les conditions emises pour ces deux String.
    2. Miniuscule ou Majuscule n'as pas d'importance.
    3. a la fin de cette methode je dois avoir un return continuer.

    Ca a l'air simple. Mais je ne sais pas par ou commencer, quoi declarer/initialiser et comment affecter les methodes d'instances de la classe String dans ce cas.

    Je ne vous demande pas de me faire l'exercice car je ne vois l'interet pour moi. Je demande juste des trucs et astuces sur comment aller d'un texte vers du code Java. Si ce n'etait q'un avec un string ou Char je saurais le faire. mais j'ai le oui et non et un retour continuer et le sacre booleen.

    Par ailleurs, ceci est la continuation de mon exercice dont voici ma premiere methode:

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     public static int saisieEtValideNoCivique (String invite, int min, int max){
     
            int noCiviqueValide =1;
     
            noCiviqueValide = Clavier.lireInt();
     
            do  {
                System.out.println ("ERREUR! Le numero doit etre entre 1 et" + 
                    "9999 inclusivement.");
                noCiviqueValide = Clavier.lireInt();
     
            } while (noCiviqueValide < 1 || noCiviqueValide > 9999);
            return noCiviqueValide;
        }
     
    public static void main (String[] params) {
            int noCiviqueValide = saisieEtValiderNoCivique("Entrez un numero" +
                    "civique pour la PREMIERE adresse : ", 1, 9999);
     
     
    (.....)
     
     
     
        } 
     
    // main

    Je vous remercie.

    Amities

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    Je ne sais pas pourquoi tu parles de longueur de chaînes à 3, ou 1 et pas 2, alors que je ne vois rien à ce propos dans le sujet que tu montres. Il ne s'agit que de demander à l'utilisateur de saisir un mot et que si ce mot, en ignorant la casse, ne fait pas partie d'une liste donnée ("oui", "non", "o", "n") alors on lui redemande. Autrement dit, redemander la saisie tant qu'une condition n'est pas validée, soit en gros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    String saisie;
    do {
        /* affichage éventuel de l'invite */
        saisie = /* appel de la méthode pour récupérer la saisie d'une chaîne, ou d'un mot, au clavier */
    } while ( !estValide(saisie) ); // ou while ( nestPasValide(saisie) ) si tu préfères dans ce sens
    estValide étant une fonction qui répond true si saisie, quelque soit la casse, est soit "oui", soit "non", soit "o", soit "n". Ce n'est pas plus compliqué que ça pour le principe. Avec une invite, ça peut être un peu compliqué si on veut afficher une invite différente la première fois des autres (genre en cas de redemande, on affiche en plus de l'invite un message qui dit que la dernière réponse n'est pas acceptée).

    A toi maintenant de réfléchir à la réalisation de estValide().
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Bon je vois surtout qu'il y a un genre de confusion générale devant le manque d'habitude de manipuler des String.
    Je te suggères de commencer par des exercices plus simples :

    Exercice 1: une méthode static sans return et sans paramètre,
    qui demande 5 fois à l'utilisateur de taper un mot, et qui à chaque fois affiche "Vous avez tapé le mot : " suivi du mot tapé.

    Exercice 2: une méthode static boolean qui prend un paramètre String,
    elle renvoie true si la String correspond à "Bonjour" et false sinon.
    Afficher la String passée en paramètre, et le résultat obtenu en booléen.


    Mais je vois aussi que tu as du mal à passer d'un exercice où on lit un nombre au clavier et on retourne un nombre, et ensuite un exercice où on lit une String au clavier et on retourne un booléen.
    Dans ton précédent exercice tu lisais un nombre, puis tu décidais s'il est accepté ou pas, et si oui tu en fais un return, tel que tu l'as lu.
    Alors que dans ce nouvel exercice tu lis une String, et tu dois renvoyer un booléen. A un moment donné tu as besoin de convertir ta String en un booléen, avant de faire return de ce booléen. C'est une étape que tu n'avais pas avant.

    Cette conversion est simple en principe : est-ce que cette String représente "oui" (c'est à dire oui en entier ou juste un "o") ? Alors le booléen est true. Sinon, alors le booléen est false (parce que c'est soit l'un soit l'autre. Si c'est pas oui c'est non.)
    Mais bien sûr cela s'ajoute à la vérification de validité de la String : est-ce que la String est l'un des 4 choix acceptables ? Si oui, c'est valide. Si elle n'est pas l'un des 4 choix possibles, elle n'est pas valide et il faut en redemander une.
    La validité tu savais déjà faire ça avec l'exercice précédent. Ça n'a pas changé. Tu as une String, tu vérifies si elles est acceptable ou pas, si elle ne l'est pas tu affiches l'erreur et tu recommences. C'est comme avant.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maldives

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 8
    Par défaut
    On n'a pas trop de documentation dans une ile !!!! Je vois bien ce que vous m'expliquer. Pour les deux exos de Telvin, j'ai reussi.

    Ca reste encore confus pour mon exo. Mais je tente comme meme. Je sais que le code ci-dessous est du n'importe quoi et il serait plus beau si je n'essaie pas de le faire !!!!. Pire, BlueJ m'informe qu'il y a des erreurs mais ne l'indique pas ou !!!!

    M'enfin, here we go :

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public static boolean continuer (String msgInvite){
            String saisie;
     
            boolean estValide;
            estValide = true;
     
            saisie = Clavier.lireString();
     
            do {
                if (saisie != "oui" || saisie != "non" || saisie != "o" ||   
                saisie != "n") {
                    System.out.println ( "ERREUR! La reponse doit etre oui, " 
                                            + "non , o ou n ! " );
                    estValide = false ;             
     
                }
     
            } while (!estValide(saisie) ); 
            return estValide;
        }

    Et :
    Comment convertir une String en un booléen
    Comment l'appeler dans le main !!! C'est different que celui des methodes de nombres

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/11/2002, 14h15
  2. [Rave]Personne ne l'utilise ?? Demande d'info...
    Par Barbibulle dans le forum Rave
    Réponses: 4
    Dernier message: 07/11/2002, 23h12
  3. [Kylix] Demande de confirmation Kylix Delphi
    Par mailstef dans le forum EDI
    Réponses: 3
    Dernier message: 21/10/2002, 10h17
  4. [CR 8.5][Web] demande de connexion récurrente.
    Par Edison dans le forum Connectivité
    Réponses: 4
    Dernier message: 09/07/2002, 17h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo