作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是java新手,正在网上做练习题。我遇到了这个问题,并卡住了很长一段时间。
编写一个名为 diceSum 的类,提示用户输入所需的总和,然后重复掷两个六面骰子,直到它们的总和达到所需的总和。以下是与用户的预期对话:
Desired dice sum: 9
4 and 3 = 7
3 and 5 = 8
5 and 6 = 11
5 and 6 = 11
1 and 5 = 6
6 and 3 = 9
这就是我所做的。
import java.util.Random;
import java.util.Scanner;
public class diceSum{
public static void main(String[] args){
System.out.print("Desired dice sum: ");
Scanner sc=new Scanner(System.in);
int input=sc.nextInt();
Random rnd=new Random();
int r1=rnd.nextInt(7);
int r2=rnd.nextInt(7);
int sum=0;
for(int i=0;i<6;i++){
sum=r1+r2;
System.out.println(r1 + "and" + r2 + "=" + sum);
}
}
}
我的输出是
Desired dice sum:9
0 and 2=2
0 and 2=2
0 and 2=2
0 and 2=2
0 and 2=2
0 and 2=2
我不明白为什么它会打印 0 和 2 6 次而不给出另一个随机数。我在想我是否应该再创建一些 int r3=rnd.nextInt(7),int r4=rnd.nextInt( 7).但我认为这会很长,但这是一种可能的方法。
最佳答案
用途:
int r1;
int r2;
for(int i=0;i<6;i++){
r1=rnd.nextInt(6) + 1;
r2=rnd.nextInt(6) + 1;
sum=r1+r2;
System.out.println(r1 + "and" + r2 + "=" + sum);
if (sum == input){
// This will break once you get the value.
break;
}
}
继续并获取新的随机数。还可以使用 rnd.nextInt(6) + 1 来获取 1 - 6(不含 0)。
你的任务是继续检查直到找到为止,而且不仅仅是6次。你应该使用 while
循环来代替。
关于java - For 循环输出不是我想要的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15322739/
使用登录后,我想吐出用户名。 但是,当我尝试单击登录按钮时, 它给了我力量。 我看着logcat,但是什么也没显示。 这种编码是在说。 它将根据我在登录屏幕中输入的名称来烘烤用户名。 不会有任何密码。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
我是一名优秀的程序员,十分优秀!