SHARE
TWEET

LetterFinder.java

a guest Aug 8th, 2012 40 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import javax.swing.JOptionPane;
  2.  
  3. public class LetterFinder
  4. {
  5.         private static int numberTry, sizeMax = 21, tab;
  6.         private static char [] [] tabTry;
  7.         private static char[] similar;
  8.         private static boolean end = false;
  9.        
  10.         public static void main(String[] args)
  11.         {
  12.                 init(0);
  13.                 while(true)
  14.                 {
  15.                         tabTry [tab] = writeCharTab(enter(JOptionPane.showInputDialog("Entrez les lettres (série " + numberTry + ")(" + (sizeMax-1) + " caractères max):")));
  16.                         if(numberTry >= 3)
  17.                         {
  18.                                 similar = finder(tabTry[0], tabTry[1]);
  19.                                 while(!end)
  20.                                 {
  21.                                         try
  22.                                         {
  23.                                                 init(Integer.parseInt(JOptionPane.showInputDialog(endSentence())));
  24.                                         }
  25.                                         catch (java.lang.NumberFormatException e1)
  26.                                         {
  27.                                                 end = false;
  28.                                         }
  29.                                         catch (java.lang.NullPointerException e1)
  30.                                         {
  31.                                                 System.exit(0);
  32.                                         }
  33.                                 }
  34.                         }
  35.                 }
  36.         }
  37.        
  38.         private static char[] writeCharTab(String entered)
  39.         {
  40.                 int posWrite = 0;
  41.                 char[] charTab = new char [sizeMax];
  42.                 for(int i = 0; i < entered.length(); i++)
  43.                 {
  44.                         charTab[posWrite] = entered.charAt(i);
  45.                         posWrite++;
  46.                 }
  47.                 tab++;
  48.                 numberTry++;
  49.                 return charTab;
  50.         }
  51.  
  52.         public static String enter (String entered)
  53.         {
  54.                 if (entered.length() > (sizeMax-1))
  55.                 {
  56.                         return "";
  57.                 }
  58.                 else
  59.                 {
  60.                         entered.toLowerCase();
  61.                         return entered;
  62.                 }
  63.         }
  64.        
  65.         public static void init (int i)
  66.         {
  67.                 if (i==0 || i==1)
  68.                 {
  69.                         tabTry = new char [2] [sizeMax];
  70.                         similar = new char [sizeMax];
  71.                         numberTry = 1;
  72.                         tab = 0;
  73.                         end = true;
  74.                 }
  75.                 else if (i==1)
  76.                 {
  77.                         tabTry = new char [2] [sizeMax];
  78.                         for (int i2 = 0; i2 < similar.length-1; i2++)
  79.                         {
  80.                                 tabTry [0] [i2] = similar[i2];
  81.                         }
  82.                         similar = new char [sizeMax];
  83.                         tab = 1;
  84.                         end = true;
  85.                 }
  86.                 else if(i==3)
  87.                 {
  88.                         System.exit(0);
  89.                 }
  90.         }
  91.        
  92.         public static char[] finder (char[] tab1, char[] tab2)
  93.         {
  94.                 int posWrite = 0;
  95.                 char[] same = new char [sizeMax];
  96.                 for(int i = 0; i < (tab1.length); i++)
  97.                 {
  98.                         for(int j = 0; j < (tab2.length); j++)
  99.                         {
  100.                                 if(tab1[i] == tab2[j])
  101.                                 {
  102.                                         if(!(tab1[i] == ' ' || tab2[j] == ' '))
  103.                                         {
  104.                                                 same[posWrite] = tab1[i];
  105.                                                 tab1[i] = ' ';
  106.                                                 tab2[j] = ' ';
  107.                                                 if(posWrite < same.length-1)
  108.                                                         posWrite++;
  109.                                         }
  110.                                 }
  111.                         }
  112.                 }
  113.                 return same;
  114.         }
  115.        
  116.         public static String endSentence ()
  117.         {
  118.                 String s;
  119.                 try
  120.                 {
  121.                         s = "";
  122.                         for (int i = 0; i < similar.length-1; i++)
  123.                         {
  124.                                 String s1 = (similar[i] + " ").toUpperCase();
  125.                                 s = s + s1;
  126.                         }
  127.                 }
  128.                 catch (java.lang.NumberFormatException e1)
  129.                 {
  130.                         s = "erreur";
  131.                 }
  132.                 return "Les lettres en commun sont:\n " + s + "\n\n1. Entrer une autre série\n2. Recommencer\n\n3. Quitter";
  133.         }
  134.        
  135. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top