This is a Java Program to Implement Shoelace Algorithm. The shoelace formula, or shoelace algorithm, is a mathematical algorithm to determine the area of a simple polygon whose vertices are described by ordered pairs in the plane
Here is the source code of the Java Program to Implement Shoelace Algorithm. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
/** ** Java Program to Implement Shoelace Algorithm **/ import java.util.Scanner; /** Class Shoelace **/ public class Shoelace { /** Function to calculate area **/ public double area(int[][] arr) { int n = arr.length; /** copy initial point to last row **/ arr[n - 1][0] = arr[0][0]; arr[n - 1][1] = arr[0][1]; double det = 0.0; /** add product of x coordinate of ith point with y coordinate of (i + 1)th point **/ for (int i = 0; i < n - 1; i++) det += (double)(arr[i][0] * arr[i + 1][1]); /** subtract product of y coordinate of ith point with x coordinate of (i + 1)th point **/ for (int i = 0; i < n - 1; i++) det -= (double)(arr[i][1] * arr[i + 1][0]); /** find absolute value and divide by 2 **/ det = Math.abs(det); det /= 2; return det; } /** Main function **/ public static void main (String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Shoelace Algorithm Test\n"); /** Make an object of Shoelace class **/ Shoelace s = new Shoelace(); /** Accept number of points **/ System.out.println("\nEnter number of points"); int n = scan.nextInt(); int[][] arr = new int[n + 1][2]; System.out.println("Enter "+ n +" x, y coordinates"); for (int i = 0; i < n; i++) { arr[i][0] = scan.nextInt(); arr[i][1] = scan.nextInt(); } double area = s.area(arr); System.out.println("\nArea = "+ area); } }
Output:
Shoelace Algorithm Test Enter number of points 5 Enter 5 x, y coordinates 3 4 5 11 12 8 9 5 5 6 Area = 30.0
Related posts:
Java Program to Use Above Below Primitive to Test Whether Two Lines Intersect
Spring Boot - Hystrix
Giới thiệu SOAP UI và thực hiện test Web Service
Hướng dẫn sử dụng Java String, StringBuffer và StringBuilder
Hướng dẫn Java Design Pattern – Interpreter
Compact Strings in Java 9
Check If a File or Directory Exists in Java
ETags for REST with Spring
Java Program to Check whether Directed Graph is Connected using DFS
Testing in Spring Boot
Java Program to Implement Fisher-Yates Algorithm for Array Shuffling
Intro to Inversion of Control and Dependency Injection with Spring
HttpClient Timeout
Hướng dẫn Java Design Pattern – Service Locator
Guide to the Synchronized Keyword in Java
Java Program to Implement Weight Balanced Tree
Java Program to Implement Jarvis Algorithm
Convert a Map to an Array, List or Set in Java
Introduction to Java Serialization
Java Program to Implement Iterative Deepening
Life Cycle of a Thread in Java
Java Program to Implement Bubble Sort
Java Program to Solve Tower of Hanoi Problem using Stacks
TreeSet và sử dụng Comparable, Comparator trong java
Java Program to Implement Network Flow Problem
Tránh lỗi NullPointerException trong Java như thế nào?
Quick Guide to Spring Controllers
Đồng bộ hóa các luồng trong Java
Spring Boot - Batch Service
Java Program to Construct K-D Tree for 2 Dimensional Data
Guide to PriorityBlockingQueue in Java
A Guide to Java 9 Modularity