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();
}
}
赌博游戏,买大买小
最新推荐文章于 2022-10-21 21:30:15 发布