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:
Spring 5 WebClient
How to Manually Authenticate User with Spring Security
Guide To CompletableFuture
Hướng dẫn Java Design Pattern – State
Tìm hiểu về xác thực và phân quyền trong ứng dụng
Thực thi nhiều tác vụ cùng lúc như thế nào trong Java?
Java Program to Implement the Program Used in grep/egrep/fgrep
Java Program to Implement Quick Sort with Given Complexity Constraint
XML Serialization and Deserialization with Jackson
Java Multi-line String
Different Ways to Capture Java Heap Dumps
Error Handling for REST with Spring
Spring Boot Gradle Plugin
Spring MVC Custom Validation
Java Program to Implement Bit Array
Java Program to Implement Interval Tree
A Guide to HashSet in Java
Command-Line Arguments in Java
The Dining Philosophers Problem in Java
Java Program to Implement Binomial Tree
Consumer trong Java 8
Posting with HttpClient
Custom JUnit 4 Test Runners
Java Program to Find Basis and Dimension of a Matrix
Spring Boot - Exception Handling
Sắp xếp trong Java 8
Tính trừu tượng (Abstraction) trong Java
Introduction to Spring Data JPA
Guide to CopyOnWriteArrayList
Java Program to Implement Self organizing List
Java Program to Implement Double Order Traversal of a Binary Tree
Java Program to Solve Knapsack Problem Using Dynamic Programming