A Java Course Outline
Using the Java By Dissection book
by Ira Pohl and Charlie McDowell

 



Final Exam Sample

//What gets printed?
class Parray1 {
public static void main(String[] args) { int n = 20; boolean[] sieve = new boolean[n]; int i; for(i = 0; i < sieve.length; ++i) //initialize sieve[i] = true;   for(int j = 2; j < 6; ++j) if (sieve[j]) crossOut(sieve, j, j + j);   for(i = 0; i < sieve.length; ++i) if (sieve[i]) System.out.print(" " + i); System.out.println("\n\n____________________________________________ "); }   public static void crossOut(boolean[] s, int interval, int start) { int i; for(i = start; i < s.length; i += interval) s[i] = false; } }

//What gets printed?
class Parray2 {
   public static void main(String[] args)
   {
       int[] data = {1,3,5,8,11,15};
       int sum = 0;
 
       for(int i = 1; i < data.length; ++i) {
          sum = sum + data[i] - data[i-1];
          System.out.println("sum  = " + sum);
       }
   }
}

//What gets printed?
 
class Parray3 {
  static int sumIf (int[] a, boolean[] b) {
    int sum = 0;
    
    for (int i = 0; i < a.length; ++i)
       if(b[i])
	sum = sum + a[i];
    return sum;
  }
 
  public static void main(String[] args)
  {
    int[] data = {1, 2, 3, 4, 5, 6, 7};
    boolean[] filter = {true, false, true, true, false, true, true};
 
    System.out.println("data:" + sumIf(data, filter));
 
    for(int i = 0; i < filter.length; ++i)
       filter[i] =  !filter[i];
    System.out.println("data:" + sumIf(data, filter));
  }
}
 

//What gets printed?
//Pair as an object

class Pair {
   int first = 0, second = 0;
   public Pair(){ first = second = 0;}
   public Pair(int f, int s){ first = f; second = s;}
   int getFirst() { return first;}
   int getSecond() { return second;}
   void setFirst(int f) { first = f;}
   void setSecond(int s) { second = s;}
   void printPair()
   { System.out.println("Pair: " + first + ", " + second);}
}



public class PairTest{

  public static void main(String[] args)
  {
      int i = 5;

      Pair c1 = new Pair();
      Pair c2 = new Pair(2, 3);
      c1.printPair();
      c1.setSecond(i);
      c1.printPair();
      c2.printPair();

      c2.setFirst(i * 3);
      c2.printPair();
      System.out.println(c1.getFirst());
  }
}
 

//What gets printed
 
class Fcn {
  static int M = 1;
  static int foo(int a) { return (a + 1); }
  static int goo(int x) { return foo(x + 1) * x; }
  static void hoo(int[] x, int i) 
  { 
    int temp = x[i];
    x[i] = x[i + 1];
    x[i + 1] = temp;
  }


  public static void main(String[] args)
  {
      int i = 2;
      int[] a = {1, 2, 3};

      System.out.println("foo =" + foo(i));
      System.out.println("foo =" + foo(i + M));
      System.out.println("goo =" + goo(i + M));
      hoo(a, 0);
      hoo(a, 1);
      for(i = 0; i < a.length; ++i)
	 System.out.println(i + " : " + a[i]);
  }
}

Feel free to report any site problems to the Webmaster, Debra Dolsberry.