Source code for submission s731

Go to diff to previous submission

Fs.java

  1. import java.util.Arrays;
  2. import java.util.Scanner;
  3.  
  4. public class Fs {
  5.  
  6. static char [] chars = new char[30];
  7. static String [] morse = {
  8. ".-", //A
  9. "-...", //B
  10. "-.-.", //C
  11. "-..", //D
  12. ".", //E
  13. "..-.", //F
  14. "--.", //G
  15. "....", //H
  16. "..", //I
  17. ".---", //J
  18. "-.-", //K
  19. ".-..", //L
  20. "--", //M
  21. "-.", //N
  22. "---", //O
  23. ".--.", //P
  24. "--.-", //Q
  25. ".-.", //R
  26. "...", //S
  27. "-", //T
  28. "..-", //U
  29. "...-", //V
  30. ".--", //W
  31. "-..-", //X
  32. "-.--", //Y
  33. "--..", //Z
  34. "..--", //_
  35. ".-.-", //,
  36. "---.", //.
  37. "----" //?
  38. };
  39.  
  40. public static String input;
  41. public static String morsed = "";
  42. public static String morsedInNumbers = "";
  43. public static String demorsedFinal = "";
  44.  
  45. public static StringBuilder sb;
  46.  
  47. public static void main(String[] args) {
  48. fillChars();
  49.  
  50. Scanner sc = new Scanner(System.in);
  51.  
  52. while (sc.hasNextLine()) {
  53. sb = new StringBuilder();
  54. morsed = "";
  55. demorsedFinal = "";
  56. morsedInNumbers = "";
  57.  
  58. input = sc.nextLine();
  59.  
  60. toMorse();
  61.  
  62. sb.append(morsedInNumbers);
  63. sb.reverse();
  64.  
  65. morsedInNumbers = sb.toString();
  66.  
  67. demorse();
  68.  
  69. System.out.println(demorsedFinal);
  70. }
  71.  
  72.  
  73. }
  74.  
  75. public static void fillChars(){
  76. for(int i = 0; i < 26; i++){
  77. chars[i] = (char)(65 + i);
  78. }
  79. chars[26] = '_';
  80. chars[27] = ',';
  81. chars[28] = '.';
  82. chars[29] = '?';
  83. }
  84.  
  85. public static void toMorse(){
  86.  
  87. for(int j = 0; j < input.length(); j++){
  88. for (int i = 0; i < 30; i++) {
  89. if (input.charAt(j) == (chars[i])) {
  90. morsed += morse[i];
  91. morsedInNumbers = morsedInNumbers + morse[i].length();
  92. break;
  93. }
  94. }
  95. }
  96.  
  97.  
  98.  
  99. }
  100.  
  101. public static char toChar(String morseChar){
  102. for(int i = 0; i < 30; i++){
  103. if(morseChar.equals(morse[i])){
  104. return chars[i];
  105. }
  106. }
  107.  
  108. return 0;
  109. }
  110.  
  111. public static void demorse(){
  112. int inStart = 0;
  113.  
  114. for(int i = 0; i < morsedInNumbers.length(); i++){
  115. int part = Character.getNumericValue(morsedInNumbers.charAt(i));
  116. demorsedFinal += toChar(morsed.substring(inStart, inStart + part));
  117. inStart += part;
  118. }
  119. }
  120.  
  121. /*
  122. int indexNumber;
  123.  
  124. if (input.charAt(i) >= 65) {
  125. indexNumber = input.charAt(i) - 65;
  126. if (indexNumber < 26) {
  127. morsed = morsed + morse[indexNumber];
  128. morsedInNumbers = morsedInNumbers + morse[indexNumber].length();
  129. }
  130. } else if (input.charAt(i) == '_') {
  131. morsed = morsed + morse[26];
  132. morsedInNumbers = morsedInNumbers + morse[26].length();
  133. } else if (input.charAt(i) == ',') {
  134. morsed = morsed + morse[27];
  135. morsedInNumbers = morsedInNumbers + morse[27].length();
  136. } else if (input.charAt(i) == '.') {
  137. morsed = morsed + morse[28];
  138. morsedInNumbers = morsedInNumbers + morse[28].length();
  139. } else {
  140. morsed = morsed + morse[29];
  141. morsedInNumbers = morsedInNumbers + morse[29].length();
  142. }*/
  143.  
  144. }
  145.  

Diff to submission s642

Fs.java

--- c5.s642.cteam058.fs.java.0.Fs.java
+++ c5.s731.cteam058.fs.java.0.Fs.java
@@ -1,11 +1,40 @@
+import java.util.Arrays;
 import java.util.Scanner;
 
-import javax.swing.Box.Filler;
-
-
 public class Fs {
         
         static char [] chars = new char[30];
-        static String [] morse = {".-", "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--..", "..--", ".-.-", "---.", "----"};
+        static String [] morse = {
+                ".-",   //A
+                "-...", //B
+                "-.-.", //C
+                "-..",  //D
+                ".",    //E
+                "..-.", //F
+                "--.",  //G
+                "....", //H
+                "..",   //I
+                ".---", //J
+                "-.-",  //K
+                ".-..", //L
+                "--",   //M
+                "-.",   //N
+                "---",  //O
+                ".--.", //P
+                "--.-", //Q
+                ".-.",  //R
+                "...",  //S
+                "-",    //T
+                "..-",  //U
+                "...-", //V
+                ".--",  //W
+                "-..-", //X
+                "-.--", //Y
+                "--..", //Z
+                "..--", //_
+                ".-.-", //,
+                "---.", //.
+                "----"  //?
+                };
         
         public static String input;
@@ -19,5 +48,4 @@
                 fillChars();
                 
-                
                 Scanner sc = new Scanner(System.in);
                 
@@ -41,4 +69,6 @@
                         System.out.println(demorsedFinal);
                 }
+                
+                
         }
         
@@ -54,35 +84,24 @@
         
         public static void toMorse(){
-                for(int i = 0; i < input.length(); i++){
-                        
-                        int indexNumber;
-
-                        if (input.charAt(i) >= 65) {
-                                indexNumber = input.charAt(i) - 65;
-                                if (indexNumber < 26) {
-                                        morsed = morsed + morse[indexNumber];
-                                        morsedInNumbers = morsedInNumbers + morse[indexNumber].length();
+                
+                for(int j = 0; j < input.length(); j++){
+                        for (int i = 0; i < 30; i++) {
+                                if (input.charAt(j) == (chars[i])) {
+                                        morsed += morse[i];
+                                        morsedInNumbers = morsedInNumbers + morse[i].length();
+                                        break;
                                 }
-                        } else if (input.charAt(i) == '_') {
-                                morsed = morsed + morse[26];morsedInNumbers = "";
-                                morsedInNumbers = morsedInNumbers + morse[26].length();
-                        } else if (input.charAt(i) == ',') {
-                                morsed = morsed + morse[27];
-                                morsedInNumbers = morsedInNumbers + morse[27].length();
-                        } else if (input.charAt(i) == '.') {
-                                morsed = morsed + morse[28];
-                                morsedInNumbers = morsedInNumbers + morse[28].length();
-                        } else {
-                                morsed = morsed + morse[29];
-                                morsedInNumbers = morsedInNumbers + morse[29].length();
                         }
                 }
                 
+                
+
         }
         
         public static char toChar(String morseChar){
                 for(int i = 0; i < 30; i++){
-                        if(morseChar.equals(morse[i]))
-                                return chars[i];
+                        if(morseChar.equals(morse[i])){
+                                return chars[i]; 
+                        }
                 }
                 
@@ -99,4 +118,27 @@
                 }
         }
+        
+        /*
+        int indexNumber;
+
+        if (input.charAt(i) >= 65) {
+                indexNumber = input.charAt(i) - 65;
+                if (indexNumber < 26) {
+                        morsed = morsed + morse[indexNumber];
+                        morsedInNumbers = morsedInNumbers + morse[indexNumber].length();
+                }
+        } else if (input.charAt(i) == '_') {
+                morsed = morsed + morse[26];
+                morsedInNumbers = morsedInNumbers + morse[26].length();
+        } else if (input.charAt(i) == ',') {
+                morsed = morsed + morse[27];
+                morsedInNumbers = morsedInNumbers + morse[27].length();
+        } else if (input.charAt(i) == '.') {
+                morsed = morsed + morse[28];
+                morsedInNumbers = morsedInNumbers + morse[28].length();
+        } else {
+                morsed = morsed + morse[29];
+                morsedInNumbers = morsedInNumbers + morse[29].length();
+        }*/
 
 }