一个赌单双游戏的预测和想法

猜单双游戏预测

背景:

很古老的一种游戏,常见于电影电视剧赌场,参与者通过押单押双来进行下注,当骰子是单数时押单的玩家获得与下注同等金额的回报,押双则同理。

想法:

如果我第一次押一定金额的钱,押中则继续押这么多,押错则翻一倍再押,如果继续押错则再翻一倍。单双平均随机出现,那么只要本金充足则一定可以翻盘回本,如想降低风险减少本金,则一旦押对就将押金调回置初始值,这样每赢一次都会把之前输的一次性赢回再加上初始值,初始值越大每次赢的就越多需要的本金也就相对越多

思路:

用随机数模拟单双,奇数为单,偶数为双,通过键盘输入押单押双、玩多少局、第一次押多少来开始游戏,当随机数的奇偶与参与者押的单双对应时,参与者账面金额增加相应数值,当押错时账面金额减去相应数值,同时下一次押金翻倍,用一个变量来记录账面最低值即为所需本金

代码:

import java.util.Scanner;

public class test {
	public static void main(String[] args) {
		int money = 0;// 总钱数
		int pay = 0;// 当前押的钱数
		int MIN = 0;// 最少本金
		int next = 1;// 继续执行

		Scanner sc = new Scanner(System.in);
		System.out.print("选择押单押双(1:单    0:双):");
		int ds = sc.nextInt();

		System.out.print("押多少次:");
		int cs = sc.nextInt();

		System.out.print("首场押的钱数:");
		int start = sc.nextInt();
		pay = start;
		MIN = start;
		while (next == 1) {
			for (int i = 0; i < cs; i++) {
				int a = (int) (Math.random() * 10 + 1);
				System.out.println("本次产生的随机数为:" + a);
				if (a % 2 == ds) {
					money = money + pay;
					System.out.print("恭喜你,赢了:" + pay);
					pay = start;
				} else {
					money = money - pay;
					System.out.print("糟   糕,输了:" + pay);
					pay = 2 * pay;
					if (MIN < -(money - pay)) {
						MIN = -(money - pay);
					}
				}
				System.out.println("   目前账面钱数:" + money);
			}
			//System.out.println("当前账面钱数:  " + money);
			System.out.println();
			System.out.println("以上场次所需最少本金:" + MIN);
			System.out.print("是否再博一把?(1:是):");
			next = sc.nextInt();
			cs = 1;
		}

	}

}

运行结果:


以上仅为个人想法,欢迎讨论。

  纯属娱乐,切勿当真,远离赌博!

posted @ 2018-02-21 23:00  Amen-Z  阅读(1203)  评论(0编辑  收藏  举报