Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

JAVA: \"Simon Says\" is a memory game where \"Simon\" outputs a sequence of 10 c

ID: 3680142 • Letter: J

Question

JAVA: "Simon Says" is a memory game where "Simon" outputs a sequence of 10 characters (R, G, B, Y) and the user must repeat the sequence. Create a for loop that compares the two strings starting from index 0. For each match, add one point to userScore. Upon a mismatch, exit the loop using a break statement. Ex: The following patterns yield a userScore of 4: simonPattern: R, R, G, B, R, Y, Y, B, G, Y userPattern: R, R, G, B, B, R, Y, B, G, Y

Program affiliated with question:

import java.util.Scanner;

public class SimonSays {
public static void main (String [] args) {
String simonPattern = "";
String userPattern = "";
int userScore = 0;
int i = 0;

userScore = 0;
simonPattern = "RRGBRYYBGY";
userPattern = "RRGBBRYBGY";

/* Your solution goes here */

System.out.println("userScore: " + userScore);

return;
}
}

Explanation / Answer

Hi, I have updated the code changes. Please find the highlighted lines.

import java.util.Scanner;
public class SimonSays {
public static void main (String [] args) {
String simonPattern = "";
String userPattern = "";
int userScore = 0;
int i = 0;
userScore = 0;
simonPattern = "RRGBRYYBGY";
userPattern = "RRGBBRYBGY";
/* Your solution goes here */
for(i=0; i < simonPattern.length(); i++){
   if(simonPattern.charAt(i) == userPattern.charAt(i)){
       userScore++;
   }
   else{
       break;
   }
}
System.out.println("userScore: " + userScore);
return;
}
}

Output:

userScore: 4