Pig代码遇到错误

时间:2014-11-13 14:55:30

标签: java

我的变量名称在底部附近非常愚蠢,但这不是重点。第110行说我正在做一个没有if的else语句,我几乎可以确定if是否存在。请以任何方式帮助您。

谢谢

import java.util.*;

public class hw7
{
    public static void main(String[] args)
    {
            int turnScores = 0;
            int totalScores = 0;
            int turnScores2 = 0;
            int totalScores2 = 0;
            int dice;
            int dice2;
            String input = "r";
            char repeat;
            boolean peppers;
            peppers = true;

            Scanner keyboard = new Scanner(System.in);

            Random randomNumbers = new Random();

            System.out.println("Welcome to the game of Pig!\n");

            while(totalScores < 20 || totalScores2 < 20)
            {
              do
              {
                  dice = randomNumbers.nextInt(6) + 1;

                  System.out.println("You rolled: " + dice);

                  if(dice == 1)
                  {
                      turnScores = 0;
                      System.out.print("Your lose your turn!");
                      System.out.println("Your Total is " + totalScores);
                      break;
                  }
                  else
                  {         
                     turnScores += dice;
                     System.out.print("Your turn score is " + turnScores);
                     System.out.println(" and your total scores is " + totalScores);
                     System.out.println("If you hold, you will have " + turnScores 
                                       + " points.");
                     System.out.println("Enter 'r' to roll again, 'h' to hold.");
                     input = keyboard.nextLine();
                     repeat = input.charAt(0);

                     if(repeat == 'h')
                     {
                        break;
                     }
                  }
              }
              while(input.equalsIgnoreCase("r") || dice != 1);               

                 totalScores += turnScores;
                 peppers = peppers(turnScores, turnScores2);
                 System.out.println("Your scores is " + totalScores);
                 turnScores = 0;

              System.out.println();
              System.out.println("It is the computer's turn.");

              do
              {
                  dice2 = randomNumbers.nextInt(6) + 1; 
                  System.out.println("The computer rolled: " + dice2);

                  if(dice2 == 1)
                  {
                      turnScores2 = 0;
                      System.out.print("The computer lost its turn!");
                      System.out.println(" Computer total is " + totalScores2);
                      break;             
                  }
                  else
                  {
                      turnScores2 += dice2;
                      if(turnScores2 >= 20 || (totalScores2 + turnScores2) >= 20 )
                      {
                          System.out.println("The computer holds");
                          break;      
                      }
                  }
               }

              while(dice2 != 1 || turnScores2 < 20);
              totalScores2 += turnScores2;
              System.out.println("The computer's scores is " + totalScores2 + "\n");
              turnScores2 = 0;
            }
    }



public static boolean peppers(int chili, int ghost)
    {
        boolean done;
        done = true;


        if(chili >= 20);
        {
            done = false;
            System.out.println(" YOU WIN!!!");
            return done;
        }
        else (ghost >= 20);
        {
            done = false;
            System.out.println(" COMPUTER WINS");
            return done;
        }
        /*else 
        {
            return done;
        }
            */
    }


}

3 个答案:

答案 0 :(得分:0)

尝试删除if(chili >= 20);else (ghost >= 20);中的分号。

答案 1 :(得分:0)

public static boolean peppers(int chili, int ghost)
{
    boolean done;
    done = true;
    if(chili >= 20)
    {
        done = false;
        System.out.println(" YOU WIN!!!");
    }
    else if (ghost >= 20)
    {
        System.out.println(" COMPUTER WINS");

    }
    return done;
}

答案 2 :(得分:0)

替换

else (ghost >= 20);

else if (ghost >= 20)

并删除if语句后的分号。