aboutsummaryrefslogtreecommitdiff
path: root/challenge-101/ziameraj16/java
diff options
context:
space:
mode:
authorziameraj16 <ziameraj16@gmail.com>2021-02-28 11:49:50 +0000
committerziameraj16 <ziameraj16@gmail.com>2021-02-28 11:49:50 +0000
commit30f02861315dc48c8a2bf2aecc927ea8a8fbbd04 (patch)
tree1e4cc50e9ba45c5749608955f2e9ea5bd93da9f0 /challenge-101/ziameraj16/java
parent37247271a1d6f0cefa14b7847b3fecf4b1dd7894 (diff)
downloadperlweeklychallenge-club-30f02861315dc48c8a2bf2aecc927ea8a8fbbd04.tar.gz
perlweeklychallenge-club-30f02861315dc48c8a2bf2aecc927ea8a8fbbd04.tar.bz2
perlweeklychallenge-club-30f02861315dc48c8a2bf2aecc927ea8a8fbbd04.zip
Java solution for Origin-containing triangle
Diffstat (limited to 'challenge-101/ziameraj16/java')
-rw-r--r--challenge-101/ziameraj16/java/OriginContainingTriangle.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/challenge-101/ziameraj16/java/OriginContainingTriangle.java b/challenge-101/ziameraj16/java/OriginContainingTriangle.java
new file mode 100644
index 0000000000..299ecc78e0
--- /dev/null
+++ b/challenge-101/ziameraj16/java/OriginContainingTriangle.java
@@ -0,0 +1,27 @@
+import java.util.Arrays;
+import java.util.Scanner;
+
+public class OriginContainingTriangle {
+
+ public static void main(String[] args) {
+ Scanner scanner = new Scanner(System.in);
+ System.out.println("Enter first coordinates");
+ int[] firstCoordinate = Arrays.stream(scanner.nextLine().split(",")).mapToInt(Integer::parseInt).toArray();
+ System.out.println("Enter second coordinates");
+ int[] secondCoordinate = Arrays.stream(scanner.nextLine().split(",")).mapToInt(Integer::parseInt).toArray();
+ System.out.println("Enter third coordinates");
+ int[] thirdCoordinate = Arrays.stream(scanner.nextLine().split(",")).mapToInt(Integer::parseInt).toArray();
+ System.out.println("Output: " + doesTriangleContainsOrigin(firstCoordinate[0], firstCoordinate[1], secondCoordinate[0], secondCoordinate[1], thirdCoordinate[0], thirdCoordinate[1]));
+ }
+
+ public static int doesTriangleContainsOrigin(int x1, int y1, int x2, int y2, int x3, int y3) {
+ double area = Math.abs((x1*(y2 - y3) + x2*(y3 - y1) + x3*(y1 - y2)) / 2.0);
+
+ double area_1 = Math.abs((x2*y3 + x3*(-y2)) / 2.0);
+ double area_2 = Math.abs((x1*(-y3) + x3*y1) / 2.0);
+ double area_3 = Math.abs((x1*y2 + x2*(-y1)) / 2.0);
+
+ double aumOfAreaOfSmallTriangles = area_1 + area_2 + area_3;
+ return area == aumOfAreaOfSmallTriangles ? 1 : 0;
+ }
+}