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:
Extract links from an HTML page
Java Program to Implement TreeMap API
Hướng dẫn Java Design Pattern – Abstract Factory
Java Program to Implement the Hill Cypher
Spring Security Basic Authentication
Java Program to Implement Treap
Why String is Immutable in Java?
Spring MVC Content Negotiation
Spring Boot - Quick Start
Java Program to Implement LinkedHashMap API
How to Implement Caching using Adonis.js 5
Transaction Propagation and Isolation in Spring @Transactional
Spring Boot Annotations
How to Manually Authenticate User with Spring Security
Java Program to Represent Graph Using Adjacency List
Java Program to Generate All Subsets of a Given Set in the Gray Code Order
RegEx for matching Date Pattern in Java
Quick Guide to Spring Controllers
Using the Map.Entry Java Class
Hướng dẫn Java Design Pattern – Object Pool
Using JWT with Spring Security OAuth (legacy stack)
Abstract class và Interface trong Java
Java Program to Implement Shunting Yard Algorithm
Create a Custom Auto-Configuration with Spring Boot
Template Engines for Spring
Java Program to Implement Selection Sort
Registration – Activate a New Account by Email
Java – Reader to Byte Array
A Guide to Java SynchronousQueue
Java Program to Solve a Matching Problem for a Given Specific Case
Java Program to Perform Quick Sort on Large Number of Elements
Spring Data JPA and Null Parameters