NOTE: Alternative solutions are perfectly fine. Exercise 1 ----------- Encrypted message is 200 Decrypted message is 20 Encrypted message is 200 Encrypted message in mix is 200 Decrypted message is 40 Decrypted message in mix is 40 Encrypted message is 200 Decrypted message is 40 Encrypted message is 150 Decrypted message is 30 * Each correct answer is worth 1pts * Some common sense is also used in grading this Exercise 2 ---------- correct return type (int[]) [2pts] correct input for Integer.parseInt (s.charAt(i)+"") [2pts] correct branch condition for first "if" (curr > res[1]) [2pts] correct correct assignment for first "if" (res[1] = curr) [2pts] correct return statement outside "for" loop [2pts] Correct program: public static int[] minMax(String s){ if(s.length()==0) { return new int[]{0,0}; } int[] res = new int[2]; res[0] = Integer.parseInt(s.charAt(0)+""); res[1] = Integer.parseInt(s.charAt(0)+""); for (int i=0; i res[1]) {res[1] = curr;} if (curr < res[0]) {res[0]=curr;} } return res; } Exercise 3 ---------- Lines that will cause compilation errors: 7 and 8 [4pts] Reason: Class B does not implement the default constructor The following result will be printed to the console (after commenting out line 8 and line 9): [6 pts] Constructor class A: Work Hard! Message from class A: Work Hard! Constructor class A: But don't forget to have some fun! Message from class A: But don't forget to have some fun! Message from class B: But don't forget to have some fun! Exercise 4 ---------- Note: Alternative correct solutions are perfectly fine. Block B: [1pts] private String description; private char language; Block C: [1pts] this.word=word; this.language = language; this.description=description; Block D: [2pts] this(word.word, word.language, word.description); Block E: [1pts] return this.word; Block F: [2pts] return this.word.equals(w.word) && this.language==w.language; Block G: [2pts] return w.word.length(); Block H: [3pts] return "Language: "+ this.language + ", Word: " + this.word + ", Description: " + this.description; Block I: [2pts] private Word[] englishWords; private Word wordObj; Block J: [3pts] super("Hello", 'E', "A formal greeting!"); this.englishWords = new Word[100]; this.wordObj = new Word("Hello", 'E', "A formal greeting!"); Block K: [3pts] super(word); this.englishWords = englishWords; this.wordObj = word; Block L: [5pts] for(int i=0; i