有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java记分游戏执行不正确

任何提示都将不胜感激

一些数据也可能有用。所有罢工人数为300人

我已经按照老师的要求删除了我的信息。我尝试删除帖子,但堆栈溢出不允许我删除。很抱歉给您带来不便


共 (2) 个答案

  1. # 1 楼答案

    我会给你一个专业提示,一开始可能很难使用,但会节省你很多时间

    编写单元测试!这将迫使您对其进行更好的建模

    首先,假装你不在乎用户的输入。创建一个名为Game的java类。添加一个名为init()的方法来设置游戏。添加另一个方法shot(int pins),它允许您击倒一些pins。添加另一个返回分数的方法getScore()

    现在您可以编写一个测试了。测试应该在游戏开始时进行,进行射击,并检查分数。如果分数是错误的,它应该抛出一个错误

    然后再添加一个测试,也许是为了检查备胎的得分

    慢慢地构建它,直到您测试了所有案例。也许您需要一个方法来返回您正在播放的帧?最后,添加用户输入。每当用户转弯时,报告帧和分数

    我希望这有帮助

  2. # 2 楼答案

    你的逻辑很差。在一个if语句中,你打印出他们罢工,然后在下面的几个语句中,你检查是否罢工

    在适用的情况下,您应该合并这些声明

    例如:

            if (pinsDown1 == 10) {
                isStrike = true;
            }
    
     if(isStrike) {
                score += pinsDown1;
                score += pinsDown2;
                if(isStrike && pinsDown1 == 10) {
                    isTwoStrikes = true;
                }
                isStrike = false;
                System.out.println("The score is: " + score);
            }
    

    可以是单个if语句。您应该修改您的代码,因为这种情况有更多的实例,这使得阅读和理解非常困难。此外,您不需要使用任何函数,它们也可能有助于减少在整个代码中重复的次数