본문 바로가기
IT/JAVA

[Java]사각형과 원 넓이, 둘레 구하기 code

by 행복한 용용이 2020. 7. 8.
반응형

/*

1. 가로 : width , 세로 : height

2. 넓이 : calcArea()

   둘레 : calcRound()

*/

public class Rect {

      int width;

      int height;

      double area;

 

      double round; public Rect() {

           width = 4;

            height = 3;

      }

     

      public Rect(int width,int height) {

           this.width = width;

           this.height = height;

      }

 

      void calcArea(){

           area = width*height;

      }

 

      double calcArea(int width,int height){

           area = width*height;

           return area;

      }

 

      void calcRound(){

           round = (width+height)*2;

      }

 

      double calcRound(int width,int height){

           round = (width+height)*2;

           return round;

      }

}

 


/*

1. 반지름 : radius

2. 넓이 : calcArea()

   둘레 : calcRound()

*/

 

public class Circle {

      int radius;

      double area;

      double round;

 

      public Circle() {

           radius = 4;

      }

 

      public Circle(int radius) {

           this.radius = radius;

      }

 

      void calcArea(){

           area = radius*radius*3.14;

      }

 

      double calcArea(int radius){

           area = radius*radius*3.14;

           return area;

      }

 

      void calcRound(){

           round = radius*2*3.14;

      }

 

      double calcRound(int radius){

           round = radius*2*3.14;

           return round;

      }

}

 


 

public class DohyungTest {

      public static void main(String[] args) {

           Rect r1=new Rect();

           //default

           //가로가4이고 세로가3인 사각형의 넓이는 12이고 둘레는 14입니다.

           r1.calcArea();

           r1.calcRound();

           System.out.println("가로가 "+r1.width+"이고 세로가 "+r1.height+"인 사각형의 넓이는 "+r1.area+"이고 둘레는 "+r1.round+"입니다.");

 

           int width = 5;

           int height = 3;

           Rect r2=new Rect(width,height);

           //맘대로 가로,세로 정함

           r2.calcArea(width,height);

           r2.calcRound(width,height);

           System.out.println("가로가 "+r2.width+"이고 세로가 "+r2.height+"인 사각형의 넓이는 "+r2.area+"이고 둘레는 "+r2.round+"입니다.");

 

           Circle c1=new Circle();

           //default

           //반지름이 4인 원의 넓이는 48.xxx이고 둘레는 24.xxx입니다.

           c1.calcArea();

           c1.calcRound();

           System.out.println("반지름이 "+c1.radius+"인 원의 넓이는 "+c1.area+"이고 둘레는 "+c1.round+"입니다.");

 

           int radius = 5;

           Circle c2=new Circle(radius);

           //맘대로 반지름 정함

           c2.calcArea(radius);

           c2.calcRound(radius);

           System.out.println("반지름이 "+c2.radius+"인 원의 넓이는 "+c2.area+"이고 둘레는 "+c2.round+"입니다."); } }

 


 

3.14대신 Math.PI를 쓸 수도 있다.

또한 제곱도 Math.pow( , )로 쓸 수 있다. (oracle에선 power(2,3) = 2^3 =8 )

static으로 생성되어있는 변수,method는 객체를 생성할 필요 없이 클래스의 이름으로 직접 사용할 수 있다.

Math m = new Math();

m.PI << 할 필요 없음. 에러남.

static은 변수의 값들이 공유된다. 따라서 static을 함부로 쓰면 위험하다.

내가 1000원밖에 없는 데 다른 사람이 1억 너으면 모든 사람들의 돈이 1억이 될 수 있음.

 

[출처] 빡쏘끼룩

반응형