diff options
Diffstat (limited to 'challenge-120/abigail/java')
| -rw-r--r-- | challenge-120/abigail/java/ch-1.java | 27 | ||||
| -rw-r--r-- | challenge-120/abigail/java/ch-2.java | 45 |
2 files changed, 72 insertions, 0 deletions
diff --git a/challenge-120/abigail/java/ch-1.java b/challenge-120/abigail/java/ch-1.java new file mode 100644 index 0000000000..66cf3ee4e7 --- /dev/null +++ b/challenge-120/abigail/java/ch-1.java @@ -0,0 +1,27 @@ +// +// See ../README.md +// + +// +// Run as: ln ch-1.java ch1.java; javac ch1.java; java ch1 < input-file +// + +import java.util.*; + +public class ch1 { + public static void main (String [] args) { + Scanner scanner = new Scanner (System . in); + try { + while (true) { + int num = scanner . nextInt (); + System . out . println ( (num & 0x55) << 1 + | (num & 0xAA) >> 1); + } + } + catch (Exception e) { + // + // EOF + // + } + } +} diff --git a/challenge-120/abigail/java/ch-2.java b/challenge-120/abigail/java/ch-2.java new file mode 100644 index 0000000000..9ffeb322ee --- /dev/null +++ b/challenge-120/abigail/java/ch-2.java @@ -0,0 +1,45 @@ +// +// See ../README.md +// + +// +// Run as: ln ch-2.java ch2.java; javac ch2.java; java ch2 < input-file +// + +import java.util.*; + + +public class ch2 { + public static void main (String [] args) { + int DIFF_PER_MINUTE = 11; // Half degrees + int MIN_PER_HOUR = 60; + int FULL_CIRCLE = 720; // Half degrees + Scanner scanner = new Scanner (System . in); + try { + while (true) { + String line = scanner . nextLine (); + String [] parts = line . split (":"); + int hours = Integer . parseInt (parts [0]); + int minutes = Integer . parseInt (parts [1]); + + int angle = (DIFF_PER_MINUTE * + (hours * MIN_PER_HOUR + minutes)) % FULL_CIRCLE; + + if (2 * angle >= FULL_CIRCLE) { + angle = FULL_CIRCLE - angle; + } + + System . out . print (angle / 2); + if (angle % 2 == 1) { + System . out . print (".5"); + } + System . out . print ("\n"); + } + } + catch (Exception e) { + // + // EOF + // + } + } +} |
