Advertisement
Alex_Zuev

Untitled

Mar 14th, 2015
776
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.76 KB | None | 0 0
  1. Enter you
  2. /**
  3.  * Created by Alex on 12.03.2015.
  4.  */
  5. import java.util.Scanner;
  6. public class Circle// описываем отдельный новый класс
  7.  {
  8.     // свойства класса
  9.     public double x; // абсцисса центра
  10.     public double y; // ордината центра
  11.     public double r; // радиус
  12.     // методы класса
  13.     // выводит на экран параметры окружности
  14.     public void printCircle() {
  15.         System.out.println("Окружность с центром ("+x+";"+y+") и радиусом "+r);
  16.     }
  17.     // перемещает центр, движение окружности
  18.     public void moveCircle(double a, double b) {
  19.         x = x + a;
  20.         y = y + b;
  21.     }
  22.     // масштабируем, выполняем преобразование подобия с коэффициентом k
  23.     public void zoomCircle(double k) {
  24.         r = r * k;
  25.     }
  26.      
  27.      public Circle() {
  28.          Scanner sc = new Scanner(System.in);
  29.          System.out.println("Введите X: ");
  30.          this.x = sc.nextInt();
  31.          Scanner sc1 = new Scanner(System.in);
  32.          System.out.println("Введите Y: ");
  33.          this.y = sc1.nextInt();
  34.          Scanner sc2 = new Scanner(System.in);
  35.          System.out.println("Введите R: ");
  36.          this.r = sc2.nextInt();
  37.  
  38.      }
  39.      public double CircleLangh (double a){
  40.          double b=a*2*Math.PI;
  41.          return b;
  42.      }
  43.      public void moveCircleRandom (){
  44.          int a = (int)(Math.random()*199)-100;
  45.          int b =(int) (Math.random()*199)-100;
  46.          x = x + a;
  47.          y = y + b;
  48.      }
  49.      public boolean Check(double a){
  50.          if (a<=0)return true;
  51.          else return false;
  52.      }
  53.  
  54.      public double CoordinateAxisDistance(double a, double b) {
  55.          double Xdist = 0;
  56.          if (Check(a) == Check(b) )
  57.              Xdist = Math.abs(a - b);
  58.          else Xdist = Math.abs(a) + Math.abs(b);
  59.          return Xdist;
  60.      }
  61.      public double CircleCentreDistance(double A,double B, double C , double D ){
  62.          double DistX= CoordinateAxisDistance(A,B);
  63.          double DistY= CoordinateAxisDistance(C,D);
  64.          double Dist=Math.sqrt(DistX*DistX+DistY*DistY);
  65.          return Dist;
  66.      }
  67.      public boolean CheckTouche (double a ,double b,double c){
  68.          if (a== b + c || b==a+c || c==a+b )
  69.              return true;
  70.          else return false;
  71.  
  72.      }
  73.  
  74.  
  75.  
  76. }
  77.  
  78. /**
  79.  * Created by Alex on 12.03.2015.
  80.  */
  81. /*
  82. 1 Создайте в классе Circle метод, вычисляющий длину окружности.
  83. 2 Создайте в классе Circle метод, перемещающий центр круга в
  84. случайную точку квадрата координатной плоскости с диагональю
  85. от [-99;-99] до [99;99]. Обратите внимание на то, что требуется
  86. создать обычный метод, применимый к уже существующему объекту,
  87. а не конструктор создающий новый объект.
  88. 3 Измените в классе Circle конструктор по умолчанию так, чтобы в момент создания
  89. объекта с его помощью, координаты центра и радиус окружности пользователь вводил
  90. с клавиатуры.
  91. 4 Создайте в классе Circle метод, вычисляющий расстояние между центрами двух окружностей.
  92. 5 Создайте в классе Circle метод, проверяющий, касаются ли окружности в одной точке.
  93. Учтите, что возможен вариант, когда одна окружность содержится внутри другой и при
  94. этом всё равно возможно касание в одной точке.*/
  95. public class Main {
  96.     public static void main(String[] args) {
  97.         // Создаём объекты (окружность класса Circle), с заданными в ручную параметрами
  98.         Circle o1 = new Circle();
  99.         Circle o2 = new Circle();
  100.         //Произвольно меняем рандомно координаты центров окружностей
  101.  
  102.  
  103.         //o2.moveCircleRandom();
  104.         //o1.moveCircleRandom();
  105.         // выводим на экран параметры окружностей
  106.         o1.printCircle();
  107.         o2.printCircle();
  108.         //Находим расстояние между центрами
  109.         double Dist = o1.CircleCentreDistance(o1.x, o2.x, o1.y, o2.y);
  110.         System.out.println(Dist);
  111.         System.out.println(o1.CheckTouche(o1.r, o2.r, Dist));
  112.  
  113.     }
  114.  
  115. }
  116.  
  117.  
  118.  
  119.  
  120.  
  121. r code here
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement