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

I have the program already done ALMOST. All I need is help with the highlited pa

ID: 3547061 • Letter: I

Question


I have the program already done ALMOST.

All I need is help with the highlited part.

Run this code and you will see that the final result is ZERO% all the time.

"You won 0.0% of the time!"

import java.util.Scanner;


public class RockPaperScissors {


/*

* Program allows user to play Rock, Paper and Scissors as many times as desired by entering Y until they enter N.

* Program will print amount of games played, amount lost, amount won and percentage won.

* User must enter "Y", "N", "Rock", "Paper" or "Scissors" with correct capitalization and spelling.

*/


public static void main(String[] args) {


Scanner input = new Scanner(System.in);


int playerWins = 0;

int compWins = 0;

int gamesPlayed = 0;


while (true) {

System.out.println("Do you want to play Rock Paper Scissors (Y/N): ");

String play = input.nextLine();


// user terminates game and program prints number of wins, losses and percentage of wins.

if (play.equals("N")) {


System.out.println("You played a total of " + gamesPlayed + " matches against the computer");

System.out.println("The computer won " + compWins + " matches");

System.out.println("You won " + playerWins + " matches");


// 0% wins when no games are played.

if (gamesPlayed == 0) {

System.out.println("You won 0% of the time!");

break;


} else if (gamesPlayed > 0) {

double totalWins = (int)(playerWins / gamesPlayed) * 100;

System.out.println("You won " + totalWins + "% of the time!");

break;

}


} else if ((!play.equals("N")) && (!play.equals("Y"))) {

System.out.println("Invalid entry");

} else {


System.out.println("Welcome to Rock, Paper and Scissors!");

System.out.print("Select "Paper", "Rock" or "Scissors": ");

String decision = input.nextLine();

System.out.println("Your selection: " + decision);


// random number generator producing integer values between 1 to 3 for computer's choices.

// 1 is for Rock, 2 is for Paper and 3 is for Scissors.

int num = (int)(Math.random() * (3-0) + 1);


switch (num) {


// Computer picks Rock

case 1:

if (decision.equals("Rock")) {

System.out.println("Tie, you and the computer selected rock");

gamesPlayed++;

} else if (decision.equals("Paper")) {

System.out.println("You win, paper beats rock!");

gamesPlayed++;

playerWins++;

} else if (decision.equals("Scissors")) {

System.out.println("Computer wins, rock beats scissors!");

gamesPlayed++;

compWins++;

} else {

System.out.println(decision + " is not a valid input");

}

break;

case 2:

// computer picks Paper

if (decision.equals("Rock")) {

System.out.println("Computer wins, rock beats paper!");

gamesPlayed++;

compWins++;

} else if (decision.equals("Paper")) {

System.out.println("Tie, you and the computer selected paper");

gamesPlayed++;

} else if (decision.equals("Scissors")) {

System.out.println("You win, scissors beats paper");

gamesPlayed++;

playerWins++;

} else {

System.out.println(decision + " is not a valid input");

}

break;

case 3:

// computer picks Scissors

if (decision.equals("Rock")) {

System.out.println("You win, rock beats scissors");

gamesPlayed++;

playerWins++;

} else if (decision.equals("Paper")) {

System.out.println("Computer wins, scissors beats paper");

gamesPlayed++;

compWins++;

} else if (decision.equals("Scissors")) {

System.out.println("Tie, you and the computer selected scissors");

gamesPlayed++;

} else {

System.out.println(decision + " is not a valid input");

}

break;


}

}


}


}

Hide comments (3)

Explanation / Answer

import java.util.Scanner;


public class RockPaperScissors {


/*

* Program allows user to play Rock, Paper and Scissors as many times as desired by entering Y until they enter N.

* Program will print amount of games played, amount lost, amount won and percentage won.

* User must enter "Y", "N", "Rock", "Paper" or "Scissors" with correct capitalization and spelling.

*/


public static void main(String[] args) {


Scanner input = new Scanner(System.in);


int playerWins = 0;

int compWins = 0;

int gamesPlayed = 0;


while (true) {

System.out.println("Do you want to play Rock Paper Scissors (Y/N): ");

String play = input.nextLine();


// user terminates game and program prints number of wins, losses and percentage of wins.

if (play.equals("N")) {


System.out.println("You played a total of " + gamesPlayed + " matches against the computer");

System.out.println("The computer won " + compWins + " matches");

System.out.println("You won " + playerWins + " matches");


// 0% wins when no games are played.

if (gamesPlayed == 0) {

System.out.println("You won 0% of the time!");

break;


} else if (gamesPlayed > 0) {

double totalWins = (int)(playerWins / gamesPlayed) * 100;

System.out.println("You won " + totalWins + "% of the time!");

break;

}


} else if ((!play.equals("N")) && (!play.equals("Y"))) {

System.out.println("Invalid entry");

} else {


System.out.println("Welcome to Rock, Paper and Scissors!");

System.out.print("Select "Paper", "Rock" or "Scissors": ");

String decision = input.nextLine();

System.out.println("Your selection: " + decision);


// random number generator producing integer values between 1 to 3 for computer's choices.

// 1 is for Rock, 2 is for Paper and 3 is for Scissors.

int num = (int)(Math.random() * (3-0) + 1);


switch (num) {


// Computer picks Rock

case 1:

if (decision.equals("Rock")) {

System.out.println("Tie, you and the computer selected rock");

gamesPlayed++;

} else if (decision.equals("Paper")) {

System.out.println("You win, paper beats rock!");

gamesPlayed++;

playerWins++;

} else if (decision.equals("Scissors")) {

System.out.println("Computer wins, rock beats scissors!");

gamesPlayed++;

compWins++;

} else {

System.out.println(decision + " is not a valid input");

}

break;

case 2:

// computer picks Paper

if (decision.equals("Rock")) {

System.out.println("Computer wins, rock beats paper!");

gamesPlayed++;

compWins++;

} else if (decision.equals("Paper")) {

System.out.println("Tie, you and the computer selected paper");

gamesPlayed++;

} else if (decision.equals("Scissors")) {

System.out.println("You win, scissors beats paper");

gamesPlayed++;

playerWins++;

} else {

System.out.println(decision + " is not a valid input");

}

break;

case 3:

// computer picks Scissors

if (decision.equals("Rock")) {

System.out.println("You win, rock beats scissors");

gamesPlayed++;

playerWins++;

} else if (decision.equals("Paper")) {

System.out.println("Computer wins, scissors beats paper");

gamesPlayed++;

compWins++;

} else if (decision.equals("Scissors")) {

System.out.println("Tie, you and the computer selected scissors");

gamesPlayed++;

} else {

System.out.println(decision + " is not a valid input");

}

break;


}

}


}


}