|
ArrayDemo |
|
1 // Example 4.2 joi/examples/ArrayDemo.java
2 //
3 //
4 // Copyright 2003 Bill Campbell and Ethan Bolker
5
6 // A class illustrating arrays
7 //
8 // Build an array of Fibonacci numbers 1, 1, 2, 3, 5, 8, ...
9 // and play with it. Sample output:
10 //
11 // %> java ArrayDemo 8
12 // Sum first 8 Fibonacci numbers
13 // 1 1 2 3 5 8 13 21
14 // total: 54
15 //
16 // First 8 Fibonacci numbers (reverse order)
17 // 21 13 8 5 3 2 1 1
18 // Every other fib
19 // 1 1
20 // 3 2
21 // 5 5
22 // 7 13
23
24 public class ArrayDemo
25 {
26 public static void main( String[] args )
27 {
28 int n = 6; // default
29 if (args.length > 0) {
30 n = Integer.parseInt(args[0]);
31 }
32
33 int[] fibs = new int[n]; // declare and create array
34
35 fibs[0] = fibs[1] = 1; // fill first two positions
36 for ( int i = 2; i < n; i++ ) { // fill the rest
37 fibs[i] = fibs[i-1] + fibs[i-2];
38 }
39
40 // standard idiom for accumulating total of an array
41 int total = 0;
42 System.out.println("Sum first " + n + " Fibonacci numbers");
43 for ( int i = 0; i < n; i++ ) {
44 System.out.print(fibs[i] + " ");
45 total += fibs[i];
46 }
47 System.out.println("\ntotal: " + total);
48 System.out.println();
49
50 System.out.
51 println("First " + n + " Fibonacci numbers (reverse order)");
52 for ( int i = n-1; i >= 0 ; i-- ) {
53 System.out.print(fibs[i] + " ");
54 }
55 System.out.println();
56
57 System.out.println("Every other fib");
58 for ( int i = 0; i < n ; i += 2 ) {
59 System.out.println((i+1) + "\t" + fibs[i]);
60 }
61 System.out.println();
62 }
63 }
64
|
ArrayDemo |
|