【发布时间】:2013-07-06 14:03:17
【问题描述】:
我一直在为一项家庭作业编写代码,我们必须在其中创建一个代码,询问将参加饮食比赛的人数。该程序应该首先告诉我谁吃得最多,吃了多少。我的代码几乎完成了,基本上我只有打印吃得最多的参与者姓名的部分。但是,我仍然在代码的另一部分苦苦挣扎,出现的错误消息是 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,就需要它。对此的任何帮助都非常感谢。
【问题讨论】:
-
在你的函数
ganadorDelConcurso()如果comidaTragada<= numMayor我看不到回报?另外,请发布完整的错误堆栈跟踪。 -
我应该为“if(comidaTragada....”创建另一个例程吗?问题是我认为我可以进行“if”评估,然后立即要求返回。
-
这是我得到的错误。我无法将其全部复制,因此我将其拆分为两个 C:\Users\Carlos\Documents\Ejemplos Programacion\Diagramas de Flujo y Java\TareaProgramaTelevisionV1.java:21: error: cannot find symbol numMayor = ganadorDelConcurso(comida1, comida2, comida3 ); ^ 符号:变量 comida3 位置:类 TareaProgramaTelevisionV1 3 个错误
标签: java location find symbols