- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须创建一个工资/奖金计算器。
根据输入的薪水,奖金会更高或更低/例如。 20000以下为7%,20000以上为5.5%。
最后我必须显示奖金总额以及带有奖金的工资总额。程序完成后,我在计算总数时遇到了麻烦。
这是我的代码。
class Salaries
{
public static void main(String agrs[])
{
int salary; // this takes in each salary
double salaryTotal = 0; // this adds the bonus to to salary
double bonus = 0; // this hold the bonus amount.
double sumSalary=0;
double sumBonus=0;
String exit = "y";// This is the string to be entered to exit the loop.
// below I'm using a do/while loop to keep it going till a key that isn't "y is entered"
do
{
// the try/catch makes sure that only a number is entered.
try{
// below prompts the user to enter the salary amount
System.out.println("Enter an Employes wages.");
// below takes in the salary
salary = EasyIn.getInt();
// if else ensure that the salary is not below 0
// and to determine if the amount of bonus to be added.
if (salary <=-1)
{
System.out.println("The salary can not be less than 0");
}
else if (salary >0 && salary <=20000)
{
bonus = salary*7/100; // This takes the entered salary and calculates the bonus.
salaryTotal = salary + bonus;
System.out.println("The bonus paid is " + bonus);
System.out.println("********************");
System.out.println("The total salary + bonus is " + salaryTotal);
System.out.println("********************");
System.out.println("Enter y to enter another Employes wages. ");
System.out.println("Press any other letter to exit.");
System.out.println("********************");
System.out.println();
exit = EasyIn.getString();
}
else if (salary >20000 && salary <=30000)
{
bonus = salary*5.5/100; // This takes the entered salary and calculates the bonus.
salaryTotal = salary + bonus;
System.out.println("The bonus paid is " + bonus);
System.out.println("********************");
System.out.println("The total salary + bonus is " + salaryTotal);
System.out.println("********************");
System.out.println("Enter y to enter another Employes wages. ");
System.out.println("Press any other letter to exit.");
System.out.println("********************");
System.out.println();
exit = EasyIn.getString();
}
else if (salary >30000 && salary <=40000)
{
bonus = salary*4/100;
salaryTotal = salary + bonus; // This takes the entered salary and calculates the bonus.
System.out.println("The bonus paid is " + bonus);
System.out.println("********************");
System.out.println("The total salary + bonus is " + salaryTotal);
System.out.println("********************");
System.out.println("Enter y to enter another Employes wages. ");
System.out.println("Press any other letter to exit.");
System.out.println("********************");
System.out.println();
exit = EasyIn.getString();
}
else if (salary >40000)
{
bonus = salary*3.5/100;
salaryTotal = salary + bonus; // This takes the entered salary and calculates the bonus.
System.out.println("The bonus paid is " + bonus);
System.out.println("********************");
System.out.println("The total salary + bonus is " + salaryTotal);
System.out.println("********************");
System.out.println("Enter y to enter another Employes wages. ");
System.out.println("Press any other letter to exit.");
System.out.println("********************");
System.out.println();
exit = EasyIn.getString();
}
}
catch(Exception e)
{
System.out.println("ERROR!!!! Please enter a number.");
}
}
while(exit.equals("y"));
System.out.println("The total amout of bonus is " + sumBonus );
System.out.println("The total of all the salaries is " + sumSalary);
}
}
最佳答案
将其设为双倍。 int 和 double 之间的除法可能会得到一个整数。
int salary; // this takes in each salary
了解更多信息:http://www.cs.umd.edu/~clin/MoreJava/Intro/expr-int-div.html
此外,这样进行奖金计算会更有效:
bonus = salary * 0.055;
我也没有看到您在哪里将这一行的值从 Bonus 移至 sumBonus:
System.out.println("The total amout of bonus is " + sumBonus );
也许将 sumBonus 更改为奖金,不要忘记删除声明。
关于java - 创建工资/奖金计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20305509/
我正在尝试编写一个 Node.js 程序来执行和监控 javascript 程序。我正在寻找一种方法来查明受监视的程序是否仍在“运行”,即做任何有用的事情。 在我目前的方法中,当收到要测试的代码时,我
我有一个 100 GB 的文本文件,它是来自数据库的 BCP 转储。当我尝试使用 BULK INSERT 导入它时,我在第 219506324 行遇到了一个神秘错误。在解决这个问题之前,我希望看到这一
我见过许多各种语言的所谓“反向地理编码”库;所有这些都取决于通过 REST 或某种类似方法调用外部提供者。但是,如果您必须每秒处理数千个请求,则不能调用 REST 提供程序。 另一方面,问题应该很容易
我有两个问题(按顺序排列)? 我正在重构两组代码。每个都有一个加载。 两者都会在网站上自行运行,但我不希望它们覆盖彼此的加载。 所以我有等价的: window.onload=function(){ a
我需要将实时 h.264 编码视频从 IP 摄像机流式传输到浏览器,同时支持所有常见的浏览器和移动设备(即 Android、Firefox、Chrome、IE、Safari(Mac OS 和 iOS)
我是一名优秀的程序员,十分优秀!