當前位置:首頁 » 編程語言 » 剪刀石頭布java

剪刀石頭布java

發布時間: 2022-10-03 22:28:36

A. 用java語言編寫剪刀石頭布,效果如下

public static void main(String[] args) {
System.out.println("游戲開始");
for (int i = 0; i < 3; i++) {
int r=((int) (Math.random()*3+1));//系統產生一個1-3的隨機數
System.out.println("請輸入數字1-3【1:剪刀 2:石頭3:布】");
Scanner scan=new Scanner(System.in);
int q=scan.nextInt();//用戶輸入一個數字
if(q==r) System.out.println("平局");
if(q>r) System.out.println("你贏啦");
if(q<r) System.out.println("你輸啦");
}
}

B. Java語言,用while循環編剪刀石頭布的游戲

你在while外面聲明一個變數int win_time = 0;
然後while裡面每贏一次 win_time就+1,輸一次win_time = 0;
再在你判斷輸贏那裡插一段判斷語句

if(win_time == 2){
break;//如果贏的次數是2了,就跳出循環
}
這樣就可以實現連贏2次才跳出

補充一下,我說的輸贏都是指用戶的輸贏

C. 用JAVA做一個剪刀,石頭,布的人機猜拳游戲。

編寫這個小游戲 我們需要幾個類

1、第一個 Person 類

import java.util.Scanner;

/**

* @right 2018 sugarsLab.com All rights reserved.

* @author jingfei.wu

* @date 2018年11月16日

* @version 1.0

* @ClassName Person

* @description 用戶類 用來計算用戶輸入

*/

public class Person {

public static final Person me = new Person();

private int n = 0;

/**

* @right 2018 sugarsLab.com All rights reserved.

* @author jingfei.wu

* @date 2018年11月16日

* @version 1.0

* @description 用戶輸入的 指令

* @return

*/

public int input() {

System.out.println("請輸入:石頭,剪刀,布 輸入:@退出 退出系統");

@SuppressWarnings("resource")

Scanner scanner = new Scanner(System.in);

String s = scanner.next();

// s 裡面存著 用戶輸入的 指令 切記這里不要使用 s.equals() 而是寫 "指令".equals() 這么寫 是為了避免空指針

if ("石頭".equals(s)) {

n = 1;

} else if ("剪刀".equals(s)) {

n = 2;

} else if ("布".equals(s)) {

n = 3;

} else if ("@退出".equals(s)) {

System.out.print("系統退出了");

System.exit(0);

}

return n;

}

}

2、Computer 類

/**

* @right 2018 sugarsLab.com All rights reserved.

* @author jingfei.wu

* @date 2018年11月16日

* @version 1.0

* @ClassName Computer

* @description 游戲中電腦類 用來產生隨機數

*/

public class Computer {

public static final Computer me = new Computer();

/**

* @right 2018 sugarsLab.com All rights reserved.

* @author jingfei.wu

* @date 2018年11月16日

* @version 1.0

* @description TODO

* @return {int} 返回值為int 類型

*/

public int random() {return (int) (Math.random() * 3 + 1);}

}

3、Game類

/**

* @author jingfei.wu

* @date 2018年11月16日

* @version 1.0

* @ClassName Game

* @description 游戲類 用來計算游戲結果

*/

public class Game {

/**

* @author jingfei.wu

* @date 2018年11月16日

* @version 1.0

* @description 返回 人機交互結果

* @param n

* {int} 用戶輸入 的標識 石頭 為 1 剪刀 為 2 布 為 3

* @param m

* {int} 電腦產生的隨機數 石頭 為 1 剪刀 為 2 布 為 3

*/

public void result(int n, Integer m) {

String res = "";

if (m.intValue() == 1)

res = "石頭";

else if (m.intValue() == 2)

res = "剪刀";

else

res = "布";

if (n == m) {

System.out.println("平了 computer出" + res);

} else {

if (m == 1) {

if (n == 2)

System.out.println("你輸了 computer出 " + res);

else if (n == 3)

System.out.println("你贏了 computer出 " + res);

} else if (m == 2) {

if (n == 1)

System.out.println("你贏了 computer出 " + res);

else if (n == 3)

System.out.println("你輸了 computer出 " + res);

} else if (m == 3) {

if (n == 1)

System.out.println("你輸了 computer出 " + res);

else if (n == 2)

System.out.println("你贏了 computer出 " + res);

}

}

}

public static void main(String[] args) {

while (true) {

Game gamer = new Game();

gamer.result(Person.me.input(), Computer.me.random());

}

}

}

