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:
Performance Difference Between save() and saveAll() in Spring Data
Java Program to do a Depth First Search/Traversal on a graph non-recursively
Java Program to Find Transpose of a Graph Matrix
Java Program to Implement Fermat Primality Test Algorithm
Java Program to find the maximum subarray sum O(n^2) time(naive method)
Hashtable trong java
A Guide to HashSet in Java
Java Program to Implement Bellman-Ford Algorithm
Spring Cloud AWS – Messaging Support
Java Program to Implement Find all Back Edges in a Graph
Java Program to Implement Graham Scan Algorithm to Find the Convex Hull
Java Program to Implement Pairing Heap
How to Round a Number to N Decimal Places in Java
Hướng dẫn sử dụng biểu thức chính quy (Regular Expression) trong Java
Spring Boot - Cloud Configuration Server
Introduction to Spring Boot CLI
Getting Started with Forms in Spring MVC
Spring Security – Reset Your Password
RestTemplate Post Request with JSON
Handle EML file with JavaMail
Remove the First Element from a List
Remove All Occurrences of a Specific Value from a List
Java Program to Perform the Shaker Sort
Get the workstation name or IP
Java Program to Generate All Subsets of a Given Set in the Lexico Graphic Order
Java Program to Implement Johnson’s Algorithm
Overview of Spring Boot Dev Tools
Java Program to Compute the Area of a Triangle Using Determinants
Java Program to Find Nearest Neighbor for Static Data Set
Netflix Archaius with Various Database Configurations
Java – Write an InputStream to a File
Hướng dẫn Java Design Pattern – Transfer Object