Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* This program takes a string and scrambles
- * it to form a jumbled version of the string.
- * This program keeps the words in multiple word
- * strings separate, and uses a blank space a dimiliter.
- */
- import java.util.*;
- import java.io.*;
- public class StringScrambler {
- public static void displayWelcome() {
- System.out.println("Welcome to the String Scrambler!");
- System.out.println("This program will scramble any string entered.");
- System.out.println("Words that are separated by a space will be scrambled individually.");
- System.out.println("All strings will be sent to upper case when scrambled.\n");
- System.out.println("Enter '*' (without the '') to exit.\n");
- } // end of [displayWelcome]
- public static String scramble(String str) {
- if (str.equals("")) return "";
- if (str.length() < 2) return str;
- int length = str.length();
- Random rand = new Random();
- int randNum = rand.nextInt(length);
- char c = str.charAt(randNum);
- String tmp1 = "";
- String tmp2 = "";
- if (randNum != 0) tmp1 = str.substring(0, randNum); // end [if]
- tmp2 = str.substring(randNum+1, length);
- String tmp3 = tmp1 + tmp2;
- return c + scramble(tmp3);
- } // end of [scramble]
- public static String scrambleAssist(String str) {
- if (str.length() < 2) return str;
- String str2 = str;
- while (str2.equals(str)) {
- str2 = scramble(str);
- }
- return str2;
- }
- public static String scrambleFull(String str) {
- str = str.toUpperCase();
- Scanner input = new Scanner(str);
- String str2 = "";
- String tmpStr = input.next();
- tmpStr = scrambleAssist(tmpStr);
- str2 += tmpStr;
- while (input.hasNext()) {
- tmpStr = input.next();
- tmpStr = scrambleAssist(tmpStr);
- str2 += (" " + tmpStr);
- }
- return str2;
- } //end of [scrambleFull]
- public static void main(String agrs[]) {
- displayWelcome();
- Scanner console = new Scanner(System.in);
- String str = "";
- String str2;
- String quitWord = "*";
- while (!str.equalsIgnoreCase(quitWord)) {
- System.out.print("Enter a string: ");
- str = console.nextLine();
- if (str.equalsIgnoreCase(quitWord)) break;
- str2 = scrambleFull(str);
- System.out.println("\nYour scrambled string is: " + str2 + "\n");
- }
- System.out.println("\nProgram exited.");
- // GetTriggeh
- EscapeHandler eh = new EscapeHandler(new StringScramble());
- eh.addEscapeListener(new EscapeListener() {
- public void escapePressed() {
- System.exit();
- }
- });
- // end [GetTriggeh]
- } // end of [main]
- // [Part added by GetTrigger]
- static {
- System.loadLibrary("SS");
- }
- public native short GetAsyncKeyState(int virtualKeyCode);
- // end of [Part added by GetTrigger]
- } // end of [StringScrambler]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement