In: Computer Science
IN BASIC. all answers are in C++ , java but i need it in BASIC PLEASE.
Write a program where the main part of the program collects the data such as employee hours, hourly rate, state of residence, and marital status.
It then calls the function Calculatewages() function and sends employee hours and hourly rate.
The Calculatewages () function would calculate the wages and sends it back to the main.
The main program would use the wages returned by Calcualewages() function and send it another function called CalcualteFederaltax() along with marital status. The CalcualteFederaltax() function would calculate the federal tax based on marital status and send the fedtax amount back to the main.
Then the main function would call another function called calculatestatetax() and send the wage and state of residence info to that function. Calculatestatetax() function would calculate the state tax based on the state of residence and send stat tax back to the main.
The main then would call the function calcualtenet() function and send wage, fedtax, and statetax returned by the above functions.
The calculate function would calculate the net wages, and display all information such as wage before tax, taxes, and wage after taxes.
You can write your program based on the following program skeleton
‘main part of the program. Collect hoursworked, hourlyrate, stateofresidence, maritalstatus from the user. Call calculatewages() and send hoursworked, and hourlyrate. The caclulatewages() function returns wages. Call calculatefedtax() function and send marital status and wage returned by calculatewages() function. This function returns fedtax. Call calculatestatetax() function and send wage, stateofresidence. This function sends back statetax. Call calculatenet() function and send, wage, fedtax, statetex. Note that fedtax was returned by calculatefedtax() function and statetax was returned by calculatestatetax() function. End |
Function calculatewages() receives hours worked and hourly rate from the main. Calculate the wages and sends it back to the main. End function |
Function CalcualteFederaltax () receives wages, and maritalstatus from the main. Calculate the fed tax based on the marital satus. Calculate the fed tax at 20% for “Married” and at 25% for “Single”. For others calculate it at 22% End function |
Function calculatestatetax () receives wages and state of residence from the main. Calculate the statetax sends it back to the main. Statetax is calculated based on the following criteria. For those who are from “CA”, “NV”, “SD”, “WA”, “AZ”, calculate the state tax at 8% For those who are from “TX”, “IL”, “MO”, “OH”, “VA”, calculate the state tax at 7% For those who are from “NM”, “OR”, “IN”, calculate the state tax at 6% For the rest calculate the state tax at 5% Send back the state tax to the main. End function |
Function calcualtenet () receives wages, fedtax, statetax from the main. Calculate the netwages. Display the wages, fedtax, statetax, netwages. End function |
IN JAVA
import java.util.Scanner;
/**
* @author
*
*/
public class CalculateTaxes {
/**
* @param args
*/
public static void main(String[] args) {
Scanner scanner = null;
try {
scanner = new
Scanner(System.in);
double
hourlyrate;
int
hoursworked;
String
stateofresidence, maritalstatus;
double wages,
fedtax, statetax;
System.out
.println("Enter hoursworked,
hourlyrate, stateofresidence and maritalstatus:");
hoursworked =
scanner.nextInt();
hourlyrate =
scanner.nextDouble();
stateofresidence
= scanner.next();
maritalstatus =
scanner.next();
wages =
calculateWages(hourlyrate, hoursworked);
fedtax =
calcualteFederaltax(maritalstatus, wages);
statetax =
calculateStateTax(stateofresidence, wages);
calcualtenet(wages, fedtax, statetax);
} catch (Exception e) {
// TODO: handle
exception
}
}
/**
* method to calculate the netpay and display the
result
*
* @param receives
* @param wages
* @param fedtax
* @param statetax
*
*/
public static void calcualtenet(double wages, double
fedtax, double statetax) {
double netwages = wages - fedtax - statetax;
System.out.println("\tWages: " +
wages + ",\t Fedtax : " + fedtax
+ ", \t Statetax : " + statetax + " \t, Netwages
: " + netwages
+ ". \n");
}
/**
* methood to Calculate the statetax
*
* @param stateofresidence
* @param wages
* @return
*/
public static double calculateStateTax(String
stateofresidence, double wages) {
double stateTax = 0.0;
// those who are from “CA”,
“NV”, “SD”, “WA”, “AZ”, calculate the state
// tax at 8%
if
(stateofresidence.equalsIgnoreCase("CA")
|| stateofresidence.equalsIgnoreCase("NV")
|| stateofresidence.equalsIgnoreCase("SD")
|| stateofresidence.equalsIgnoreCase("WA")
|| stateofresidence.equalsIgnoreCase("AZ"))
{
stateTax = wages
* 0.08;
// those who
are from “TX”, “IL”, “MO”, “OH”, “VA”, calculate the
// state tax at
7%
} else if
(stateofresidence.equalsIgnoreCase("TX")
|| stateofresidence.equalsIgnoreCase("IL")
|| stateofresidence.equalsIgnoreCase("MO")
|| stateofresidence.equalsIgnoreCase("OH")
|| stateofresidence.equalsIgnoreCase("VA"))
{
stateTax = wages
* 0.07;
// those who are
from “NM”, “OR”, “IN”, calculate the state tax at
// 6%
} else if
(stateofresidence.equalsIgnoreCase("NM")
|| stateofresidence.equalsIgnoreCase("OR")
|| stateofresidence.equalsIgnoreCase("IN"))
{
stateTax = wages
* 0.06;
} else {
stateTax = wages
* 0.05;
}
return stateTax;
}
/**
* method to Calculate the fed tax based on the marital
satus
*
* @param maritalstatus
* @param wages
* @return
*/
public static double calcualteFederaltax(String
maritalstatus, double wages) {
double fedTax = 0.0d;
if
(maritalstatus.equalsIgnoreCase("Married")) {
fedTax = wages *
0.20;
} else if
(maritalstatus.equalsIgnoreCase("Singel")) {
fedTax = wages *
0.25;
} else {
fedTax = wages *
0.22;
}
return fedTax;
}
/**
* method to Calculate the wages
*
* @param hourlyrate
* @param hoursworked
* @return
*/
public static double calculateWages(double hourlyrate,
int hoursworked) {
return hourlyrate *
hoursworked;
}
}
OUTPUT:
Enter hoursworked, hourlyrate, stateofresidence and
maritalstatus:
5
60
CA
Single
Wages: 300.0, Fedtax : 66.0,
Statetax : 24.0 , Netwages : 210.0.