如下是程序運行截圖

D. 在百度知道上找到了網友的java石頭剪刀布游戲的代碼,但是理解不來,希望大神能幫我把程序每句話都注釋

public class Test {
private static Scanner sc;
private static Random rad;
private static final String[] FINGERS = { "剪刀", "石頭", "布" };
private static int win = 0, loose = 0, draw = 0;

public static void main(String[] args) {
// 捕獲用戶輸入類
sc = new Scanner(System.in);
//產生隨機數的類
rad = new Random();

//一進來就讓用戶輸入開始游戲,直到輸入E, 退出遊戲。
while (true) {
System.out.println("~~~~~~~~~~~~剪刀石頭布游戲,輸入E可以退出~~~~~~~~~~~");
System.out.println("請選擇你要出什麼?Z——剪刀,X——石頭,C——布");

//獲取用戶輸入的字元
String command = sc.nextLine();

//輸入字元轉換 手勢沒發比較大小 就把字元轉換成數字比較大小
int playerFinger = getValue(command);
if (playerFinger == -1) {//用戶輸入的是E ==> -1 表示退出
break;
}
else if (playerFinger == 3) {//用戶輸入的是 E Z X C 之外的字元 ==> 3 表示輸入的不是合法的,然後繼續讓用戶重新輸入
System.out.println("輸入錯誤,請參考說明!");
continue;
}
//當用戶輸入 ZXC 中的字元時才會到這一步
//用戶的輸入轉換成了 0,1,2
//finger[0]="剪刀" finger[1]="石頭" finger[2]="布" 程序第一行定義好的
System.out.println("你出的是" + FINGERS[playerFinger]);
//生成隨機整數 3以內的(1,2,3)
int cpuFinger = rad.nextInt(3);
//finger[0]="剪刀" finger[1]="石頭" finger[2]="布" 程序第一行定義好的
System.out.println("計算機出的是" + FINGERS[cpuFinger]);
//比較兩個數字,你可以理解 0 就是剪刀,1是石頭 2 是布
int result = playerFinger - cpuFinger;
if (0 == result) {//結果等於零說明兩個數字一樣
System.out.println("平局!");
draw++;
}
else if (-1 == result || 2 == result) {// 0-1=-1,1-2=-1,2-0=2 表示你輸的三種情況 ;0 就是剪刀,1是石頭 2 是布
System.out.println("你輸了!");
loose++;
}
else {//剩下的情況除了平局,輸局 肯定就是你贏了
System.out.println("你贏了!");
win++;
}
}

System.out.println("游戲結束!\r\n游戲統計次數");
System.out.println(String.format("贏:%d\r\n輸:%d\r\n平局:%d", win, loose, draw));
}

/**
* 用戶輸入字元進行轉換
* 輸入字元 E 就返回-1 作為後續判斷,表示退出程序
* 輸入字元 Z 返回 0 代表剪刀
* 輸入字元 X 返回 1 代表石頭
* 輸入字元 C 返回 2 代表布
* 輸入其他字元 返回3 ,表明輸入的不是符合規則的手勢(0,1,2)
*
* @param command
* @return
*/
private static int getValue(String command) {
if (command.equalsIgnoreCase("E")) {
return -1;
}
if (command.equalsIgnoreCase("Z")) {
return 0;
}
if (command.equalsIgnoreCase("X")) {
return 1;
}
if (command.equalsIgnoreCase("C")) {
return 2;
}
return 3;
}
}

E. java語言,用while循環編輯游戲剪刀石頭布,系統或者用戶連續贏2次,循環結束

