프로그램은 기본적으로 사용자에게 BMR 및 성별을 입력하도록 요청합니다. 그런 다음 활동 레벨을 선택하도록 요청합니다 (잘못된 질문을 선택하면 "올바른 선택 사항을 입력하십시오"). 암컷과 수컷은 다른 활동 인자를 가지고 있습니다. "Variable ActivityFactor를 초기화해야합니다."라는 오류가 발생했습니다. 코드를 수정하려면 어떻게해야합니까? 감사합니다변수 초기화
iBMR = new Scanner(System.in);
Scanner iGender = new Scanner(System.in);
Scanner iActivity = new Scanner(System.in);
String AcFactor;
double ActivityFactor ;
double TDEE;
//User Input
System.out.println("Please enter your name: ");
String inName = iName.next();
System.out.println("Please enter your BMR: ");
String inBMR = iBMR.next();
double nBMR = Double.parseDouble(inBMR);
System.out.println("Please enter your Gender");
String inGender = iGender.next();
System.out.println("Select Your Activity Level");
System.out.println("[A] Resting (Sleeping,Reclining)");
System.out.println("[B] Sedentary (Minimal Movement)");
System.out.println("[C] Light (Sitting, Standing)");
System.out.println("[D] Moderate (Light Manual Labor, Dancing, Riding Bike)");
System.out.println("[E] Very Active (Team Sports, Hard Manual Labor)");
System.out.println("[F] Extremely Active (Full-time Athlete, Heavy Manual Labor)");
System.out.println("Enter the letter corrresponding to your activity level: ");
String inActivity = iActivity.next();
//CalculationFemale
if(inActivity.equalsIgnoreCase("A")&& inGender.equalsIgnoreCase("F"))
{
ActivityFactor = 1.0;
}
else if(inActivity.equalsIgnoreCase("B")&& inGender.equalsIgnoreCase("F"))
{
ActivityFactor = 1.3;
}
else if(inActivity.equalsIgnoreCase("C")&& inGender.equalsIgnoreCase("F"))
{
ActivityFactor = 1.5;
}
else if(inActivity.equalsIgnoreCase("D")) && (inGender.equalsIgnoreCase("F"))
{
ActivityFactor = 1.6;
}
else if(inActivity.equalsIgnoreCase("E")&& inGender.equalsIgnoreCase("F"))
{
ActivityFactor = 1.9;
}
else if(inActivity.equalsIgnoreCase("F")&& inGender.equalsIgnoreCase("F"))
{
ActivityFactor = 2.2;
}
else
{
System.out.println("Please enter a valid choice!");
}
//CalculationMale
if(inActivity.equalsIgnoreCase("A")&& inGender.equalsIgnoreCase("M"))
{
ActivityFactor = 1.0;
}
else if(inActivity.equalsIgnoreCase("B")&& inGender.equalsIgnoreCase("M"))
{
ActivityFactor = 1.3;
}
else if(inActivity.equalsIgnoreCase("C")&& inGender.equalsIgnoreCase("M"))
{
ActivityFactor = 1.6;
}
else if(inActivity.equalsIgnoreCase("D")&& inGender.equalsIgnoreCase("M"))
{
ActivityFactor = 1.7;
}
else if(inActivity.equalsIgnoreCase("E")&& inGender.equalsIgnoreCase("M"))
{
ActivityFactor = 2.1;
}
else if(inActivity.equalsIgnoreCase("F")&& inGender.equalsIgnoreCase("M"))
{
ActivityFactor = 2.4;
}
else
{
System.out.println("Please enter a valid choice!");
}
//TDEE
double TD(ActivityFactor * BMR);
** 모든 답변을 주셔서 감사합니다. 나는 if/if else 조건이 모두 통과하지 않으면 "else"가 ActivityFactor에 대한 값을 가지지 않을 것임을 알고 있습니다. 모든 답장 덕분에, 나는 이것을 추구하는 나의 방법이 효과가 없다는 것을 깨닫습니다. 누군가가 나에게 사용자 이름/성/bmr을 묻는 그런 프로그램을 코딩 할 수있는 방법에 대한 개요를 제공 한 다음 사용자가 남성인지 여성인지 여부 및 활동 수준에 따라 활동 수준을 선택하도록 요청할 수 있습니까? ? 활동 수준의 감사