import java.io.*;
import java.util.*;

public class Point {
	public static void main(String [] args) throws Exception {
		Scanner scanner = new Scanner(new File("points.data"));

		System.out.println(" --- From the file");
		System.out.println();

		while (scanner.hasNextInt()) {
			int 
				x = scanner.nextInt(),
				y = scanner.nextInt();
			doIt(x, y);
		}

		Random r = new Random(12345);

		System.out.println();
		System.out.println(" --- Some random points between 0 and 9");
		System.out.println();

		for (int i = 1; i <= 20; i++) {
			int 
				x = r.nextInt(19)-9,
				y = r.nextInt(19)-9;
			doIt(x, y);
		}
	}


	public static void doIt(int x, int y) throws Exception{
		System.out.println(x + " " + y);

		System.out.println("Quadrant: " + quadrantStr(x, y) + " (" + quadrant(x, y) + ")");
	}

	public static String quadrantStr(int x, int y) {
		switch (quadrant(x, y)) {
			case 0: return "Origin";
			case 1: return "Quadrant 1"; 
			case 2: return "Quadrant 2";
			case 3: return "Quadrant 3"; 
			case 4: return "Quadrant 4"; 
			case 5: return "Positive x axis"; 
			case 6: return "Positive y axis"; 
			case 7: return "Negative x axis"; 
			case 8: return "Negative y axis"; 
			default: return "???";
		}
	}
			
	public static int quadrant(int x, int y) {
		if (x == 0 && y == 0) return 0;
		if (x > 0 && y > 0) return 1;
		if (x < 0 && y > 0) return 2;
		if (x < 0 && y < 0) return 3;
		if (x > 0 && y < 0) return 4;
		if (x > 0 && y == 0) return 5;
		if (x == 0 && y > 0) return 6;
		if (x < 0 && y == 0) return 7;
		if (x == 0 && y < 0) return 8;
		return -1;
	}
}
