From 58cee6336c4a2a9e816e213928a038ce3420274e Mon Sep 17 00:00:00 2001 From: SteffenLm <33038091+SteffenLm@users.noreply.github.com> Date: Thu, 27 Oct 2022 16:50:55 +0200 Subject: [PATCH 1/4] implement solution --- Coordinate.java | 26 ++++++++++++++++++++++++++ Exercise.java | 17 ++++++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 Coordinate.java diff --git a/Coordinate.java b/Coordinate.java new file mode 100644 index 0000000..3b3e349 --- /dev/null +++ b/Coordinate.java @@ -0,0 +1,26 @@ +public class Coordinate implements Comparable { + + private int x; + private int y; + + public Coordinate(int x, int y) { + this.x = x; + this.y = y; + } + + public int getX() { + return x; + } + + public int getY() { + return y; + } + + public double getDistanceToOriginPoint() { + return Math.hypot(x, y); + } + + public int compareTo(Coordinate c) { + return Double.valueOf(this.getDistanceToOriginPoint()).compareTo(c.getDistanceToOriginPoint()); + } +} diff --git a/Exercise.java b/Exercise.java index 3c092f9..8fc300d 100644 --- a/Exercise.java +++ b/Exercise.java @@ -1,6 +1,21 @@ +import java.util.ArrayList; +import java.util.Collections; + public class Exercise { public static void main(String[] args) { - // implement exercise here + ArrayList coordinates = new ArrayList<>(); + + coordinates.add(new Coordinate(3, 5)); + coordinates.add(new Coordinate(7, 6)); + coordinates.add(new Coordinate(2, 1)); + coordinates.add(new Coordinate(6, 8)); + coordinates.add(new Coordinate(1, 9)); + + Collections.sort(coordinates); + + for (Coordinate c : coordinates) { + System.out.println(c + ": " + c.getDistanceToOriginPoint()); + } } } From d0c05b931b70845e299616aea65f00a4098c8dc5 Mon Sep 17 00:00:00 2001 From: github-actions <> Date: Thu, 27 Oct 2022 14:51:21 +0000 Subject: [PATCH 2/4] Google Java Format --- Exercise.java | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Exercise.java b/Exercise.java index 8fc300d..aa7940a 100644 --- a/Exercise.java +++ b/Exercise.java @@ -4,18 +4,18 @@ public class Exercise { public static void main(String[] args) { - ArrayList coordinates = new ArrayList<>(); + ArrayList coordinates = new ArrayList<>(); - coordinates.add(new Coordinate(3, 5)); - coordinates.add(new Coordinate(7, 6)); - coordinates.add(new Coordinate(2, 1)); - coordinates.add(new Coordinate(6, 8)); - coordinates.add(new Coordinate(1, 9)); + coordinates.add(new Coordinate(3, 5)); + coordinates.add(new Coordinate(7, 6)); + coordinates.add(new Coordinate(2, 1)); + coordinates.add(new Coordinate(6, 8)); + coordinates.add(new Coordinate(1, 9)); - Collections.sort(coordinates); + Collections.sort(coordinates); - for (Coordinate c : coordinates) { - System.out.println(c + ": " + c.getDistanceToOriginPoint()); - } + for (Coordinate c : coordinates) { + System.out.println(c + ": " + c.getDistanceToOriginPoint()); + } } } From ab904e92ac236921cf455b846dd1c75a908cb5ec Mon Sep 17 00:00:00 2001 From: SteffenLm <33038091+SteffenLm@users.noreply.github.com> Date: Sat, 2 Mar 2024 10:44:57 +0100 Subject: [PATCH 3/4] fix solution accorcing to exercises --- Coordinate.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Coordinate.java b/Coordinate.java index 3b3e349..0aaf78d 100644 --- a/Coordinate.java +++ b/Coordinate.java @@ -21,6 +21,12 @@ public double getDistanceToOriginPoint() { } public int compareTo(Coordinate c) { - return Double.valueOf(this.getDistanceToOriginPoint()).compareTo(c.getDistanceToOriginPoint()); + if (getDistanceToOriginPoint() < c.getDistanceToOriginPoint()) { + return 1; + } else if (getDistanceToOriginPoint() > c.getDistanceToOriginPoint()) { + return -1; + } else { + return 0; + } } } From f875d37d22248fcfd3ec1414f6da41c819be6a98 Mon Sep 17 00:00:00 2001 From: Steffen Merk <33038091+SteffenLm@users.noreply.github.com> Date: Thu, 27 Feb 2025 16:11:54 +0100 Subject: [PATCH 4/4] fixed solution (#98) --- Coordinate.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Coordinate.java b/Coordinate.java index 0aaf78d..102e425 100644 --- a/Coordinate.java +++ b/Coordinate.java @@ -22,9 +22,9 @@ public double getDistanceToOriginPoint() { public int compareTo(Coordinate c) { if (getDistanceToOriginPoint() < c.getDistanceToOriginPoint()) { - return 1; - } else if (getDistanceToOriginPoint() > c.getDistanceToOriginPoint()) { return -1; + } else if (getDistanceToOriginPoint() > c.getDistanceToOriginPoint()) { + return 1; } else { return 0; }