//ArraySearcherDemo.java

import java.util.Scanner;
import java.util.Arrays;

public class ArraySearcherDemo
{
    public static void main(String[] args)
    {
        Scanner keyboard = new Scanner(System.in);
        /*
            int[] anArray = new int[10];
            Scanner keyboard = new Scanner(System.in);
            System.out.print("Enter 10 integers in increasing order, ");
            System.out.println("one per line:");

            for (int i = 0; i < 10; i++)
            anArray[i] = keyboard.nextInt();
            System.out.println();
        */

        final int NUM_VALUES = 10;
        int arraySize = NUM_VALUES + (int)((NUM_VALUES + 1) * Math.random());
        int[] anArray = new int[arraySize];
        for (int i = 0; i < arraySize; i++)
            anArray[i] = 10 + (int)(90 * Math.random());
        Arrays.sort(anArray);

        for (int i = 0; i < anArray.length; i++)
            System.out.print("a[" + i + "]=" + anArray[i] + " ");
        System.out.println();
        System.out.println();

        ArraySearcher finder = new ArraySearcher(anArray);

        String ans;
        do
        {
            System.out.println("Enter a value to search for:");
            int target = keyboard.nextInt();
            int result = finder.find(target);

            if (result < 0)
                System.out.println(target + " is not in the array.");
            else
                System.out.println(target + " is at index " + result);

            System.out.print("Again? ");
            ans = keyboard.next();
        }
        while (ans.equalsIgnoreCase("yes"));

        System.out.println("May you find what you're searching for.");
    }
}

