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:
A Guide to the Java LinkedList
XML-Based Injection in Spring
Java Program to Implement Counting Sort
REST Web service: Upload và Download file với Jersey 2.x
Guava – Join and Split Collections
Display Auto-Configuration Report in Spring Boot
Autoboxing và Unboxing trong Java
Guide to ThreadLocalRandom in Java
Java Program to Print only Odd Numbered Levels of a Tree
Guide to the Java Queue Interface
Java Program to Implement Binary Heap
Receive email using IMAP
Apache Camel with Spring Boot
Java Program to Implement the Hungarian Algorithm for Bipartite Matching
Using a Spring Cloud App Starter
Assertions in JUnit 4 and JUnit 5
Phân biệt JVM, JRE, JDK
Ways to Iterate Over a List in Java
Hướng dẫn Java Design Pattern – Visitor
Java Program to implement Dynamic Array
Spring MVC + Thymeleaf 3.0: New Features
Java String to InputStream
Guide to the Java Clock Class
Java Program to Implement the Bin Packing Algorithm
Java Program to Perform Encoding of a Message Using Matrix Multiplication
Removing Elements from Java Collections
Java Program to Perform Addition Operation Using Bitwise Operators
Giới thiệu JDBC Connection Pool
A Quick Guide to Spring Cloud Consul
Java Program to Perform Arithmetic Operations on Numbers of Size
Spring Security 5 – OAuth2 Login
Jackson – JsonMappingException (No serializer found for class)