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 :

Crypto A devient B et B devient C


Sujet :

avec Java

  1. #21
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Bah, dans ton nouveau code, i varie de 'a' à 'z', donc ça ne change rien. Le fait que la variable s'appelle c, i, paul ou autre chose ne change rien.

    En revanche tab[0-'a'] plantera bien sûr, par que 0-122, ça -122 et que ce n'est pas une borne valable pour un tableau !

  2. #22
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    En revanche tab[0-'a'] plantera bien sûr, par que 0-122, ça -122 et que ce n'est pas une borne valable pour un tableau !
    alors m'expliquez moi svp, ce là que je n'arrive pas comprendre,merci pour vos aides

  3. #23
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    est ce que ce comme ça?
    table[i-'a']=(char)nc;
    ici valeur du i est 97
    97-97=0
    table[0]=(char)nc;// dans la position 0 valeur 98 est convert en char c'est a
    est ce que c'est ça?

  4. #24
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    j'ai une autre question sur la debut du programme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    public static char[] createTableCodage(int decalage) 
    	   { 
    	    final int nb = 'z'-'a'+1;
     
    	    if ( decalage<0 ) 
    	    {
    	       decalage = -((-decalage)%nb); // on pourrait interdire des décalages superieur au max
    	    }
    	    else if ( decalage>nb ) 
    	    {
    	      decalage = decalage%nb; // on pourrait interdire des décalages superieur au max
    	    }
    if ( decalage<0 )
    ici dit que decalage inferieur 0

    else if ( decalage>nb )
    mais ici decalage est >nb pourquoi ce diffèrence

  5. #25
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    En revanche tab[0-'a'] plantera bien sûr, par que 0-122, ça -122 et que ce n'est pas une borne valable pour un tableau !
    alors m'expliquez moi svp, ce là que je n'arrive pas comprendre,merci pour vos aides
    Sérieux ? Tu ne comprends pas pourquoi on ne peut pas accèder à l'index -122 dans un tableau, qui ne peut avoir des index compris entre 0 inclus et n exclu. -122, inférieur à 0, donc ArrayIndexOutOfBoundException !

    Ah, c'est parce que j'ai mis 122 au lieu de 97 parce que c'est 'a' et pas 'z' ? C'est pareil, avec 'a' comme avec 'z', c'est pas le char qui est important ! -97 est aussi un index hors bornes. Tout ce qui est <0 est hors borne !

  6. #26
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    est ce que c'est bien ça
    table[i-'a']=(char)nc;
    ici valeur du i est 97
    97-97=0
    table[0]=(char)nc;// dans la position 0 valeur 98 est convert en char c'est a
    est ce que c'est ça?

  7. #27
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    est ce que ce comme ça?
    table[i-'a']=(char)nc;
    ici valeur du i est 97
    97-97=0
    Oui, jusque là.
    Citation Envoyé par domxaline Voir le message
    table[0]=(char)nc;// dans la position 0 valeur 98 est convert en char c'est a
    Si tu veux dire : "on met à la position 0 la valeur 98 convertie en char"...
    Citation Envoyé par domxaline Voir le message
    est ce que c'est ça?
    ... oui c'est ça. 98 avec un décalage de 1 (donc 'a'+1=98)

  8. #28
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    if ( decalage<0 )
    ici dit que decalage inferieur 0

    else if ( decalage>nb )
    mais ici decalage est >nb pourquoi ce diffèrence
    On veut traiter les decalages qui ne sont spéciaux, de manière à les ramener à un décalage standard, ce qui simplifie les traitements (tout est traité ensuite de la même manière). Et le cas standard, c'est quand le décalage est compris entre 0 et nb(exclu), parce que c'est super simple à traiter et de la même manière dans tous les cas (de 'a' à 'z').
    Mais on aurait pu effectivement faire if ( decalage <-nb ), parce que les décalages <-nb sont tous ramener à un décalage tel que -nb <decalage< 0 qui donne un décalage standard pour un décalage négatif.
    On aurait pu même faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if ( decalage<=-nb ) {
         decalage = -((-decalage)%nb); 
    } else if ( decalage>=nb ) {
         decalage = decalage%nb; // 
    }
    Plus par souci de ne pas avoir à traiter les décalages trop important pendans le décalage, mais par souci d'optimisation : un décalage de nb ou -nb, est un décalage de 0, donc de faire aucun décalage.

  9. #29
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    ok, merci jo
    j'ai compris

  10. #30
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    une dernière question:
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    import java.util.Scanner;
    public class Essaie1 
    {
    	 public static void main(String[] args) 
    	 {
    		  char table[] = TabEssaie.createTableCodage(1); 
    		  Scanner sc = new Scanner(System.in);
    	          System.out.println("Enter the name: ");
    		  String n;
    		  n = sc.nextLine();
    		  int len = n.length();
    		  for (int i = 0; i < len; i++) 
                      {
    	            char c = n.charAt(i);
    		    boolean maj = Character.isUpperCase(c);
    		    if (maj) 
    	            {
    		      c=Character.toLowerCase(c);
    		    }
    		    int pos = c-'a';
    		    if ( pos>=0 && pos<table.length )
    	            {
    		      if ( maj ) 
    	              {
    			System.out.print(Character.toUpperCase(table[pos]));
    	              }
    		     else
    	             {
    		        System.out.print(table[pos]);
    	             }
    	           }
    	          else 
    	          {
    	             System.out.print(" "); // non codable
    	          }
    	        }
    	      }
    	    }
    voilà,quand j’exécute mon prg normalement, il marche bien sans pb
    mais quand je l’exécute avec debug
    dès qu'elle arrive à cette ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Scanner sc = new Scanner(System.in);
    il ouvre un autre onglet avec une message:
    FileNotFoundException(Throwable)<init>(String)line:264
    et
    Source not found
    avec un bouton noméé Edit Source Lookup Path..

    svp

  11. #31
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Je dirais que ça vient du paramétrage de ton débogueur, pour lequel tu as dû activer une option pour que le System.in soit un fichier à la place de la console, et que ce fichier n'est pas présent.

  12. #32
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    je ne suis expert dans la matière
    j'ai rien toucher pareil

  13. #33
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Sans être expert, tu as pu cliquer sur une option sans faire exprès. C'est quoi ton IDE ?

  14. #34
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    désolé
    où se trouve ce IDE

  15. #35
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    "C'est quoi ton IDE ?" = Tu utilises NetBeans, Eclipse, IntellijIdea, ou autre (lequel ?) ?

  16. #36
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    Ce pas la version de eclipse vous voulez?
    si c'est ça:
    Eclipse SDK
    Version: 4.2.2
    Build id: M20130204-1200

  17. #37
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    je viens d'installer la version suivante,toujours pareil donne la même problème
    Eclipse Java EE IDE for Web Developers.
    Version: Mars.1 Release (4.5.1)
    Build id: 20150924-1200

  18. #38
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Points : 147
    Points
    147
    Par défaut
    que veut dire:
    ressource leak:'sc' is never closed

    quand je mets mon curseur de souris sur la ligne
    Scanner sc = new Scanner(System.in);
    il s'affiche le message suivante:
    ressource leak:'sc' is never closed

    j'ai réglé ce pb avec "try final" mais le pb d' avant reste toujours(debug s'arrête sur la ligne Scanner

  19. #39
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    je viens d'installer la version suivante,toujours pareil donne la même problème
    Eclipse Java EE IDE for Web Developers.
    Version: Mars.1 Release (4.5.1)
    Build id: 20150924-1200
    ça n'a rien à voir avec la version. Dans la Debug Configuration, tu as un onglet Commons, dans lequel tu peux paramétrer ton fichier d'input : décoche-le.

  20. #40
    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
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    que veut dire:
    ressource leak:'sc' is never closed
    Normalement, tout flux que tu ouvres dans ton code doit être fermé. Là, Eclipse te dit que tu ouvres un Scanner et qui tu ne le fermes pas. Mais, c'est un message général, parce que Eclipse ne peut pas savoir si la non fermeture provoque vraiment des fuites. En l’occurrence, dans new Scanner(System.in), tu n'ouvres pas vraiment de flux : tu encapsules un flux qui a été ouvert par ailleurs (par défaut par la JVM elle-même), donc tu n'as pas à le fermer.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. sprintf : le point devient virgule ?!
    Par jula dans le forum C++
    Réponses: 4
    Dernier message: 17/09/2004, 13h50
  2. [Tomcat 5.0][Log4j] Il devient fou !!!
    Par yolepro dans le forum Tomcat et TomEE
    Réponses: 9
    Dernier message: 24/04/2004, 22h08
  3. Un warning devient fatal
    Par tomnie dans le forum Linux
    Réponses: 3
    Dernier message: 01/04/2004, 14h48
  4. varchar devient char
    Par airwolf dans le forum Outils
    Réponses: 2
    Dernier message: 08/02/2004, 02h35
  5. "é" devient "é" !
    Par mathieu dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 29/10/2003, 18h18

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