Java 如何获得随机生成的猜测
我对Java还是有点陌生,有一个实验室需要模拟一个彩票游戏,该游戏生成一个介于1到10之间的数字。它首先询问用户希望购买多少张彩票,然后询问他们是否希望计算机为他们生成猜测,如果是,则将生成猜测并显示中奖号码。如果用户说不,那么用户将自己输入猜测并显示中奖号码 当有人输入yes或no时,我在计算如何执行代码时遇到问题。我应该执行do while循环吗 这是我现在的代码Java 如何获得随机生成的猜测,java,Java,我对Java还是有点陌生,有一个实验室需要模拟一个彩票游戏,该游戏生成一个介于1到10之间的数字。它首先询问用户希望购买多少张彩票,然后询问他们是否希望计算机为他们生成猜测,如果是,则将生成猜测并显示中奖号码。如果用户说不,那么用户将自己输入猜测并显示中奖号码 当有人输入yes或no时,我在计算如何执行代码时遇到问题。我应该执行do while循环吗 这是我现在的代码 public static void main(String[] args) { Scanner input = ne
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double TICKET_PRICE = 2.00;
System.out.println("Welcome to the State of Florida Play10 Lottery Game. Ticket Price: $" + TICKET_PRICE);
System.out.println("How many tickets would you like to purchase?");
int ticketsPurchased = input.nextInt();
System.out.print("Please enter " + (ticketsPurchased) + " to confirm your credit carde charge: ");
int creditCardCharge = input.nextInt();
if (ticketsPurchased != creditCardCharge) {
System.out.println("Wrong number, please enter again: ");
return;
}
if (ticketsPurchased == creditCardCharge) {
System.out.println("Thank you. Your credit card will be charged $" + (ticketsPurchased * 2));
}
int min = 1;
int max = 10;
int winner;
winner = min + (int)(Math.random() * ((max - min) + 1));
System.out.print("Would you like the computer to generate your guesses? Enter 'Y' or 'N': ");
String computerGeneratedGuess = input.nextLine();
int guess = 0;
int winCtr = 0;
String output = "";
}
以下是算法:
1.获取要购买的门票数量,
计算并确认信用卡费用。
2.生成随机获胜整数和
生成随机猜测或提示
用户的猜测。
3.报告中奖号码,中奖号码
门票、总奖金、总损失和
允许扣除额
这是实验室本身:
通常,布尔值可以方便地控制这样的循环。比如:
boolean gameOver = false;
int theGuess = 0;
while (!gameOver) {
if (computerGeneratedGuess == 'Y') {
theGuess = //code to generate a random number
}
else {
theGuess = //code to for user to enter a guess
}
if (theGuess == winner) {
gameOver = true;
}
好吧,你需要一个循环来处理多张票证,但是他们是想要自动生成的还是提供的号码与此无关。是/否部分可以是
if
。如果他们想提供,请提示他们;如果不是,则生成它们。是的,每次您要求用户键入内容时,您都应该验证他们输入的内容是否有效,如果无效,则让他们重新输入(使用适当的消息)。即使是nextInt()
也是不够的——毕竟,很好,他们输入了一个int,但是如果他们输入了“0”、一个大数字或一个负整数呢。所有这些都应该引起重新提示(因此,事实上,提示输入一个整数并在不正确的情况下使用错误循环,这将是项目中经常重复的一段代码;)