From 1a2d05559c676662bf880945f3ed913de526cc3d Mon Sep 17 00:00:00 2001 From: Nikita Karpov Date: Thu, 13 Dec 2018 22:52:31 +0300 Subject: [PATCH 1/2] -add enc; -add dec; --- .idea/misc.xml | 2 +- src/crypto/Crypto.java | 35 ++++++++++++++++++++++++++++++++++- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index a165cb3..cbb200f 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/src/crypto/Crypto.java b/src/crypto/Crypto.java index 51d57b7..7851fd1 100644 --- a/src/crypto/Crypto.java +++ b/src/crypto/Crypto.java @@ -5,6 +5,39 @@ public class Crypto { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); - // write your code here + + String target = scanner.nextLine(); +// String message = "Wabc"; + String message = scanner.nextLine(); + int offset = scanner.nextInt(); + + if(target.equals("enc")){ + System.out.println(enc(message, offset)); + } else if(target.equals("dec")){ + System.out.println(dec(message, offset)); + } + + } + public static String enc(String originalStr, int offset){ + return offsetAll(originalStr, offset); + } + + public static String dec(String originalStr, int offset){ + return offsetAll(originalStr, -offset); + } + public static String offsetAll(String originalStr, int offset){ + final int lettersStar = 97; + final int lettersAmount = 26; + + StringBuilder out = new StringBuilder(); + char[] letters = new char[originalStr.length()]; + originalStr.getChars(0, originalStr.length(), letters, 0 ); + + for (int letter : letters){ + letter = (letter + offset); + out.append((char)letter); + } + + return out.toString(); } } From 6c7b8f772fb144087700d4186455ad497ce7a8f5 Mon Sep 17 00:00:00 2001 From: Nikita Karpov Date: Fri, 14 Dec 2018 20:45:21 +0300 Subject: [PATCH 2/2] Using command-line arguments --- src/crypto/Crypto.java | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/crypto/Crypto.java b/src/crypto/Crypto.java index 7851fd1..1a5cf53 100644 --- a/src/crypto/Crypto.java +++ b/src/crypto/Crypto.java @@ -6,10 +6,22 @@ public class Crypto { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); - String target = scanner.nextLine(); -// String message = "Wabc"; - String message = scanner.nextLine(); - int offset = scanner.nextInt(); + String target; + if(args.length > 1 && args[0].equals("-mode")){ + target = args[1]; + } else{ + target = "enc"; + } + + String message; + int offset; + if(args.length == 6 && args[4].equals("-data")){ + message = args[5]; + offset= Integer.parseInt(args[3]); + } else{ + message = scanner.nextLine(); + offset = scanner.nextInt(); + } if(target.equals("enc")){ System.out.println(enc(message, offset));