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:
Các kiểu dữ liệu trong java
Java Program to Implement Queue using Linked List
Registration with Spring Security – Password Encoding
Giới thiệu Google Guice – Binding
A Guide to the finalize Method in Java
Java Program to Implement Quick Sort with Given Complexity Constraint
Java Program to Implement Sieve Of Eratosthenes
Hamcrest Collections Cookbook
Tránh lỗi NullPointerException trong Java như thế nào?
Java Program to Implement Affine Cipher
Java Program to Implement Gauss Jordan Elimination
How to Change the Default Port in Spring Boot
HttpClient with SSL
wait() and notify() Methods in Java
Introduction to Spring Cloud Rest Client with Netflix Ribbon
Java Program to Implement Warshall Algorithm
Java Program to implement Array Deque
Daemon Threads in Java
Extract network card address
Java Program to Implement String Matching Using Vectors
Java Program to Find a Good Feedback Vertex Set
Java Program to Implement wheel Sieve to Generate Prime Numbers Between Given Range
HttpClient 4 – Send Custom Cookie
Spring Boot Application as a Service
Java Program to Find kth Largest Element in a Sequence
Java Program to Check if a Matrix is Invertible
Converting Java Date to OffsetDateTime
Spring Boot - Code Structure
Java Program to Generate Random Numbers Using Multiply with Carry Method
Java Program to Implement Bit Array
Java – Reader to String
So sánh ArrayList và LinkedList trong Java