-2
该程序应显示计算总计的一系列分数(由用户确定)。它不会让我在程序中输入分数,只是它所表示的分数通常无效。While循环并显示条形码作为输出
import java.util.*;
public class Fractions
{
public static void main(String[] arg)
{
//------------------ declare ints and constants ----
Scanner stdIn = new Scanner(System.in);
int fractions = 0,
count = 1,
fractionAdd = 0;
double enteredFraction = 0;
boolean inValid = false;
//------------------- welcome msg -----------------------
System.out.println("\n * * * Welcome to Fractions * * *\n");
//--------------------- get input ----------------------
System.out.print("Enter the number of fractions: ");
fractions = stdIn.nextInt();
if (fractions < 2 && fractions > 10)
inValid = true;
else
inValid = true;
while (inValid)
{
System.out.print(
fractions + " is invalid, please re-enter ractions (2-10): "
);
fractions = stdIn.nextInt();
if (fractions < 2 && fractions > 10)
inValid = true;
else
inValid = false;
}
while (count < fractions)
{
System.out.println(fractions + "+");
fractions += count;
while (fractions < count)
{
System.out.print(enteredFraction + " +");
fractions ++;
}
if(enteredFraction <= fractions)
System.out.println("Error, please re-enter number of fractions (2-10)");
}
//--------------------- end msg ---------------------------
System.out.println("\nThanks for using the Fraction Adder program");
} //end main
}//end program
你可以分享你的输出,并添加究竟是什么问题的细节。 –
你写了'else inValid = true;'但是你肯定是想在那里放假。另外,inValid为false是双重否定的...你应该重命名为“有效” –