Go to diff to previous submission
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.logging.Level; import java.util.logging.Logger; public class fs { public static void fillVagner(){ } if (morse.charAt(0) == '.') { if (morse.length() == 1) { return "E"; } if (morse.charAt(1) == '.') { if (morse.length() == 2) { return "I"; } if (morse.charAt(2) == '.') { if (morse.length() == 3) { return "S"; } if (morse.charAt(3) == '.') { return "H"; } else { return "V"; } } else { if (morse.length() == 3) { return "U"; } if (morse.charAt(3) == '.') { return "F"; } else { return "_"; } } } else { if (morse.length() == 2) { return "A"; } if (morse.charAt(2) == '.') { if (morse.length() == 3) { return "R"; } if (morse.charAt(3) == '.') { return "L"; } else { return ","; } } else { if (morse.length() == 3) { return "W"; } if (morse.charAt(3) == '.') { return "P"; } else { return "J"; } } } } else { if (morse.length() == 1) { return "T"; } if (morse.charAt(1) == '.') { if (morse.length() == 2) { return "N"; } if (morse.charAt(2) == '.') { if (morse.length() == 3) { return "D"; } if (morse.charAt(3) == '.') { return "B"; } else { return "X"; } } else { if (morse.length() == 3) { return "K"; } if (morse.charAt(3) == '.') { return "C"; } else { return "Y"; } } } else { if (morse.length() == 2) { return "M"; } if (morse.charAt(2) == '.') { if (morse.length() == 3) { return "G"; } if (morse.charAt(3) == '.') { return "Z"; } else { return "Q"; } } else { if (morse.length() == 3) { return "O"; } if (morse.charAt(3) == '.') { return "."; } else { return "?"; } } } } /*if(morse.equals(".-")) return new String ("A"); if(morse.equals("-...")) return new String ("B"); if(morse.equals("-.-.")) return new String ("C"); if(morse.equals("-..")) return new String("D"); if(morse.equals(".")) return new String("E"); if(morse.equals("..-.")) return new String("F"); if(morse.equals("--.")) return new String("G"); if(morse.equals("....")) return new String("H"); if(morse.equals(".--.")) return new String("P"); if(morse.equals("..")) return new String("I"); if(morse.equals(".---")) return new String("J"); if(morse.equals("-.-")) return new String("K"); if(morse.equals(".-..")) return new String("L"); if(morse.equals("--")) return new String("M"); if(morse.equals("-.")) return new String("N"); if(morse.equals("---")) return new String("O"); if(morse.equals("--.-")) return new String("Q"); if(morse.equals(".-.")) return new String("R"); if(morse.equals("...")) return new String("S"); if(morse.equals("-")) return new String("T"); if(morse.equals("..-")) return new String("U"); if(morse.equals("...-")) return new String("V"); if(morse.equals(".--")) return new String("W"); if(morse.equals("-..-")) return new String("X"); if(morse.equals("-.--")) return new String("Y"); if(morse.equals("--..")) return new String("Z"); if(morse.equals("..--")) return new String("_"); if(morse.equals(".-.-")) return new String(","); if(morse.equals("---.")) return new String("."); if(morse.equals("----")) return new String("?"); return new String();*/ } StringBuilder ret = new StringBuilder(); int currLen = 0; for (int i = 0; i < lengths.length(); i++) { ret.append(fs.decodeMorse(morse.substring(0, currLen))); morse = morse.substring(currLen, morse.length()); } return ret.toString(); } return vagner[(int)c]; } String line; StringBuilder morse = new StringBuilder(); StringBuilder lengths = new StringBuilder(); fs.fillVagner(); while (true) { try { line = br.readLine(); if (line == null) { break; } for (int i = 0; i < line.length(); i++) { char c = line.charAt(i); morse.append(encoded); lengths.append(encoded.length()); } lengths = lengths.reverse(); Logger.getLogger(fs.class.getName()).log(Level.SEVERE, null, ex); } } } }
--- c5.s857.cteam005.fs.java.0.fs.java +++ c5.s884.cteam005.fs.java.0.fs.java @@ -8,4 +8,71 @@ public class fs { + static String[] vagner = new String[100]; + + public static void fillVagner(){ + + fs.vagner[65]=new String(".-"); + + fs.vagner[66]= new String("-..."); + + fs.vagner[67]= new String("-.-."); + + fs.vagner[68]= new String("-.."); + + fs.vagner[69]= new String("."); + + fs.vagner[70]= new String("..-."); + + fs.vagner[71]= new String("--."); + + fs.vagner[72]= new String("...."); + + fs.vagner[73]= new String(".."); + + fs.vagner[74]= new String(".---"); + + fs.vagner[75]= new String("-.-"); + + fs.vagner[76]= new String(".-.."); + + fs.vagner[77]= new String("--"); + + fs.vagner[78]= new String("-."); + + fs.vagner[79]= new String("---"); + + fs.vagner[80]= new String(".--."); + + fs.vagner[81]= new String("--.-"); + + fs.vagner[82]= new String(".-."); + + fs.vagner[83]= new String("..."); + + fs.vagner[84]= new String("-"); + + fs.vagner[85]= new String("..-"); + + fs.vagner[86]= new String("...-"); + + fs.vagner[87]= new String(".--"); + + fs.vagner[88]= new String("-..-"); + + fs.vagner[89]= new String("-.--"); + + fs.vagner[90]= new String("--.."); + + fs.vagner[95]= new String("..--"); + + fs.vagner[44]= new String(".-.-"); + + fs.vagner[46]= new String("---."); + + fs.vagner[63]= new String("----"); + + + } + public static String decodeMorse(String morse) { @@ -206,69 +273,6 @@ public static String encode(char c) { - switch (c) { - case 'A': - return new String(".-"); - case 'B': - return new String("-..."); - case 'C': - return new String("-.-."); - case 'D': - return new String("-.."); - case 'E': - return new String("."); - case 'F': - return new String("..-."); - case 'G': - return new String("--."); - case 'H': - return new String("...."); - case 'I': - return new String(".."); - case 'J': - return new String(".---"); - case 'K': - return new String("-.-"); - case 'L': - return new String(".-.."); - case 'M': - return new String("--"); - case 'N': - return new String("-."); - case 'O': - return new String("---"); - case 'P': - return new String(".--."); - case 'Q': - return new String("--.-"); - case 'R': - return new String(".-."); - case 'S': - return new String("..."); - case 'T': - return new String("-"); - case 'U': - return new String("..-"); - case 'V': - return new String("...-"); - case 'W': - return new String(".--"); - case 'X': - return new String("-..-"); - case 'Y': - return new String("-.--"); - case 'Z': - return new String("--.."); - case '_': - return new String("..--"); - case ',': - return new String(".-.-"); - case '.': - return new String("---."); - case '?': - return new String("----"); - - } - - return new String(); + + return vagner[(int)c]; } @@ -280,5 +284,9 @@ StringBuilder lengths = new StringBuilder(); + fs.fillVagner(); + while (true) { + + try { line = br.readLine();