问:咋样改动才能正确输出saleAmount?
class FindSalesAmount2
{
public static void main(String[] args)
{
double salesAmount=0;
System.out.println("Please enter commsion:");
double commsion=0;
commsion=MyInput.readDouble();
if(salesAmount>10000)
commsion=5000*0.08+5000*0.1+(salesAmount-10000)*0.12+5000;
if(salesAmount>5000)
commsion=5000*0.08+(salesAmount-5000)*0.1+5000;
else
commsion=(salesAmount-5000)*0.08+5000;
System.out.println("The salesamount is $"+salesAmount);
}
}
class FindSalesAmount2
{
public static void main(String[] args)
{
double salesAmount=0;
System.out.println("Please enter commsion:");
double commsion=0;
commsion=MyInput.readDouble();
if(salesAmount>10000)
commsion=5000*0.08+5000*0.1+(salesAmount-10000)*0.12+5000;
if(salesAmount>5000)
commsion=5000*0.08+(salesAmount-5000)*0.1+5000;
else
commsion=(salesAmount-5000)*0.08+5000;
System.out.println("The salesamount is $"+salesAmount);
}
}
salesAmount=MyInput.readDouble();
commsion=5000*0.08+5000*0.1+(salesAmount-10000)*0.12+5000;
System.out.println("The salesamount is $"+commsion); 或者
salesAmount=5000*0.08+5000*0.1+(commsion-10000)*0.12+5000;
class FindSalesAmount2
{
public static void main(String[] args)
{
double salesAmount=0;
System.out.println("Please enter commsion:");
double commsion=0;
commsion=MyInput.readDouble();
if(salesAmount> 10000)
commsion=5000*0.08+5000*0.1+(salesAmount-10000)*0.12+5000;
else if(salesAmount> 5000)
commsion=5000*0.08+(salesAmount-5000)*0.1+5000;
else
commsion=(salesAmount-5000)*0.08+5000;
System.out.println("The salesamount is $"+salesAmount);
}
}
salesAmount=5000*0.08+5000*0.1+(commsion-10000)*0.12+5000;
或者用牛顿迭代法来求
class FindSalesAmount2
{
public static void main(String[] args)
{
double salesAmount=0;
double commsion=0;
System.out.println("Please enter commsion:");
Scanner MyInput=new Scanner(System.in);
commsion=MyInput.nextDouble();
if(commsion>10000)
salesAmount=5000*0.08+5000*0.1+(commsion-10000)*0.12+5000;
if(commsion>5000|commsion<=10000)
salesAmount=5000*0.08+(commsion-5000)*0.1+5000;
else
salesAmount=(commsion-5000)*0.08+5000;
System.out.println("The salesamount is $"+salesAmount);
}
}是不是这样?上面的程序我编译过了,没问题。
你是不是想输入commsion然后判断commsion的值的范围,然后计算出salesAmount?
如果是这个意思的话,那上面的程序可能是你想要的。
谢谢你的答复,你的程序可以执行,但不是我想要的
我要的是输入commsion然后判断commsion的值,计算salesAmount....
原来的程序程序是下面的,执行速度慢,改动了下,有键盘的输出。 class FindSalesAmount
{
public static void main(String[] args)
{
double salesAmount=0;
double commsion;
final double SALESAMOUNT_SOUGHT=30000;
while(salesAmount<SALESAMOUNT_SOUGHT)
{ if(salesAmount>10000)
commsion=5000*0.08+5000*0.1+(salesAmount-10000)*0.12+5000;
if(salesAmount>5000)
commsion=5000*0.08+(salesAmount-5000)*0.1+5000;
else
commsion=(salesAmount-5000)*0.08+5000;
salesAmount++;
} System.out.println("The salesamount is $"+salesAmount);
}
}