Home > Article > Computer Tutorials > Write Java to implement the guessing game!
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Random;
public class FingerGuessing {
private String[] op = new String[] { "cloth", "scissors", "stone" };
Random r = new Random();
private int wj = 0;
private int dn = 0;
private int count = 0;
private int go() {
int k = r.nextInt(3);
System.out.println("Computer:" op[k]);
return k;
}
private void compare(int i) {
count ;
System.out.println("Player:" op[i - 1]);
int k = go();
if (i - 1 == k) {
System.out.println("tie");
} else if ( i - 1 - k == 1 || i-1-k == -2) {
System.out.println("Player wins");
wj ;
} else {
System.out.println("Computer wins");
dn ;
}
}
private void info() {
System.out.println("total" count "disk");
System.out.println("Player wins" wj "disk");
System.out.println ("Computer wins" dn "disk");
System.out.println ("tie" (count-wj-dn) "disk");
}
public void start() {
String xz = """;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("\nPlease select:\n1. Paper\n2. Scissors\n3. Stone\nPlease enter exit when finished");
try {
xz = br.readLine();
if (xz.equalsIgnoreCase("exit")) {
info();
continue;
}
if (!xz.equals("1") & !xz.equals("2") & !xz.equals("3")) {
System.out.println ("Wrong selection, please select again");
continue;
}
compare(Integer.parseInt(xz));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} while (!xz.equals("exit"));
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new FingerGuessing().start();
}
}
#include
#include
#include
void main()
{
int rand_0(void);
int game(int inp);
int start,yes=1,inp,inp_1=1;
char y;
while(yes) /*Prevent users from entering data other than 1 or 2*/
{
printf("1: Start the game\n2: Ranking list\n");
scanf("%d",&start);
if((start!=1)&(start!=2))
{
printf("Please enter 1 or 2\n");
}
else
yes=0;
}
start:
if(start==1) /*If the user chooses to start the game...*/
{
printf ("You come out?\n1: Rock\n2: Scissors\n3: Paper\n");
while(inp_1) /*Prevent users from entering other data*/
{
scanf("%d",&inp);
if((inp!=1)&(inp!=2)&(inp!=3))
{
printf ("You come out?\n1: Rock\n2: Scissors\n3: Paper\n");
}
else
{
inp_1=0;
switch(game(inp))
{
case 1:printf("\n\nCongratulations, you won!\n\n");break;
case 0:printf("\n\nSorry, you lost!\n\n");break;
case 2:printf("\n\ntie\n\n");break;
}
}
}
}
inp_1=1;
printf("\n\nRestart the game? (y/n)");
scanf("%s",&y);
if((y=='y')||y=='Y')
goto start;
else
return 0;
}
int rand_0(void) /*Get a random number*/
{
int i,rand_1;
srand((unsigned)time(NULL));
for(i=1;i
{
rand_1=rand()%4;
if(rand_1==0) continue;
return(rand_1);
}
}
int game(int inp)
{
int random,win; /*win variable, 1 means win, 2 means draw, 0 means lose*/
random=rand_0();
switch(inp)
{
case 1:if(random==3) return win=0;
else if(random==2) return win=1;
else return win=2;
case 2:if(random==3) return win=1;
else if(random==2) return win=2;
else return win=0;
case 3:if(random==3) return win=2;
else if(random==2) return win=1;
else return win=0;
}
}
Just did a little bit. . .
The above is the detailed content of Write Java to implement the guessing game!. For more information, please follow other related articles on the PHP Chinese website!