>  기사  >  Java  >  보다 효율적인 알고리즘을 사용하여 Java에서 다각형 면적 계산

보다 효율적인 알고리즘을 사용하여 Java에서 다각형 면적 계산

PHPz
PHPz앞으로
2023-08-27 21:57:061474검색

보다 효율적인 알고리즘을 사용하여 Java에서 다각형 면적 계산

"다각형"이라는 단어는 "다수"를 의미하는 그리스어 "Poly"와 "각도"를 의미하는 "gon"에서 유래되었습니다. 다각형은 세 개 이상의 직선으로 연결된 2차원 닫힌 평면 모양입니다. 예를 들어 삼각형, 사각형, 육각형 등이 있습니다.

이 글에서는 다각형의 면적을 구하는 방법이 여러 가지가 있지만, 우리는 이 목적을 위해 슬리커 알고리즘을 사용하겠습니다.

다각형의 면적을 찾는 더욱 유연한 알고리즘

슬리커 알고리즘

꼭 알아야 할 두 가지 사실이 있습니다. 수학적 관례에 따르면 위쪽 y 방향의 점은 항상 양수입니다. 둘째, 컴퓨터 시스템에 따르면 y 방향은 아래쪽을 가리키며 항상 양수입니다. 이 알고리즘은 양의 y-아래 좌표를 사용하여 시계 반대 방향으로 정점을 나열함으로써 효율적인 솔루션을 제공합니다. 이는 이 두 가지 사실에 대응하여 긍정적인 영역을 만들 것입니다.

이제 슬리커 알고리즘을 구현한 자바 프로그램에 대해 논의해 보겠습니다.

알고리즘

  • 1단계 - "Slicker" 클래스와 두 개의 내부 클래스 "Coordinates" 및 "Poly"를 만듭니다.

  • 2단계 - 상수 "MAXIMUM"을 선언하고 초기화하여 다각형의 변 수를 제한합니다.

  • 3단계 - 내부 클래스 "Poly" 내에 "Coordinates" 클래스의 개체 배열을 만듭니다. 그런 다음 "Poly" 클래스의 생성자를 만들어 해당 개체 배열에 좌표를 저장합니다.

  • 4단계 - "calcAr" 메소드와 "cr" 매개변수를 추가로 정의합니다. 이 방법에서는 다각형의 변 수까지 실행하고 면적을 계산하는 for 루프를 만듭니다.

  • 5단계 - 이제 기본 메서드에서 "Poly" 클래스의 "cr" 개체를 만듭니다. 그런 다음 사용자로부터 다각형의 변 수와 좌표를 얻습니다.

  • 6단계 - 마지막으로 "calcAr" 메소드를 호출하고 if-else 블록을 사용하여 해당 영역이 양수인지 음수인지 확인합니다. 긍정적이면 "if" 블록 문이 실행되고, 그렇지 않으면 else 블록이 실행됩니다.

으아악

출력

으아악

결론

측면이 없는 닫힌 평면 모양이더라도 평면 모양은 원과 같은 다각형으로 간주될 수 없습니다. 그래서 우리는 그것을 다각형이라고 부를 수 없습니다. 이 기사에서는 슬리커 알고리즘을 사용하여 다각형의 면적을 계산하는 Java 프로그램을 작성했습니다.

위 내용은 보다 효율적인 알고리즘을 사용하여 Java에서 다각형 면적 계산의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제