diff options
| -rw-r--r-- | challenge-101/ziameraj16/README.md | 118 | ||||
| -rw-r--r-- | challenge-101/ziameraj16/java/OriginContainingTriangle.java | 27 |
2 files changed, 55 insertions, 90 deletions
diff --git a/challenge-101/ziameraj16/README.md b/challenge-101/ziameraj16/README.md index 31216d02d8..bdcc1e38b4 100644 --- a/challenge-101/ziameraj16/README.md +++ b/challenge-101/ziameraj16/README.md @@ -1,101 +1,39 @@ -# Fun Time +# Origin-containing Triangle ## Java Solution To compile the code run ```java -javac FunTime.java +javac OriginContainingTriangle.java ``` To run ```java -java FunTime +java OriginContainingTriangle ``` ### Example ```bash -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ javac FunTime.java -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -05:15 pm -Output: 17:15 -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -05:15pm -Output: 17:15 -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -12:00 am -Output: 00:00 -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -12:00 pm -Output: 12:00 -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -19:15 -Output: 07:15pm -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -00:00 -Output: 12:00am -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -01:00 -Output: 01:00am -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java FunTime -Enter time -12:00 -Output: 12:00pm -``` -# Triangle Sum -## Java Solution - -To compile the code run -```java -javac TriangleSum.java -``` -To run -```java -java TriangleSum -``` -### Example -```bash -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ javac TriangleSum.java -/perlweeklychallenge-club/challenge-100/ziameraj16/java$ java TriangleSum -Enter number of rows in the triangle -4 -Enter comma separated elements of line 1 -1 -Enter comma separated elements of line 2 -2,4 -Enter comma separated elements of line 3 -6,4,9 -Enter comma separated elements of line 4 -5,1,7,2 -Output: 8 -``` - -## Kotlin Solution - -To compile the code run -```java -kotlinc TriangleSumKotlin.kt -``` -To run -```java -kotlin TriangleSumKotlin -``` -### Example -```bash -/perlweeklychallenge-club/challenge-100/ziameraj16/kotlin$ kotlinc TriangleSumKotlin.kt -/perlweeklychallenge-club/challenge-100/ziameraj16/kotlin$ kotlin TriangleSumKotlin -Enter number of rows in the triangle -4 -Enter comma separated elements of line 1 -3 -Enter comma separated elements of line 2 -3,1 -Enter comma separated elements of line 3 -5,2,3 -Enter comma separated elements of line 4 -4,3,1,3 -Output: 7 +/perlweeklychallenge-club/challenge-101/ziameraj16/java$ javac OriginContainingTriangle.java +/perlweeklychallenge-club/challenge-101/ziameraj16/java$ java OriginContainingTriangle +Enter first coordinates +0,1 +Enter second coordinates +1,0 +Enter third coordinates +2,2 +Output: 0 +/perlweeklychallenge-club/challenge-101/ziameraj16/java$ java OriginContainingTriangle +Enter first coordinates +1,1 +Enter second coordinates +-1,1 +Enter third coordinates +0,-3 +Output: 1 +/perlweeklychallenge-club/challenge-101/ziameraj16/java$ java OriginContainingTriangle +Enter first coordinates +0,1 +Enter second coordinates +2,0 +Enter third coordinates +-6,0 +Output: 1 ``` 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; + } +} |
