Programmation Java...Help!
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

Programmation Java...Help!



  1. #1
    invite37eb9680

    Red face Programmation Java...Help!


    ------

    Bonjour à tous,

    Je suis nouveau sur ce forum, et je suis étudiant en première année et l'informatique je galère beaucoup... J'ai essayé de programmé mais je n'arrive vraiment pas.. Je dois rentre cet algorithme pour la semaine prochaine:

    " Ecrire une fonction BonFormat(ch) qui retourne le booléen vrai ou faux selon que la chaîne ch est formatée sous la forme d’une date JJ/MM/AAAA où les J, M et A sous des chiffres ou non. Par exemple, BonFormat(‘13/02/2012’) doit retourner vrai (true)." Je n'arrive pas du tout... Est ce que quelqu'un pourrait me le programmer en Javascript ça m'aiderait beaucoup? :/

    merci d'avance!

    Loss

    -----

  2. #2
    invite2d7144a7

    Re : Programmation Java...Help!

    Bonjour,
    Citation Envoyé par Loss44 Voir le message
    Est ce que quelqu'un pourrait me le programmer en Javascript ça m'aiderait beaucoup? :/
    Écrit en clair, ça signifie que tu veux qu'on fasse TON travail à ta place...

  3. #3
    invite37eb9680

    Re : Programmation Java...Help!

    Je me suis mal exprimé alors... Au moins me donner des pistes parce que je suis complètement bloqué..

    merci beaucoup!

  4. #4
    invite2d7144a7

    Re : Programmation Java...Help!

    Bonjour,

    Dans ce cas, ok.

    Comment raisonnes-tu pour conclure que le format de la chaîne est bon ?

    Tu l'écris en clair, et tu as l'algorithme à implémenter.

  5. A voir en vidéo sur Futura
  6. #5
    inviteca41a4e1

    Re : Programmation Java...Help!

    Pense à utiliser les regex (expression régulière) pour vérifier la composition caractère par caractère d'une chaîne de caractères.

    Voici la solution pour le format anglais.

    Code:
    function isValidDate(date){
      if (date.match(/^(?:(0[1-9]|1[012])[\- \/.](0[1-9]|[12][0-9]|3[01])[\- \/.](19|20)[0-9]{2})$/)){
        return true;
      }else{
        return false;
      }
    }
    Il faut donc changer le mois avec le jour pour la version française et les séparateurs autorisés entre les valeurs.

    Code:
    (?:(0[1-9]|1[012]) -> mois
    [\- \/.] -> séparateur
    (0[1-9]|[12][0-9]|3[01]) -> jour
    ...

  7. #6
    invite2d7144a7

    Re : Programmation Java...Help!

    Bonjour,
    Citation Envoyé par Arkin Voir le message
    Pense à utiliser les regex (expression régulière) pour vérifier la composition caractère par caractère d'une chaîne de caractères.

    Voici la solution pour le format anglais.

    Code:
    function isValidDate(date){
      if (date.match(/^(?:(0[1-9]|1[012])[\- \/.](0[1-9]|[12][0-9]|3[01])[\- \/.](19|20)[0-9]{2})$/)){
        return true;
      }else{
        return false;
      }
    }
    Il faut donc changer le mois avec le jour pour la version française et les séparateurs autorisés entre les valeurs.

    Code:
    (?:(0[1-9]|1[012]) -> mois
    [\- \/.] -> séparateur
    (0[1-9]|[12][0-9]|3[01]) -> jour
    ...
    Le but du forum n'est pas de donner des solutions, mais d'aider le demandeur.

    D'autre part, s'agissant d'un exercice, je doute fortement que la solution attendue soit l'utilisation des regex, même si c'est effectivement ce que ferait un programmeur confirmé.

  8. #7
    pm42

    Re : Programmation Java...Help!

    Citation Envoyé par whoami Voir le message
    même si c'est effectivement ce que ferait un programmeur confirmé.
    En java un programmeur confirmé utiliserait les librairies existantes plutôt que d'écrire une regexp aussi longue.
    Et il ne ferait pas un

    Code:
    if (date.match(/^(?:(0[1-9]|1[012])[\- \/.](0[1-9]|[12][0-9]|3[01])[\- \/.](19|20)[0-9]{2})$/)){
        return true;
      }else{
        return false;
      }
    Mais beaucoup plus simplement :

    Code:
    return date.match(/^(?:(0[1-9]|1[012])[\- \/.](0[1-9]|[12][0-9]|3[01])[\- \/.](19|20)[0-9]{2})$/)){
    Il précompilerait la regexp aussi pour des raisons de performances mais là, on sort du cadre de l'exercice.

  9. #8
    invite0bbe92c0

    Re : Programmation Java...Help!

    Citation Envoyé par whoami Voir le message
    D'autre part, s'agissant d'un exercice, je doute fortement que la solution attendue soit l'utilisation des regex, même si c'est effectivement ce que ferait un programmeur confirmé.
    Si il utilise les regex (très couteuses en traitement) pour traiter une validation de chaine triviale, ce n'est pas un programmeur confirmé (ou alors il n'y a que lui pour le penser -sauf à confondre expérience et ancienneté).

  10. #9
    invite2d7144a7

    Re : Programmation Java...Help!

    Bonjour,
    Citation Envoyé par Bluedeep Voir le message
    Si il utilise les regex (très couteuses en traitement) pour traiter une validation de chaine triviale, ce n'est pas un programmeur confirmé (ou alors il n'y a que lui pour le penser -sauf à confondre expérience et ancienneté).
    Très coûteuse en traitement n'a pas à être pris en compte pour un exercice.

    Mais il est de fait que c'est le genre de fonction que je préfère écrire moi même, ce qui est dans ce cas fait depuis très longtemps, dans divers langages, y compris le Cobol à mes débuts, ... et bien d'autres.

Discussions similaires

  1. Programmation Java
    Par invitead51e543 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 03/10/2012, 11h33
  2. Java Programmation
    Par livre dans le forum Logiciel - Software - Open Source
    Réponses: 9
    Dernier message: 27/01/2006, 21h58
  3. Java programmation
    Par invite56460777 dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 21/04/2005, 21h17
  4. Programmation en Java
    Par invited2e9dd9d dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 14/04/2005, 18h37
  5. programmation java
    Par invite49182f81 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 24/04/2003, 21h24