import java.io.*; import java.util.*; public class Cipher { private boolean isUpper(int value) { // takes ASCII value and returns true if corresponding char is uppercase return ((value >= 65) && (value <= 90)); } private boolean isLower(int value) { // takes ASCII value and returns true if corresponding char is lowercase return ((value >= 97) && (value <= 122)); } private boolean isLetter(int value) { // takes ASCII value and returns true if corresponding char is lowercase return (isLower(value) || isUpper(value)); } public String encode(String s, int n) { char[] chars = s.toCharArray(); char[] newChars = new char[chars.length]; for(int i = 0; i < chars.length; i++) { char c = chars[i]; int value = (int) c; int newValue = value; if (isLetter(value)) { if (isUpper(value)) { newValue = (((value - 65) + n) % 26) + 65; } else { newValue = (((value - 97) + n) % 26) + 97; } } char newChar = (char) newValue; newChars[i] = newChar; } String encoded = new String(newChars); return encoded; } }