The ArrayTest2 class:
Using methods

Here is a program that uses methods to solve Problem 1 of the Review for Exam 2:

// ArrayTest2.java:  Review question 1, about simple arrays of int
//   Answers using separate methods

public class ArrayTest2 {

   // Review part 1.a. 
   int[] grades = {58, 92, 86, 75, 48, 79, 67};
   
   // Review part 1.a., second array 
   int[] grades2 = {17, 47, 23, 89, 12, 76, 55, 61};
      
   // Review part 1.b.
   public int[] add3(int[] a) { 
      int[] b = new int[a.length]; 
      for (int i = 0; i < a.length; i++)
         b[i] = a[i] + 3;
      return b;
   }

   // Review part 1.c. 
   public int[] square(int[] a) { 
      int[] b = new int[a.length]; 
      for (int i = 0; i < a.length; i++)
         b[i] = a[i]*a[i];
      return b;
   }
 
   // Review part 1.d.
   public int largestValue(int[] a) { 
      int largest = a[0];  
      for (int i = 1; i < a.length; i++)
         if (a[i] > largest) largest = a[i];
      return largest;
   }

   // Review part 1.e.
   public int largestIndex(int[] a) { 
      int indexLargest = 0;  
      for (int i = 1; i < a.length; i++)
         if (a[i] > a[indexLargest]) indexLargest = i;
      return indexLargest;
   }

   public void testMethods() {
      printArray("Array \"grades\"  ", grades);
      printArray("Array \"grades2\" ", grades2);
      int[] resultArr;
      int   resultInt;
      int result2;
      resultArr = add3(grades);
      printArray("Part 1.b., add 3", resultArr);
      resultArr = add3(grades2);
      printArray("Part 1.b., add 3", resultArr);
      resultArr = square(grades);
      printArray("Part 1.c., square", resultArr);
      resultArr = square(grades2);
      printArray("Part 1.c., square", resultArr);
      resultInt = largestValue(grades);
      System.out.println("Part 1.d.:  Largest grade: " + resultInt);
      resultInt = largestValue(grades2);
      System.out.println("Part 1.d.:  Largest grade: " + resultInt);
      resultInt = largestIndex(grades);
      System.out.println("Part 1.e.:  Index of largest grade: " + resultInt);
      resultInt = largestIndex(grades2);
      System.out.println("Part 1.e.:  Index of largest grade: " + resultInt);
   }      

   private static void printArray(String heading, int[] g) {
      System.out.print(heading + ": ");
      for (int i = 0; i < g.length; i++)
         System.out.print(g[i] + " ");
      System.out.println();
   }
}

// ArrayTest2Main.java: Invoke StringTest2 public class ArrayTest2Main { public static void main (String[] args) { ArrayTest2 arrayTest2 = new ArrayTest2(); arrayTest2.testMethods(); } }
/* Output: Array "grades" : 58 92 86 75 48 79 67 Array "grades2" : 17 47 23 89 12 76 55 61 Part 1.b., add 3: 61 95 89 78 51 82 70 Part 1.b., add 3: 20 50 26 92 15 79 58 64 Part 1.c., square: 3364 8464 7396 5625 2304 6241 4489 Part 1.c., square: 289 2209 529 7921 144 5776 3025 3721 Part 1.d.: Largest grade: 92 Part 1.d.: Largest grade: 89 Part 1.e.: Index of largest grade: 1 Part 1.e.: Index of largest grade: 3 */


Revision date: 2003-11-11. (Please use ISO 8601, the International Standard.)