如何用java程序实现,求到一百需要掷几次骰子

如何用java程序实现,求到一百需要掷几次骰子,第1张

package com.test

import java.util.Random

public class saizi {

public static void main(String[] args) {

int count = 0// 用于统计次数

int sum = 1// 用于记录骰子和,退<1></1>就减。

while (sum < 100) {

count++// 每次循环都加1次

Random r = new Random()

int num = r.nextInt(6)

int diceCount = num + 1// 用于模拟骰子点数

sum += diceCount// 每一次都加上骰子点数

while (ifLoop(sum)) {

sum = changeSum(sum)

}

}

System.out.println(count)

}

public static int changeSum(int sum) {

// 开始判断退格

while (ifLoop(sum)) {

Random r = new Random()

int num = r.nextInt(2)

if (sum == 8) {

if (num == 0) {// 使用随机数模拟随机退4或6

sum -= 4

} else {

sum -= 6

}

} else if (sum == 15 || sum == 17 || sum == 19 || sum == 23 || sum == 21 || sum == 25) {

sum = 20

} else if (sum == 20) {

if (num == 0) {

sum = 70

} else {

sum = 90

}

} else if (sum == 28) {

if (num == 0) {// 使用随机数模拟随机进3或5

sum += 3

} else {

sum += 5

}

} else if (sum == 30 || sum == 34 || sum == 80) {

if (num == 0) {// 使用随机数模拟随机退3或5

sum -= 3

} else {

sum -= 5

}

} else if (sum == 36 || sum == 40) {

sum -= 5

} else if (sum == 43 || sum == 67 || sum == 81 || sum == 92) {

sum -= 4

} else if (sum == 47 || sum == 52 || sum == 61 || sum == 69 || sum == 85 || sum == 83) {

sum -= 6

} else if (sum == 斗纳56 || sum == 65 || sum == 91 || sum == 93) {

sum -= 5

} else if (sum == 72 || sum == 74 || 山尺sum == 76 || sum == 78) {

sum = 70

} else if (sum == 87) {

sum = 80

} else if (sum == 94 || sum == 95 || sum == 97) {

sum = 90

} else if (sum == 98) {

if (num == 0) {// 使用随机数模拟随机退2或5

sum -= 2

} else {

sum -= 5

}

} else if (sum == 99) {

sum -= 4

}

}

return sum

}

public static boolean ifLoop(int sum) {

int array[] = { 8, 15, 17, 19, 20, 21, 23, 25, 28, 30, 34, 36, 40, 43, 47, 52, 56, 61, 65, 67, 69, 70, 72, 空唯没74,

76, 78, 80, 81, 83, 85, 87, 90, 91, 92, 93, 94, 95, 97, 98, 99 }

for (int i = 0 i < array.length i++) {

if (sum == array[i]) {

return true

} else if (sum == 70) {

System.out.println("乐趣怪!")

return false

} else if (sum == 90) {

System.out.println("惊喜怪!")

return false

}

}

return false

}

}

public class Test {

public static void main(String[] args){

DieGame dieGame = new DieGame()

if (dieGame.play()) {

System.out.println("你赢了!"戚山段)

} else {

System.out.println("你输了!")

}

}

}

class Die {

private int faceValue

public int getFaceValue() {

return faceValue

}

public void setFaceValue(int faceValue) {

this.faceValue = faceValue

}

public void roll() {

this.faceValue = (int) (Math.random() * 6 + 1)

}

}

class DieGame {

private Die die1 = new Die()

private Die die2 = new Die()

public boolean play() {

die1.roll()

System.out.println("第一次高誉点数:" + die1.getFaceValue())

die2.roll()

System.out.println("第二次点数:唯敏" + die2.getFaceValue())

if (die1.getFaceValue() + die2.getFaceValue() == 7) {

return true

} else {

return false

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8242416.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存