HW2.11


控制台:
import java.util.Scanner;
public class Solution
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.print("Enter employee's name: ");
String name = input.nextLine();
System.out.print("Enter number of hours worked in a week: ");
int hoursWorked = input.nextInt();
System.out.print("Enter hourly pay rate: ");
double hourlyPayRate = input.nextDouble();
System.out.print("Enter federal tax withholding rate: ");
double federalTax = input.nextDouble();
System.out.print("Enter state tax withholding rate: ");
double stateTax = input.nextDouble();
input.close();
double grossPay = hoursWorked * hourlyPayRate;
double federalTaxPay = grossPay * federalTax;
double stateTaxPay = grossPay * stateTax;
double totalDeduction = federalTaxPay + stateTaxPay;
double netPay = grossPay - totalDeduction;
System.out.println("Employee Name: " + name);
System.out.println("Hours Worked: " + hoursWorked);
System.out.println("Pay Rate: " + "$" + hourlyPayRate);
System.out.println("Gross Pay: " + "$" + grossPay);
System.out.println("Deductions: " + "\n" +
"\t" + "Federal Withholding (" + federalTax + "): " + "$" + federalTaxPay +
"\t" + "State Withholding(" + stateTax + "): " + "$" + stateTaxPay +
"\t" + "Total Deduction: " + "$" + totalDeduction);
System.out.println("Net Pay: " + "$" + netPay);
}
}
对话框:
import javax.swing.JOptionPane;
public class Solution
{
public static void main(String[] args)
{
String name = JOptionPane.showInputDialog(null, "Enter employee's name: ",
"Employee Name", JOptionPane.QUESTION_MESSAGE);
String hoursWorkedString = JOptionPane.showInputDialog(null, "Enter number of hours worked in a week: ",
"Work Hour", JOptionPane.QUESTION_MESSAGE);
int hoursWorked = Integer.parseInt(hoursWorkedString);
String hourlyPayRateString = JOptionPane.showInputDialog(null, "Enter hourly pay rate: ",
"Hourly Pay Rate", JOptionPane.QUESTION_MESSAGE);
double hourlyPayRate = Double.parseDouble(hourlyPayRateString);
String federalTaxString = JOptionPane.showInputDialog(null, "Enter federal tax withholding rate: ",
"Federal Tax", JOptionPane.QUESTION_MESSAGE);
double federalTax = Double.parseDouble(federalTaxString);
String stateTaxString = JOptionPane.showInputDialog(null, "Enter state tax withholding rate: ",
"State Tax", JOptionPane.QUESTION_MESSAGE);
double stateTax = Double.parseDouble(stateTaxString);
double grossPay = hoursWorked * hourlyPayRate;
double federalTaxPay = grossPay * federalTax;
double stateTaxPay = grossPay * stateTax;
double totalDeduction = federalTaxPay + stateTaxPay;
double netPay = grossPay - totalDeduction;
String output = "Employee Name: " + name + "\n" +
"Hours Worked: " + hoursWorked + "\n" +
"Pay Rate: " + "$" + hourlyPayRate + "\n" +
"Gross Pay: " + "$" + grossPay + "\n" +
"Deductions: " + "\n" +
"\t" + "Federal Withholding (" + federalTax + "): " + "$" + federalTaxPay + "\n" +
"\t" + "State Withholding(" + stateTax + "): " + "$" + stateTaxPay + "\n" +
"\t" + "Total Deduction: " + "$" + totalDeduction + "\n" +
"Net Pay: " + "$" + netPay;
JOptionPane.showMessageDialog(null, output);
}
}
HW2.11的更多相关文章
- 地区sql
/*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : lo ...
- WinForm 天猫2013双11自动抢红包【源码下载】
1. 正确获取红包流程 2. 软件介绍 2.1 效果图: 2.2 功能介绍 2.2.1 账号登录 页面开始时,会载入这个网站:https://login.taobao.com/member/login ...
- C++11特性——变量部分(using类型别名、constexpr常量表达式、auto类型推断、nullptr空指针等)
#include <iostream> using namespace std; int main() { using cullptr = const unsigned long long ...
- CSS垂直居中的11种实现方式
今天是邓呆呆球衣退役的日子,在这个颇具纪念意义的日子里我写下自己的第一篇博客,还望前辈们多多提携,多多指教! 接下来,就进入正文,来说说关于垂直居中的事.(以下这11种垂直居中的实现方式均为笔者在日常 ...
- C++ 11 多线程--线程管理
说到多线程编程,那么就不得不提并行和并发,多线程是实现并发(并行)的一种手段.并行是指两个或多个独立的操作同时进行.注意这里是同时进行,区别于并发,在一个时间段内执行多个操作.在单核时代,多个线程是并 ...
- CSharpGL(11)用C#直接编写GLSL程序
CSharpGL(11)用C#直接编写GLSL程序 +BIT祝威+悄悄在此留下版了个权的信息说: 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharp ...
- ABP(现代ASP.NET样板开发框架)系列之11、ABP领域层——仓储(Repositories)
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之11.ABP领域层——仓储(Repositories) ABP是“ASP.NET Boilerplate Proj ...
- C++11 shared_ptr 智能指针 的使用,避免内存泄露
多线程程序经常会遇到在某个线程A创建了一个对象,这个对象需要在线程B使用, 在没有shared_ptr时,因为线程A,B结束时间不确定,即在A或B线程先释放这个对象都有可能造成另一个线程崩溃, 所以为 ...
- C++11网络编程
Handy是一个简洁优雅的C++11网络库,适用于linux与Mac平台.十行代码即可完成一个完整的网络服务器. 下面是echo服务器的代码: #include <handy/handy.h&g ...
随机推荐
- CRF图像语义分割
看了Ladicky的文章Associative Hierarchical CRFs for Object Class Image Segmentation,下载他主页的代码,文章是清楚了,但代码的RE ...
- Vijos p1002 过河 离散化距离+区间DP
链接:https://vijos.org/p/1002 题意:一条长度为L(L <= 1e9)的桥上有N(1<= N <= 100)颗石头.桥的起点为0终点为L.一只青蛙从0开始跳, ...
- Sybase数据库异常紧急恢复
现象:Error 926 Severity Level 14 Error Message Text Database 'xx' cannot be opened - it has been ma ...
- 【JSF框架】 是一种标准
典型的JSF应用程序包含下列部分: 一组JSP页面 一组后台bean(为在一个页面上的UI组件定义的属性和函数的JavaBean组件) 应用程序配置资源文件(定义页面导航规则.配置bean和其它的自定 ...
- MVC-处理时间格式
第一种方法:先设置一个时间显示的模板,然后在需要显示时间的地方调用这个模板就行了. 1.在Share文件夹下,创建一个文件夹DisplayTemplates 2.在DisplayTemplates文件 ...
- 【Selenium】自动化调试后C盘越来越大
在本机调试了一段时间自动化脚本后发现C盘占用越来越大,增长速度比较明显 通过360等工具清理系统垃圾表明并不好使 最后在系统临时文件中看到大量因为调试或不正常结束而Driver而产生的临时文件 具体方 ...
- vs git .ignore
## Ignore Visual Studio temporary files, build results, and## files generated by popular Visual Stud ...
- 一些常用的jQuery插件
1. X-editable 这个插件能够让你在页面上创建可编辑的元素.它能够使用任何引擎(bootstrap.jquery-ui.jquery),并且包含弹出式和内联模式. 2. Garlic.js ...
- mac终端命令简介
mac终端命令简介(适合刚刚入手mac的新人们) 1.取得root权限 意义相当与windows中的超级管理员权限,甚至还要超出.root权限可以修改系统中的任何文件,不过对普通用户的意义不大,了解即 ...
- Android笔记5-与USB HID 设备通信(一)
1.了解 支持USB 主机(host)或者从机(accessary )模式最终是取决于设备的硬件,而与平台版本无关.我们可以通过usesfeature这个方法来查询自己的设备是否支持USB主从. ...