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 Solve a Matching Problem for a Given Specific Case
Sắp xếp trong Java 8
Java Program to Implement Lloyd’s Algorithm
How to Delay Code Execution in Java
Introduction to Spring Method Security
Reactive Flow with MongoDB, Kotlin, and Spring WebFlux
Configure a RestTemplate with RestTemplateBuilder
Hướng dẫn Java Design Pattern – Observer
Spring Boot - Tomcat Port Number
Java Program to Implement Uniform-Cost Search
Simultaneous Spring WebClient Calls
Java Program to Construct an Expression Tree for an Prefix Expression
Spring RestTemplate Error Handling
Java Program to Implement Binomial Tree
Java Program to implement Array Deque
Java Program to Construct a Random Graph by the Method of Random Edge Selection
Java Program to Generate N Number of Passwords of Length M Each
Java Program to Permute All Letters of an Input String
An Intro to Spring Cloud Zookeeper
A Guide to HashSet in Java
Versioning a REST API
Hướng dẫn sử dụng Java Generics
Java Program to Implement Miller Rabin Primality Test Algorithm
Encode a String to UTF-8 in Java
Spring Boot Annotations
Java Program to Implement Shell Sort
Java Program to Implement Skip List
Java Program to Implement Multi-Threaded Version of Binary Search Tree
Java Program to Implement VList
File Upload with Spring MVC
Java Program to Implement Red Black Tree
Spring Boot: Customize Whitelabel Error Page