CS 1063, Fall 2005
|
The lectures for Week 10 has you work on a simple table of commission rates for different levels of sales. (The assumption here is that "Up to $10,000" does not include $10,000 exactly.)
| Sales | Commission Rate |
|---|---|
| Up to $10,000 | 10% |
| 10,000 to 15,000 | 15% |
| Over 15,000 | 20% |
Here are classes Commission and CommissionTest:
| File: Commission.java | File: CommissionTest.java |
|---|---|
public class Commission {
// Just use default constructor
public double CR1(int sales) {
double rate;
if (sales < 10000) rate = 0.10;
else if (sales <= 15000) rate = 0.15;
else rate = 0.20;
return rate;
}
public double CR2(int sales) {
double rate = .20;
if (sales <= 15000) rate = 0.15;
// must not have "else" below
if (sales < 10000) rate = 0.10;
return rate;
}
public double CR3(int sales) {
double rate;
if (sales < 10000) rate = 0.10;
else if (sales >= 10000 &&
sales <= 15000) rate = 0.15;
else if (sales > 15000) rate = 0.20;
// must have following to satisfy compiler
else rate = -0.10;
return rate;
}
}
|
public class CommissionTest {
public static void main(String[] args) {
Commission com = new Commission();
int sales = 9999;
System.out.println("Sales: " + sales +
", rate (CR1): " + com.CR1(sales));
sales = 10000;
System.out.println("Sales: " + sales +
", rate (CR1): " + com.CR1(sales));
sales = 15000;
System.out.println("Sales: " + sales +
", rate (CR1): " + com.CR1(sales));
sales = 15001;
System.out.println("Sales: " + sales +
", rate (CR1): " + com.CR1(sales));
System.out.println();
sales = 9999;
System.out.println("Sales: " + sales +
", rate (CR2): " + com.CR2(sales));
sales = 10000;
System.out.println("Sales: " + sales +
", rate (CR2): " + com.CR2(sales));
sales = 15000;
System.out.println("Sales: " + sales +
", rate (CR2): " + com.CR2(sales));
sales = 15001;
System.out.println("Sales: " + sales +
", rate (CR2): " + com.CR2(sales));
System.out.println();
sales = 9999;
System.out.println("Sales: " + sales +
", rate (CR3): " + com.CR3(sales));
sales = 10000;
System.out.println("Sales: " + sales +
", rate (CR3): " + com.CR3(sales));
sales = 15000;
System.out.println("Sales: " + sales +
", rate (CR3): " + com.CR3(sales));
sales = 15001;
System.out.println("Sales: " + sales +
", rate (CR3): " + com.CR3(sales));
System.out.println();
}
}
|
Here is the resulting output.
| Results of a run |
|---|
Sales: 9999, rate (CR1): 0.1 Sales: 10000, rate (CR1): 0.15 Sales: 15000, rate (CR1): 0.15 Sales: 15001, rate (CR1): 0.2 Sales: 9999, rate (CR2): 0.1 Sales: 10000, rate (CR2): 0.15 Sales: 15000, rate (CR2): 0.15 Sales: 15001, rate (CR2): 0.2 Sales: 9999, rate (CR3): 0.1 Sales: 10000, rate (CR3): 0.15 Sales: 15000, rate (CR3): 0.15 Sales: 15001, rate (CR3): 0.2 |