Source code for submission s725

Go to diff to previous submission

Morzeovka.java

  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package morzeovka;
  6.  
  7. /**
  8.  *
  9.  * @author kormanec4
  10.  */
  11. public class Morzeovka {
  12.  
  13. /**
  14.   * @param args the command line arguments
  15.   */
  16. public static void main(String[] args) {
  17. new Program();
  18. }
  19. }
  20.  

Program.java

download edit
  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package morzeovka;
  6.  
  7. import java.util.ArrayList;
  8. import java.util.HashMap;
  9. import java.util.Scanner;
  10.  
  11. /**
  12.  *
  13.  * @author kormanec4
  14.  */
  15. class Program {
  16.  
  17. private Scanner sc;
  18. private String vstup;
  19. private String cisla;
  20. private String morzeovka;
  21. private HashMap<String, String> abeceda,abeceda2;
  22. private ArrayList<String> vystupy;
  23.  
  24. public Program() {
  25. sc = new Scanner(System.in);
  26. abeceda = new HashMap();
  27. abeceda2 = new HashMap();
  28. vystupy= new ArrayList();
  29. naplnAbecedu();
  30. while(sc.hasNextLine()){
  31. vstup = sc.nextLine();
  32. cisla = "";
  33. morzeovka="";
  34. morzeovka += doMorzeovky();
  35. vystupy.add(zMorzeovky());
  36. }
  37. vypis();
  38.  
  39. }
  40.  
  41. private void naplnAbecedu() {
  42. abeceda.put("A", ".-");
  43. abeceda2.put(".-", "A");
  44.  
  45. abeceda2.put("-...", "B");
  46. abeceda.put("B", "-...");
  47.  
  48. abeceda2.put("-.-.", "C");
  49. abeceda.put("C", "-.-.");
  50.  
  51. abeceda2.put("-..", "D");
  52. abeceda.put("D", "-..");
  53.  
  54. abeceda2.put(".", "E");
  55. abeceda.put("E", ".");
  56.  
  57. abeceda2.put("..-.", "F");
  58. abeceda.put("F", "..-.");
  59.  
  60. abeceda2.put("--.", "G");
  61. abeceda.put("G", "--.");
  62.  
  63. abeceda2.put("....", "H");
  64. abeceda.put("H", "....");
  65.  
  66. abeceda2.put("..", "I");
  67. abeceda.put("I", "..");
  68.  
  69. abeceda2.put(".---", "J");
  70. abeceda.put("J", ".---");
  71.  
  72. abeceda2.put("-.-", "K");
  73. abeceda.put("K", "-.-");
  74.  
  75. abeceda2.put(".-..", "L");
  76. abeceda.put("L", ".-..");
  77.  
  78. abeceda2.put("--", "M");
  79. abeceda.put("M", "--");
  80.  
  81. abeceda2.put("-.", "N");
  82. abeceda.put("N", "-.");
  83.  
  84. abeceda2.put("---", "O");
  85. abeceda.put("O", "---");
  86.  
  87. abeceda2.put(".--.", "P");
  88. abeceda.put("P", ".--.");
  89.  
  90. abeceda2.put("--.-", "Q");
  91. abeceda.put("Q", "--.-");
  92.  
  93. abeceda2.put(".-.", "R");
  94. abeceda.put("R", ".-.");
  95.  
  96. abeceda2.put("...", "S");
  97. abeceda.put("S", "...");
  98.  
  99. abeceda2.put("-", "T");
  100. abeceda.put("T", "-");
  101.  
  102. abeceda2.put("..-", "U");
  103. abeceda.put("U", "..-");
  104.  
  105. abeceda2.put("...-", "V");
  106. abeceda.put("V", "...-");
  107.  
  108. abeceda2.put(".--", "W");
  109. abeceda.put("W", ".--");
  110.  
  111. abeceda2.put("-..-", "X");
  112. abeceda.put("X", "-..-");
  113.  
  114. abeceda2.put("-.--", "Y");
  115. abeceda.put("Y", "-.--");
  116.  
  117. abeceda2.put("--..", "Z");
  118. abeceda.put("Z", "--..");
  119.  
  120. abeceda2.put("..--", "_");
  121. abeceda.put("_", "..--");
  122.  
  123. abeceda2.put(".-.-", ",");
  124. abeceda.put(",", ".-.-");
  125.  
  126. abeceda2.put("---.", ".");
  127. abeceda.put(".", "---.");
  128.  
  129. abeceda2.put("----", "?");
  130. abeceda.put("?", "----");
  131. }
  132.  
  133. private String doMorzeovky() {
  134. StringBuilder morzeovka = new StringBuilder("");
  135.  
  136. for (int i = 0; i < vstup.length(); i++) {
  137. String pom = ""+vstup.charAt(i);
  138. String znak = abeceda.get(pom);
  139. morzeovka.append(znak);
  140. cisla += (char) znak.length();
  141. }
  142.  
  143. return morzeovka.toString();
  144. }
  145.  
  146. private String zMorzeovky() {
  147. String vystup = "";
  148. int index = 0;
  149. int velkost;
  150. for (int i = cisla.length() - 1; i >= 0; i--) {
  151. velkost = (int) cisla.charAt(i);
  152. String pom = morzeovka.substring(index, index += velkost);
  153.  
  154. vystup += abeceda2.get(pom);
  155. }
  156. return vystup;
  157. }
  158.  
  159. private void vypis() {
  160. for (String string : vystupy) {
  161. System.out.println(string);
  162. }
  163. }
  164. }
  165.  

Diff to submission s701

Files changed:Program.java
Files unchanged:Morzeovka.java

Program.java

--- c5.s701.cteam081.fs.java.1.Program.java
+++ c5.s725.cteam081.fs.java.1.Program.java
@@ -7,5 +7,4 @@
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Scanner;
 
@@ -27,11 +26,11 @@
         abeceda = new HashMap();
         abeceda2 = new HashMap();
+        vystupy= new ArrayList();
         naplnAbecedu();
-        while(sc.hasNext()){
+        while(sc.hasNextLine()){
         vstup = sc.nextLine();
         cisla = "";
         morzeovka="";
         morzeovka += doMorzeovky();
-        vystupy= new ArrayList();
         vystupy.add(zMorzeovky());
         }