简单的保龄球计分程序
public class BowlingGame {
public static final int TOTAL_ROUND = 10; // 总局数
private int[] scores; // 记录每局得分的数组
private int[][] numberOfHits; // 记录每局两球击倒瓶子个数的数组
private int lastOneHit, lastTwoHit; // 最后两次击球
private int totalScore; // 总成绩
private int currentRound; // 当前第几局
private boolean firstHit; // 是否是每局的第一次击球
public BowlingGame() {
scores = new int[TOTAL_ROUND];
numberOfHits = new int[TOTAL_ROUND][2];
firstHit = true;
}
/**
* 扔出一颗球
* @param num 打倒瓶子的数量
*/
public void throwTheBall(int num) {
if(firstHit) { // 第一颗 球
numberOfHits[currentRound][0] = num;
if(num != 10) {
firstHit = false; // 第一颗球没有全中则要打第二颗
}
else {
currentRound += 1; // 第一颗球全中直接进入下一局
}
}
else {
numberOfHits[currentRound][1] = num;
currentRound += 1; // 打完第二颗球进入下一局
firstHit = true; // 准备投掷下一局的第一颗球
}
}
public void calcScore() {
// from round 1 to round 9
for(int i = 0; i < nu