gpt4 book ai didi

java - 乘法口诀表,提问,直到做出所有正确答案

转载 作者:行者123 更新时间:2023-12-02 10:54:56 27 4
gpt4 key购买 nike

我有一个程序可以帮助用户学习乘法表,然后显示正确/错误答案的结果。第一步是简单地询问用户想要使用哪个乘法表(1-9)。然后用户将得到一个随机数字序列乘以所选的乘法表。如果用户回答正确,则该数字将不会再次显示,但如果错误,则会显示该数字,直到做出正确答案。

一种情况是用户选择“3”,然后它将以随机序列显示,例如(3x7 =、3x1 =、3x9 =...)。用户将在每个“=”后回答。现在,我只能按升序打印所有内容,我应该在 while 循环中使用随机乘以所选表吗?

我的第二个问题是如何再次询问错误回答的数字,直到正确回答为止?在这种情况下,我认为 for 循环不是最佳选择吗?

这是迄今为止我的代码:

public class Multiplication {
public static void main (String[] args) {
Scanner inread = new Scanner (System.in);
int answer;

System.out.println("Choose multiplication table (1-9)");
int num1= inread.nextInt();

for (int i=1; i<11; i++) {
System.out.println("Write answer after = ");
System.out.println(num1 + " x " + (i) + " = ");
answer=inread.nextInt();

if (answer == (num1 * i) ) {
System.out.println("Correct answer");
// Do not show that number again
}

else {
System.err.println("Wrong answer");
//Show this number again.
}
}
}
}

int num1 = inread.nextInt(); 之后的新代码

unanswered.add(1);
unanswered.add(2);
unanswered.add(3);
unanswered.add(4);
unanswered.add(5);
unanswered.add(6);
unanswered.add(7);
unanswered.add(8);
unanswered.add(9);
unanswered.add(10);

Collections.shuffle(unanswered);
while (!unanswered.isEmpty()) {
System.out.println(num1 + "*" + "unanswered" + " = "); //?
answer = inread.nextInt();
if (answer == (num1 * unanswered)) { //?
unanswered.remove(unanswered); //?
}
}

所以,我认为这几乎就是你建议的方式?不过我确信我可以以更漂亮的方式添加数字。我习惯于使用 for 循环遍历列表,然后使用计数器显示列表。那么我在哪里加了“?”是因为我不确定如何指定我正在尝试的列表中的位置,例如删除数字。

或者我应该在原来的 for 循环中添加 while 循环?这样我就可以在 for 循环中使用 (i) 来指定我将在列表中显示并可能删除的位置?

最佳答案

一个好问题,也是编码的良好开端。

在解决所有乘法问题之前请求输入的一种方法是 while环形。正如 @Easton 指出的 ArrayList存储数字和 Collections.shuffle将帮助进行设置。通过提前创建 ArrayList,然后使用 while loop直到为空提示用户继续回答。

编辑

朝着正确的方向前进。为了简化未应答数字的创建,请使用 for 循环,例如: for(i=1, i<=10,i++)然后将(i) 添加到未答复。

在 while 循环中,获取第一个索引:unanswered[0]并将其设置为 num1然后,如果答案正确,请将其删除(就像现在一样)。如果不使用Collections.rotate未回答的问题 1。这会将未回答的问题移至数组末尾,以便稍后再次尝试。

关于java - 乘法口诀表,提问,直到做出所有正确答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51847401/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com