KingBini
KingBini_Note
KingBini
전체 방문자
오늘
어제
  • 분류 전체보기 (68)
    • Prgraming Error (13)
      • jsp,servlet (11)
    • Programing (30)
      • JavaScript (5)
      • java (10)
      • jsp (2)
      • study (9)
      • spring (4)
    • CS (2)
      • 자료구조 (1)
      • 알고리즘 (1)
    • Book (0)
    • 강의 (11)
      • 스프링_핵심원리_기본 (4)
      • 스프링부트 JPA활용 1 (7)
    • algorithm문제 풀이 (3)
      • 백준 (3)
    • Network (1)
    • cloud (2)
      • AWS Cloud (2)
    • DB (3)
      • PostgreSQL (2)
    • OS (1)
      • LINUX (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 모각코 스터디
  • 집합 레벨 변화
  • JS
  • 자바스크립트
  • 집합 레벨
  • 김영한
  • Spring
  • 스프링핵심원리
  • CS
  • JPA
  • 인프런
  • 스프링
  • 스프링 부트와 JPA 활용1
  • PostgreSQL
  • JSP
  • 미니홈피 만들기
  • 스프링 핵심원리
  • servlet
  • java
  • 자바

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
KingBini

KingBini_Note

메서드 Math.pow() ,Math.sqrt()로 두 점의 거리 구하기
Programing/java

메서드 Math.pow() ,Math.sqrt()로 두 점의 거리 구하기

2022. 1. 10. 23:11

두 점(x,y) 와(x1,y1)의 거리 공식은 아래와 같다

 

위의 공식으로 자바로 두점의 거리를 구해보자

 

위의 공식을 자바로 표현하기 위해서는 아래의 메서드가 필요하다.

Math.pow() <-제곱

double형태로 인수를 넣으면 인수의 제곱근을 출력해준다.


Math.sqrt() <-루트

괄호 안에 식으 넣어주면 루트가 쒸어진다.

 

아래의 예제 처럼 사용할 수 있다. 

class TwoPoint {  
	int x;  
	int y;
	TwoPoint (int x, int y){  //new TwoPoint(1,1) 을 메인메서드에서 매개변수로 받는다.
		this.x=x; //인스턴수변수.x=1로 대입
		this.y=y;//인스턴수변수.y=1로 대입
	}
	
	 double getDistance(int x1, int y1) {  //메인메서드에서 2를 대입 받는다.
		return Math.sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1));  //Math.sqrt자체를 루트모양으로 생각해 루트로 덮는다고 이미지화 하면 이해하기 쉬울 것 같다.
		
        //아래 처럼 Math.pow로 직접 제곱을 해줄 수있지만 메소드를 많이 사용하는것은 비용이많이 드는 작업이라고한다.
		//하지만 그렇다고 빠른코드를 만들기위해 코드를 복잡하게 하는 것은 좋지 않다고 한다.
		//return Math.sqrt(Math.pow(x-x1,2)+Math.pow(y-y1,2));
	}
} 

	
class Distance{  
public static void main(String[] args) {  //메인 메소드 실행
	TwoPoint p = new TwoPoint(1,1);      //객체생성, TowPont클래스 호출
  System.out.println(p.getDistance(2,2));  //참조변수 p가 가르키는메서드에 2를 대입
}
}
		
        
        
        
        
/* Console
 * 1.4142135623730951
 */

 

'Programing > java' 카테고리의 다른 글

Java JVM과 JDK 이해하기  (0) 2022.02.10
스택(Stack)이란, 스택활용  (0) 2022.01.17
#Java 문자열 다루기  (0) 2021.09.10
#Java 문자열의 표현-Character and string  (0) 2021.09.10
#Java 숫자와 연산  (0) 2021.09.10
    'Programing/java' 카테고리의 다른 글
    • Java JVM과 JDK 이해하기
    • 스택(Stack)이란, 스택활용
    • #Java 문자열 다루기
    • #Java 문자열의 표현-Character and string
    KingBini
    KingBini
    github : https://github.com/kkssbbb

    티스토리툴바