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:
Jackson – Decide What Fields Get Serialized/Deserialized
Giới thiệu java.io.tmpdir
Java Program to Implement a Binary Search Tree using Linked Lists
Deque và ArrayDeque trong Java
Receive email by java client
Java Program to Check whether Undirected Graph is Connected using DFS
Java Program to Implement wheel Sieve to Generate Prime Numbers Between Given Range
Đồng bộ hóa các luồng trong Java
Life Cycle of a Thread in Java
Sử dụng CountDownLatch trong Java
Most commonly used String methods in Java
Spring Security Registration – Resend Verification Email
Default Password Encoder in Spring Security 5
Spring Boot With H2 Database
Configure a Spring Boot Web Application
Guide to @ConfigurationProperties in Spring Boot
Giới thiệu Json Web Token (JWT)
Spring Security Form Login
Java Program to Implement Johnson’s Algorithm
An Intro to Spring Cloud Task
Cachable Static Assets with Spring MVC
Properties with Spring and Spring Boot
Giới thiệu Swagger – Công cụ document cho RESTfull APIs
Giới thiệu Java 8
Tạo ứng dụng Java RESTful Client với thư viện Retrofit
MyBatis with Spring
Java Program to find the peak element of an array using Binary Search approach
How to Read HTTP Headers in Spring REST Controllers
Java 8 Stream API Analogies in Kotlin
Beans and Dependency Injection
Java Program to Implement Hash Tables Chaining with Doubly Linked Lists
Hướng dẫn sử dụng luồng vào ra ký tự trong Java