0

我一直在为家庭作业编写代码,我们必须在其中创建一个代码,询问将参加饮食比赛的人数。该程序应该首先告诉我谁吃得最多,吃了多少。我的代码几乎完成了,基本上我只有打印吃得最多的参与者姓名的部分。但是,我仍然在代码的另一部分苦苦挣扎,出现的错误消息是 Java 错误 21 找不到符号。我确实检查了所有括号都在那里,代码在类内和主类之外,但我仍然无法让它工作。这是到目前为止的样子

import java.io.*;


class TareaProgramaTelevisionV1{



    public static void main(String[] args)throws java.io.IOException{

        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        PrintStream out = System.out;

        String nombre;
        int numMayor;
        int k;

        out.println("Digite el numero de participantes (-1 para finalizar) ");
        k=Integer.parseInt(in.readLine());


        numMayor = ganadorDelConcurso(comida1, comida2, comida3);
        out.println(numMayor);

        while(k!=-1){

        out.print("Digite el nombre del participante");
        nombre = in.readLine();
        for (int contComida=0; contComida<3; contComida++){


        int comida1;
        int comida2;
        int comida3;

        out.println("Cuanto consumió en el primer bocado?");
        comida1=Integer.parseInt(in.readLine());

        out.println("Cuanto consumió en el segundo bocado?");
        comida2=Integer.parseInt(in.readLine());

        out.println("Cuanto consumió en el tercer bocado?");
        comida3=Integer.parseInt(in.readLine());


                    }

                }   

            }
        static int ganadorDelConcurso(int pcomida1, int pcomida2, int pcomida3){

            int numMayor=0;
            int comidaTragada;

            comidaTragada= pcomida1 + pcomida2 + pcomida3;

        if (comidaTragada>numMayor){

            numMayor= numMayor + comidaTragada;
            return numMayor;
        }
    } 
}

变量是西班牙语,因为这应该是打印信息的方式。变量 numMayor 将返回这个人总共吃了多少,pcomida1,2 和 3 是这个人在 3 次尝试中吃了多少,最后我先用了一段时间,这样我就可以为尽可能多的人做只要用户不输入-1,就需要它。对此的任何帮助都非常感谢。

4

1 回答 1

0

编译器告诉您第 21 行缺少符号。这是对comida1(以及该行上的其他变量)的引用。您不能在声明变量之前引用它(您在第 31 到 33 行的 while/for 循环中执行此操作。您需要向上移动变量声明,或者声明并使用不同的变量。

于 2013-07-09T05:00:01.880 回答