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;
}
}
|
import java.io.*;
public class CommissionTest {
public static void main(String[] args) throws IOException {
Commission com = new Commission();
BufferedReader in =
new BufferedReader( new InputStreamReader(System.in));
System.out.print("Type a value for sales ---> ");
String input = in.readLine();
int sales = Integer.parseInt(input);
System.out.println("Sales: " + sales +
", rate (CR1): " + com.CR1(sales));
System.out.println("Sales: " + sales +
", rate (CR2): " + com.CR2(sales));
System.out.println("Sales: " + sales +
", rate (CR3): " + com.CR3(sales));
}
}
Results of several runs:
Type a value for sales ---> 9999
Sales: 9999, rate (CR1): 0.1
Sales: 9999, rate (CR2): 0.1
Sales: 9999, rate (CR3): 0.1
Type a value for sales ---> 10000
Sales: 10000, rate (CR1): 0.15
Sales: 10000, rate (CR2): 0.15
Sales: 10000, rate (CR3): 0.15
Type a value for sales ---> 15000
Sales: 15000, rate (CR1): 0.15
Sales: 15000, rate (CR2): 0.15
Sales: 15000, rate (CR3): 0.15
Type a value for sales ---> 15001
Sales: 15001, rate (CR1): 0.2
Sales: 15001, rate (CR2): 0.2
Sales: 15001, rate (CR3): 0.2
|