Advertisement
Farahim

main6.java

Sep 2nd, 2015
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. /**
  2. * Farahim Ibrahimli
  3. * Homework 1 Question 6
  4. *
  5. */
  6.  
  7. import java.util.Scanner;
  8.  
  9. public class Question6 {
  10.  
  11. private static Scanner in = new Scanner(System.in);
  12.  
  13.  
  14. public static double readDouble(String prompt) {
  15. System.out.print(prompt);
  16. return in.nextDouble();
  17. }
  18.  
  19. public static double calculateDistance(double startX, double startY, double endX, double endY) {
  20. return Math.sqrt(Math.pow(startX - endX, 2) + Math.pow(startY - endY, 2));
  21. }
  22.  
  23. public static boolean isOverlapping(double aX, double aY, double aR, double bX, double bY, double bR) {
  24. return calculateDistance(aX, aY, bX, bY) < Math.abs(aR + bR);
  25. }
  26.  
  27. public static boolean isTouching(double aX, double aY, double aR, double bX, double bY, double bR) {
  28. return calculateDistance(aX, aY, bX, bY) == Math.abs(aR + bR);
  29. }
  30.  
  31. public static boolean isInside(double aX, double aY, double aR, double bX, double bY, double bR) {
  32. double distance = calculateDistance(aX, aY, bX, bY);
  33.  
  34. return distance + aR <= bR;
  35. }
  36.  
  37. public static void main(String[] args) {
  38. double aX = readDouble("Enter Circle A X-Coordinate: ");
  39. double aY = readDouble("Enter Circle A Y-Coordinate: ");
  40. double aR = readDouble("Enter Circle A Radius: ");
  41.  
  42. double bX = readDouble("Enter Circle B X-Coordinate: ");
  43. double bY = readDouble("Enter Circle B Y-Coordinate: ");
  44. double bR = readDouble("Enter Circle B Radius: ");
  45.  
  46. if(isTouching(aX, aY, aR, bX, bY, bR)) {
  47. System.out.println("They are touching");
  48. } else if(isInside(aX, aY, aR, bX, bY, bR)) {
  49. System.out.println("A is inside B");
  50. } else if(isInside(bX, bY, bR, aX, aY, aR)) {
  51. System.out.println("B is inside A");
  52. } else if(isOverlapping(aX, aY, aR, bX, bY, bR)) {
  53. System.out.println("They are overlapping");
  54. } else {
  55. System.out.println("They are separate");
  56. }
  57. }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement