fork download
  1. class Punct{
  2. private int x;
  3. private int y;
  4. public void init(int xx, int yy) {
  5.  
  6. x = xx; y = yy;
  7. }
  8. public void move(int dx, int dy) {
  9.  
  10. x += dx; y += dy;
  11. }
  12.  
  13. public void setX(int xx) { x = xx; }
  14.  
  15. public void setY(int yy) { y = yy; }
  16.  
  17. public int getX( ) { return x; }
  18.  
  19. public int getY( ) { return y; }
  20.  
  21. // distanta fata de origine
  22. public double distance(){
  23. return Math.sqrt(x * x + y * y);
  24. } // distance
  25.  
  26. public String afisare(){
  27. return "(x, y) = (" + x + ", " + y + ")";
  28. } // afisare
  29.  
  30. } // Punct
  31.  
  32. public class Main {
  33.  
  34. public static void main(String[ ] arg) {
  35.  
  36. Punct p1 = new Punct( ); //creez o instanta a clasei Punct
  37. Punct p2 = new Punct( ); // si inca una
  38.  
  39. // afisare obiecte dupa instantiere
  40. System.out.println("Puncte dupa instantiere");
  41. System.out.println("(x1,y1) = ("+p1.getX( )+","+p1.getY( )+")");
  42. //afisez coordonatele curente ale primului punct
  43. System.out.println("(x2,y2) = ("+p2.getX( )+","+p2.getY( )+")");
  44.  
  45. System.out.println("p1: " + p1.afisare());
  46. System.out.println("p2: " + p2.afisare());
  47.  
  48. //afisez coordonatele curente ale celui de-al 2-lea punct
  49. // afisam distantele punctelor fata de origine
  50. System.out.println("distanta p1 = " + p1.distance());
  51. System.out.println("distanta p2 = " + p2.distance());
  52.  
  53. p1.init (10,20); p2.init (30,40); //apelez metodele init ale instantelor
  54.  
  55. // afisare obiecte dupa initializare
  56. System.out.println("\nPuncte dupa initializare");
  57. System.out.println("(x1,y1) = ("+p1.getX( )+","+p1.getY( )+")");
  58. //afisez coordonatele curente ale primului punct
  59. System.out.println("(x2,y2) = ("+p2.getX( )+","+p2.getY( )+")");
  60. //afisez coordonatele curente ale celui de-al 2-lea punct
  61. // afisam distantele punctelor fata de origine
  62. System.out.println("distanta p1 = " + p1.distance());
  63. System.out.println("distanta p2 = " + p2.distance());
  64.  
  65. // modific pe rand datele membru
  66. p1.setX(-10);
  67. p2.setY(p1.getX()); // y pentru p2 sa devina egal cu x pentru p1
  68.  
  69. // afisare obiecte dupa modificare date membru
  70. System.out.println("\nPuncte dupa modificare");
  71. System.out.println("(x1,y1) = ("+p1.getX( )+","+p1.getY( )+")");
  72. //afisez coordonatele curente ale primului punct
  73. System.out.println("(x2,y2) = ("+p2.getX( )+","+p2.getY( )+")");
  74. //afisez coordonatele curente ale celui de-al 2-lea punct
  75. // afisam distantele punctelor fata de origine
  76. System.out.println("distanta p1 = " + p1.distance());
  77. System.out.println("distanta p2 = " + p2.distance());
  78.  
  79. p1.move(5,5); p2.move(6,-2); //apelez metodele move ale instantelor
  80.  
  81. // afisare obiecte dupa mutare
  82. System.out.println("\nPuncte dupa mutare");
  83. System.out.println("(x1,y1) = ("+p1.getX( )+","+p1.getY( )+")");
  84. //afisez coordonatele curente ale primului punct
  85. System.out.println("(x2,y2) = ("+p2.getX( )+","+p2.getY( )+")");
  86. //afisez coordonatele curente ale celui de-al 2-lea punct
  87. // afisam distantele punctelor fata de origine
  88. System.out.println("distanta p1 = " + p1.distance());
  89. System.out.println("distanta p2 = " + p2.distance());
  90.  
  91. }
  92. }
Success #stdin #stdout 0.24s 60156KB
stdin
Standard input is empty
stdout
Puncte dupa instantiere
(x1,y1) = (0,0)
(x2,y2) = (0,0)
p1: (x, y) = (0, 0)
p2: (x, y) = (0, 0)
distanta p1 = 0.0
distanta p2 = 0.0

Puncte dupa initializare
(x1,y1) = (10,20)
(x2,y2) = (30,40)
distanta p1 = 22.360679774997898
distanta p2 = 50.0

Puncte dupa modificare
(x1,y1) = (-10,20)
(x2,y2) = (30,-10)
distanta p1 = 22.360679774997898
distanta p2 = 31.622776601683793

Puncte dupa mutare
(x1,y1) = (-5,25)
(x2,y2) = (36,-12)
distanta p1 = 25.495097567963924
distanta p2 = 37.94733192202055