I need to create a pseudocode for the follwing application:

Write Java-like pseudocode to specify the logic for the following program application:
Write an application that prompts an employee for an hourly pay rate and hours worked. Compute gross pay (hours times rate), withholding tax, and net pay (gross pay minus withholding tax). Withholding tax is computed as a percentage of gross pay based on the following:

Gross Pay ($)
Withholding (%)

0 to 300.00
10

300.01 to 400.00
12

400.01 to 500.00
15

500.01 and over
20

Here is what I have so far:
Import scanner library;
Class named NetPay
{
float array gross[] ={ 300,400,500,500.01};
float array withholding[]={.10,.12,.15,20};
static double npay(double hrs, double rate;
int hours;
int payRate;
double taxRate;
int gross;

public method named NetPay()
{
int gross times taxRate= float net;
}
public method named HoursWorked()
{
new scanner object asking user to enter hours worked;
stores data in int hours;

Does this look correct so far? I just need to create a Java pseudocode for this application. Any suggestions or feedback?

Sure, here's one way to write the pseudocode for the given program application:

1. Import the Scanner library.

2. Define a class called NetPay.

3. Declare and initialize two arrays: 'gross' for storing the gross pay brackets and 'withholding' for storing the corresponding withholding tax percentages.

4. Declare the following variables: 'hours' for storing the hours worked, 'rate' for storing the hourly pay rate, 'grossPay' for storing the calculated gross pay, 'withholdingTax' for storing the calculated withholding tax, and 'netPay' for storing the calculated net pay.

5. Define a constructor method called NetPay, which takes no parameters. Inside the constructor, initialize the variables 'hours' and 'rate' to 0.

6. Define a method called setHours, which prompts the user to enter the hours worked and store the input in the 'hours' variable.

7. Define a method called setRate, which prompts the user to enter the hourly pay rate and store the input in the 'rate' variable.

8. Define a method called calculateGrossPay, which calculates the gross pay by multiplying 'hours' and 'rate' and stores the result in the 'grossPay' variable.

9. Define a method called calculateWithholdingTax, which calculates the withholding tax based on the gross pay. Use a loop to compare the 'grossPay' value with the values in the 'gross' array until the correct bracket is found. Multiply the 'grossPay' by the corresponding percentage in the 'withholding' array and store the result in the 'withholdingTax' variable.

10. Define a method called calculateNetPay, which subtracts the 'withholdingTax' from the 'grossPay' and stores the result in the 'netPay' variable.

11. Define a method called displayPay, which prints the calculated 'grossPay', 'withholdingTax', and 'netPay' to the console.

12. Create an instance of the NetPay class.

13. Call the setHours method to prompt the user to enter the hours worked.

14. Call the setRate method to prompt the user to enter the hourly pay rate.

15. Call the calculateGrossPay method to calculate the gross pay.

16. Call the calculateWithholdingTax method to calculate the withholding tax.

17. Call the calculateNetPay method to calculate the net pay.

18. Call the displayPay method to display the calculated pay values.

(Note: This pseudocode closely follows the described logic. You may need to make adjustments in the syntax and specifics when converting it to Java code.)

Here is a revised version of your pseudocode:

```
Import scanner library;

Class NetPay {
float array gross[] = {300, 400, 500, 500.01};
float array withholding[] = {0.10, 0.12, 0.15, 0.20};

static double calculateNetPay(double hours, double rate) {
double grossPay = hours times rate; // Calculate gross pay (hours times rate)
double withholdingTax = calculateWithholdingTax(grossPay); // Calculate withholding tax based on gross pay
double netPay = grossPay - withholdingTax; // Calculate net pay (gross pay minus withholding tax)
return netPay;
}

static double calculateWithholdingTax(double grossPay) {
if (grossPay <= 300.00) {
return grossPay times withholding[0];
}
else if (grossPay <= 400.00) {
return grossPay times withholding[1];
}
else if (grossPay <= 500.00) {
return grossPay times withholding[2];
}
else {
return grossPay times withholding[3];
}
}

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

System.out.print("Enter hourly pay rate: ");
double payRate = scanner.nextDouble();

System.out.print("Enter hours worked: ");
double hours = scanner.nextDouble();

double netPay = calculateNetPay(hours, payRate);
System.out.println("Net Pay: $" + netPay);
}
}
```

This pseudocode is closer to Java syntax and includes the necessary logic for calculating gross pay, withholding tax, and net pay. It also includes the main method to prompt the user for input and display the net pay result.

Here's an updated version of the Java-like pseudocode for the given application:

```
// Import the Scanner library
Import scanner library;

// Define a class named NetPay
Class named NetPay {
// Define arrays to store gross pay and withholding tax values
float array gross[] ={ 300,400,500,500.01};
float array withholding[]={.10,.12,.15,20};

// Define variables to store user input and computed values
double hrs;
double rate;
int hours;
int payRate;
double taxRate;
int gross;

// Define a method named calculateNetPay
public method named calculateNetPay() {
// Prompt the user to enter the hourly pay rate and hours worked
Print "Enter hourly pay rate: ";
Read rate;
Print "Enter hours worked: ";
Read hours;

// Compute gross pay
gross = hours times rate;

// Determine the withholding tax rate based on the gross pay
if (gross <= 300.00) {
taxRate = 0.10;
} else if (gross <= 400.00) {
taxRate = 0.12;
} else if (gross <= 500.00) {
taxRate = 0.15;
} else {
taxRate = 0.20;
}

// Compute withholding tax
double withholdingTax = gross times taxRate;

// Compute net pay
double netPay = gross minus withholdingTax;

// Output the computed values
Print "Gross Pay: " + gross;
Print "Withholding Tax: " + withholdingTax;
Print "Net Pay: " + netPay;
}
}

// Create an instance of the NetPay class
NetPay netPayInstance = new NetPay();

// Call the calculateNetPay method to perform the calculations
netPayInstance.calculateNetPay();
```

This pseudocode reflects your requirement to prompt the user for hourly pay rate and hours worked, compute gross pay, withholding tax, and net pay based on the given withholding tax brackets. Let me know if you have any further questions or need additional clarification!