123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- public class LoopFun
- {
-
- /**
- * Given a number, return the factorial of that number.
- * For example, given 5, the factorial is 5 x 4 x 3 x 2 x 1 which should return 120.
- * @param number
- * @return the factorial of the number
- */
- public int factorial(int number){
- int factorial = 1;
-
- for ( int i = 1; i <= number; i++) {
-
- factorial = i * factorial;
-
- } return factorial;
- }
-
- /**
- * Given a phrase, get the acronym of that phrase. Acronym is the combination of
- * the first character of each word in upper case.
- * For example, given "Ruby on Rails", this method will return "ROR"
- * @param phrase
- * @return Upper case string of the first letter of each word
- */
- //get first letter of each word in string
- //turn letter into upper case
- //returen acronym
- public String acronym(String phrase) {
- StringBuilder acronym = new StringBuilder();
- acronym.append(phrase.charAt(0));
-
- for (int i = 0; i < phrase.length(); i++) {
- if(Character.isWhitespace(phrase.charAt(i))) {
- acronym.append(phrase.charAt(i + 1));
- }
- }
- return acronym.toString().toUpperCase();
- }
-
- /**
- * To prevent anyone from reading our messages, we can encrypt it so it will only be readable by its
- * intended audience. This method encrypt the message by shifting the letter by 3 characters. If the character is
- * at the end of the alphabet, it will wraps around.
- * For example:
- * 'a' => 'd'
- * 'w' => 'z'
- * 'x' => 'a'
- * 'y' => 'b'
- * @param word
- * @return the encrypted string by shifting each character by three character
- */
- public String encrypt(String word) {
- String alpha = "abcdefghijklmnopqrstuvwxyz";
-
- StringBuilder encryptedWord = new StringBuilder();
-
- for (int i= 0; i < word.length(); i++) {
- char letter = word.charAt(i);
- int index = 0;
-
- if (alpha.indexOf(letter + 3) == -1) {
- index = ((alpha.indexOf(letter) -26) + 3);
-
- }else {
- index = alpha.indexOf(letter + 3);
- }
- encryptedWord.append(alpha.charAt(index));
- }
-
- return encryptedWord.toString();
- }
- }
|