Skip to content
TStream edited this page Mar 22, 2017 · 2 revisions

Repeated Code Example 1 Solution:

public void example_one_solution(){
    
  int[] array_a = {1,2,3,4,5,6,7,8,9}; 
  int average_a = calc_average(array_a);
    
  int[] array_b = {2,4,6,8,10,12,14,16,18};  
  int average_b = calc_average(array_b);   
}
  
public int calc_average(int[] array) {

  int sum = 0;
  for (int i = 0; i < array.length; i++){
    sum += array[i];
  }
  return sum / array.length;
}

Repeated Code Example 2 Solution:

public void exampleTwoSolution(int amount, String type){
    
  String displayAmount = "";
    
  switch (type.toUpperCase()) {
    case "CEO":
     displayAmount = finalAmount(amount, 0.9, 0.99);
     break;
    case "MGR":
    case "AMRG":
     displayAmount = finalAmount(amount, 0.4, 0.50);
     break;
    case "SE":
     displayAmount = finalAmount(amount, 0.2, 0.25);
     break;
    case "JE":
     displayAmount = finalAmount(amount, 0.2, 0.15);
     break;
    case "LC":
    case "FF":
     displayAmount = finalAmount(amount, 0.1, 0.10);
     break;
    default:
     displayAmount = finalAmount(amount, 0, 0);
     break;
  }
    
}
  
public string finalAmount(int amount, double discount1, double discount2) {
  double finalAmount = (amount - (discount1 * amount)) - discount2 * (amount - (discount1 * amount));
  DecimalFormat df = new DecimalFormat("0.00");
  return df.format(finalAmount);
}

Clone this wiki locally