package com.gk.game;
import java.util.Random;
import java.util.Scanner;
/**
* <pre>
* 需求:
* 1.电脑随机开奖,开奖数字范围:1~38之间
* 2.游戏者只可以购买1~36之间的一个随机号码
* 3.一次购买投一个金币,如果不中,则翻倍下注,直到中奖为止
* 4.编写程序实现这个游戏,求中奖时一共赢了多少金币
* </pre>
*/
public class Games {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int x_num = scanner.nextInt();
Games.game_over(x_num);
}
/**
* <pre>
* 中奖了吗?
* @param num : 下注号码
* </pre>
*/
static int buy_num;//下注次数
public static void game_over(int x_num){
System.out.println("开奖号码开始......");
int k_num = random_num(38);
buy_num++;
System.out.println(
"开奖号码为:" + k_num +
" 下注号码为:" + x_num +
" 购买次数为:" + buy_num +
" 当次下注的金额为:" + (Math.pow(2, buy_num-1)) +
" 一共下注金额为:" + (Math.pow(2, buy_num)-1) + " 金币" +
" 中奖金额为:" + ((x_num == k_num ? Math.pow(2, buy_num-1)*2 : 0) - (Math.pow(2, buy_num)-1)) + " 金币" +
" 开奖结果:" + (x_num == k_num ? " 您真牛,这样都可以中奖" : " 笨蛋又猜错了"));
if(x_num == k_num){System.out.println("游戏结束......"); return;}
game_over(x_num);
}
//获取随机开奖号码:1~38
public static int random_num(int num) {
return new Random().nextInt(num) + 1;
}
}
import java.util.Random;
import java.util.Scanner;
/**
* <pre>
* 需求:
* 1.电脑随机开奖,开奖数字范围:1~38之间
* 2.游戏者只可以购买1~36之间的一个随机号码
* 3.一次购买投一个金币,如果不中,则翻倍下注,直到中奖为止
* 4.编写程序实现这个游戏,求中奖时一共赢了多少金币
* </pre>
*/
public class Games {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int x_num = scanner.nextInt();
Games.game_over(x_num);
}
/**
* <pre>
* 中奖了吗?
* @param num : 下注号码
* </pre>
*/
static int buy_num;//下注次数
public static void game_over(int x_num){
System.out.println("开奖号码开始......");
int k_num = random_num(38);
buy_num++;
System.out.println(
"开奖号码为:" + k_num +
" 下注号码为:" + x_num +
" 购买次数为:" + buy_num +
" 当次下注的金额为:" + (Math.pow(2, buy_num-1)) +
" 一共下注金额为:" + (Math.pow(2, buy_num)-1) + " 金币" +
" 中奖金额为:" + ((x_num == k_num ? Math.pow(2, buy_num-1)*2 : 0) - (Math.pow(2, buy_num)-1)) + " 金币" +
" 开奖结果:" + (x_num == k_num ? " 您真牛,这样都可以中奖" : " 笨蛋又猜错了"));
if(x_num == k_num){System.out.println("游戏结束......"); return;}
game_over(x_num);
}
//获取随机开奖号码:1~38
public static int random_num(int num) {
return new Random().nextInt(num) + 1;
}
}