import java.util.Scanner;

class Oct4 {
	public static void main(String[] args) {


		int[] arr = new int[5];

		populateArray(arr);

		printArray(arr);	
		
		int p = product(1,2,3);
		System.out.printf("p: %d\n", p);

		p = product(1,2,3,4,5);
		System.out.printf("p: %d\n", p);

		p = product();
		System.out.printf("p: %d\n", p);

	}

	static void populateArray(int[] a) {
		Scanner kb = new Scanner(System.in);
		int len = a.length;
	
		System.out.printf("Enter %d integers\n", len);

		for(int i = 0; i < len; i++) {
			a[i] = kb.nextInt();
		}
		
		kb.close();
	}

	static void printArray(int[] a) {

		int len = a.length;

		// for each integer in a - print it
		for(int elm : a ) {
			// each iteration of loop, elm changes
			System.out.printf("%d ", elm);
		}
		System.out.println();
	}

	// write method that takes an arbirary number of ints
	// as agrument and returns the product of the ints

	// variable number of arguments: aka var-args
	static int product(int ... elms) {
		// elms is an array of integers

		int result = 1;
		for(int elm : elms) {
			result = result * elm;
		}
		return result;
	}
}
