赌博游戏,买大买小

import java.util.Scanner;
import java.util.Random;
public class Demo6 {

	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		Random ran=new Random();
		int x=ran.nextInt(6)+1;
		int y=ran.nextInt(6)+1;
		int z=ran.nextInt(6)+1;
		int totalMoney=5000;	//初始金币数
		int mul=1;				//倍数
		int maxMul;				//下注的最大倍数
		int money;				//下注的钱
		int totalNum;			//三个骰子总点数
		char computerResult;	//电脑的结果
		char myResult;			//大小
		boolean result;			//结果
		char isContinue;	//是否继续下注
		int count=1;			//计算下注的次数
		char buy;				//余额不够时是否购买
		String vip="cB2,qB1@";	//余额不够时,充值码
		String acceptVip;		//用户输入的充值码
		char secondBuy;			//充值码错误时,是否继续充值
		
		do {
			//重新给isContinue赋值,因为在一次循环后,isContinue就变成了'y'
			//当在执行不到if的时候,do-while就进入了死循环,会一直执行else的内容
			isContinue='n';
			if(totalMoney>=5) {
				System.out.println("账户余额为:"+totalMoney);
				System.out.println("当前为第"+count+"局!!!");
				totalNum=x+y+z;			//总点数
				System.out.println("请输入买大买小:大/小");
			
				myResult=input.next().charAt(0);	
				do {
					
					//判断押注金额是否不大于总金额
					do {
						//判断押注的金额是否大于0
						do {
							System.out.println("请输入押注的金额:(必须是5的倍数)");
							money=input.nextInt();
							if(money==0) {
								System.out.println("金额不能为0,请重新输入!");
							}
						}while(money==0);
						if(money>totalMoney) {
							System.out.println("您的金币余额不足!");
						}
					}while(money>totalMoney);
				}while(money%5!=0);
			
				//判断是否有能力去下这个注
				do {
					maxMul=totalMoney/money;
					//判断倍数的合法性,必须要大于0
					do {
						System.out.println("请输入押注的倍数:");			
						mul=input.nextInt();
						if(mul<=0) {
							System.out.println("倍数必须要大于0!");
						}
					}while(mul<=0);
					if(mul>maxMul) {
						System.out.println("您所拥有的金币余额"+totalMoney+",不够支持下注"+money+"的"+mul+"倍!");
						System.out.println("请重新下注!");
					}
				}while(mul>maxMul);
			
				//对押注的结果进行比较
				if(totalNum>=10) {
					computerResult='大';
				}else {
					computerResult='小';
				}
			
				//结果比对
				result=myResult==computerResult?true:false;
				
				//输出结果
				if(result){
					System.out.println("本次骰子:   "+x+"   "+y+"   "+z);
					System.out.println("结果是:\t"+computerResult);
					System.out.println("恭喜你,押 "+myResult+" 成功!");
					System.out.print("您账户的余额还有:");
					totalMoney=totalMoney+mul*money;
					System.out.println(totalMoney+"金币");
				}else {
					System.out.println("本次骰子:   "+x+"   "+y+"   "+z);
					System.out.println("结果是:\t"+computerResult);
					System.out.println("押 "+myResult+" 失败,再接再厉!");
					System.out.print("您账户的余额还有:");
					totalMoney=totalMoney-mul*money;
					System.out.println(totalMoney+"金币");
				}
				
				count+=1;
				System.out.println("是否继续下注:y/n");
				isContinue=input.next().charAt(0);
				
			}else {
				//默认不够买金币
				buy='n';
				System.out.print("余额不足!");
//-------------------------------------------------------
				System.out.println("是否购买金币?y/n");
				buy=input.next().charAt(0);
//--------------------------------------------------------				
				if(buy=='y') {
					do {
						//默认充值失败时不继续购买金币
						secondBuy='n';
						System.out.println("即将进入充值程序......");
						System.out.println("请输入充值码:");
						acceptVip=input.next();
						if(acceptVip.equals(vip)) {
							System.out.println("充值5000个金币成功!");
							totalMoney+=5000;
							System.out.println("您的账户余额为:"+totalMoney+"金币");
						}else {
							System.out.println("充值失败......");
							System.out.println("是否继续充值?y/n");
							secondBuy=input.next().charAt(0);
							if(secondBuy=='n') {
								System.exit(0);
							}
						}
					}while(secondBuy=='y');
					
					//金币购买完成返回游戏
					System.out.println("是否继续下注:y/n");
					isContinue=input.next().charAt(0);
				}else {
					System.out.println("您选择不购买金币,账户余额不足,即将退出程序......");
					System.exit(0);
				}	
				
//---------------------------------------------------------------------------				
			}
			
		}while(isContinue=='y');
		
		input.close();
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值