把循環改成這樣試試看
將:while(win_time1 !=2&&win_time2!=2)
改為:
while(1)
{
if((win_time1 == 2) || (win_time2 == 2) break;
//其他代碼
}

F. java語言,用while循環編輯游戲剪刀石頭布,系統或者用戶連續贏2次,循環結束

定義一個int變數,每次贏之後變數加1,判斷檢查這個變數是否=2,如果true,循環結束,如果false,繼續,而且變數再次變成0!

G. 請用java編寫一個石頭剪刀布的程序

importjava.util.Random;
importjava.util.<ahref="https://www..com/s?wd=Sc&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">Sc</a>anner;

publicclassFingerGuessingGame{
privatestatic<ahref="https://www..com/s?wd=Sc&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">Sc</a>anner<ahref="https://www..com/s?wd=sc&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">sc</a>;
privatestaticRandomrad;
privatestaticfinalString[]FINGERS={"剪刀","石頭","布"};
privatestaticintwin=0,loose=0,draw=0;

publicstaticvoidmain(String[]args){
sc=newScanner(System.in);
rad=newRandom();
while(true){
System.out.println("~~~~~~~~~~~~剪刀石頭布游戲,輸入E可以退出~~~~~~~~~~~");
System.out.println("請選擇你要出什麼?Z——剪刀,X——石頭,C——布");
Stringcommand=sc.nextLine();
intplayerFinger=getValue(command);
if(playerFinger==-1){
break;
}elseif(playerFinger==3){
System.out.println("輸入錯誤,請參考說明!");
continue;
}
System.out.println("你出的是"+FINGERS[playerFinger]);
intcpuFinger=rad.nextInt(3);
System.out.println("計算機出的是"+FINGERS[cpuFinger]);
intresult=playerFinger-cpuFinger;
if(0==result){
System.out.println("平局!");
draw++;
}elseif(-1==result){
System.out.println("你輸了!");
loose++;
}else{
System.out.println("你贏了!");
win++;
}
}

System.out.println("游戲結束! 游戲統計次數");
System.out.println(String.format("贏:%d 輸:%d 平局:%d",win,loose,draw));
}

privatestaticintgetValue(Stringcommand){
if(command.equalsIgnoreCase("E")){
return-1;
}
if(command.equalsIgnoreCase("Z")){
return0;
}
if(command.equalsIgnoreCase("X")){
return1;
}
if(command.equalsIgnoreCase("C")){
return2;
}
return3;
}
}

H. 如何用JAVA設計一個游戲,電腦和人玩剪刀石頭布游戲,並且能顯示游戲結果

寫了一下,結果輸出到桌面上,你把文件輸出路徑改成你的桌面路徑就可以了,不知道你要不要最終結果

代碼:

I. 剪刀石頭布如何用java判斷連勝

設置一個全局整型變數來記錄連勝次數,初始設置為0,每第一次勝利賦值設置為1,再連勝一次則加1,失敗則清零。最後判斷這個值是否為0,為0則沒有連勝,不為0則連勝。

J. java 剪刀石頭布 這個游戲怎麼用數組來實現,我把腦殼都想破了

import java.util.*;

public class Exam
{
public static void main(String[] args)
{
String[] cq={"石頭","剪刀","布"};
String guess;
int youwin=0,mewin=0,daping=0,total=0,n;
Random r=new Random();
Scanner sc=new Scanner(System.in);

while(true)
{
n=r.nextInt(3);
System.out.print("石頭、剪刀、布,我已出,請你出(輸入exit退出循環):");
guess=sc.nextLine();
if(guess.equals("exit"))
{
break;
}
else
{
total++;
System.out.print("這一次你出的是"+guess+",我出的是"+cq[n]+",所以");
if(guess.equals("石頭")&&1==n || guess.equals("剪刀")&&2==n || guess.equals("布")&&0==n)
{
youwin++;
System.out.println("你贏了!");
}
else if(guess.equals(cq[n]))
{
daping++;
System.out.println("我們打平了!");
}
else
{
mewin++;
System.out.println("我贏了!");
}
}
}
System.out.println("總共玩了"+total+"次,你贏了"+youwin+"次,我贏了"+mewin+"次,打平"+daping+"次!");
}
}

熱點內容
安卓上哪裡下大型游戲 發布:2024-12-23 15:10:58 瀏覽:188
明日之後目前適用於什麼配置 發布:2024-12-23 14:56:09 瀏覽:52
php全形半形 發布:2024-12-23 14:55:17 瀏覽:827
手機上傳助手 發布:2024-12-23 14:55:14 瀏覽:732
什麼樣的主機配置吃雞開全效 發布:2024-12-23 14:55:13 瀏覽:828
安卓我的世界114版本有什麼 發布:2024-12-23 14:42:17 瀏覽:709
vbox源碼 發布:2024-12-23 14:41:32 瀏覽:277
詩經是怎麼存儲 發布:2024-12-23 14:41:29 瀏覽:659
屏蔽視頻廣告腳本 發布:2024-12-23 14:41:24 瀏覽:419
php解析pdf 發布:2024-12-23 14:40:01 瀏覽:818