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 Encode a Message Using Playfair Cipher
Java Program to Implement Leftist Heap
An Intro to Spring Cloud Zookeeper
New Features in Java 14
Guide to the Volatile Keyword in Java
Java Program to Construct an Expression Tree for an Infix Expression
OAuth2 Remember Me with Refresh Token
Validations for Enum Types
Spring Boot Security Auto-Configuration
Giới thiệu Java 8
Introduction to Spring Data JPA
Apache Camel with Spring Boot
Introduction to Eclipse Collections
Reversing a Linked List in Java
Java Program to Implement Quick Hull Algorithm to Find Convex Hull
Java Program to Implement Knight’s Tour Problem
Spring REST API + OAuth2 + Angular
Java Program to Implement D-ary-Heap
Server-Sent Events in Spring
A Guide To UDP In Java
Java equals() and hashCode() Contracts
Java Program to Implement Gaussian Elimination Algorithm
Java Program to Implement Depth-limited Search
Java Program to Implement the Checksum Method for Small String Messages and Detect
Hướng dẫn Java Design Pattern – Mediator
Case-Insensitive String Matching in Java
Java Program to Represent Graph Using Adjacency List
Mảng (Array) trong Java
Java Program to Implement Lloyd’s Algorithm
Guide to CountDownLatch in Java
So sánh Array và ArrayList trong Java
Jackson Exceptions – Problems and Solutions