2016-11-20 4 views
1

Ich schreibe ein Programm, das ein Wort verquirlen muss. Zuerst lese ich das Wort rückwärts mit .reverse. Dann habe ich die Zeichenfolge in ein charArray umgewandelt. Ich werde eine for-Schleife erstellen, um herauszufinden, ob der erste Buchstabe "A" ist und wenn es dann ist, muss ich sehen, ob der nächste Buchstabe kein "A" ist. wenn es nicht ist, dann soll ich die zwei Buchstaben tauschen. Wenn einer der beiden Buchstaben bereits vertauscht wurde, können sie nicht erneut ausgetauscht werden. Einige Beispiele sind Input: „TAN“ Ausgabe: „ATN“ Input: „ALACTRIC“ Ausgabe: „AALCTRIC“ Input: "Fork" Ausgabe: "Fork"swapping zwei Buchstaben in einer unbekannten Zeichenfolge in Java

Hier ist mein Code so weit: Ich kann nicht Finde heraus, was du in die for-Schleife schreiben sollst. Vielen Dank!

import java.util.Scanner; 

public class scrambleWordRetry { 
    public static void main(String[] args) 
     { 
     } 
    public static String scramble(Random random, String inputString) 
    { 
     Scanner scan = new Scanner(System.in); 
     System.out.println("Please enter a word to scramble."); 
     inputString = scan.nextLine(); 

     char a[] = inputString.toCharArray(); 

     for(int i=0 ; i<a.length-1 ; i++) 
      { 

      } 
     return inputString;  
    } 
} 
+0

Ihr Code tut im Moment nichts, da Sie in der Hauptmethode 'scramble()' nicht aufrufen. – JohnnyAW

+0

Vieles von dem, was Sie gefragt haben, ist ein guter Pseudocode für das, was Sie tun müssen, aber Sie haben noch nicht versucht, alles selbst zu implementieren. Auch eine Randnotiz: Warum inputString als Parameter verwenden, wenn Sie ihm sofort einen Wert zuweisen. Ich würde es entweder als Parameter entfernen, oder in der Zeichenfolge außerhalb der Methode lesen (ich würde dies bevorzugen, da dies Ihre Methode für jede Zeichenfolge funktioniert, nicht nur eine über einen Scanner eingelesen) – chatton

+0

Hausaufgabe Projekt? – brummfondel

Antwort

0

Ich hoffe, dass dieser Code nützlich ist für Sie

Scanner x = new Scanner(System.in); 
    String str = x.next(); 
    System.out.println("Before Swapping" + str); 
    str = scramble(str); 
    System.out.println("After Swapping " + str); 
} 

public static String scramble(String inputString) { 
    char s[] = inputString.toCharArray(); 
    for (int i = 1; i < s.length; i++) { 

     if (s[i] == 'A' || s[i] == 'a') { 
      char temp = s[i - 1]; 
      s[i - 1] = s[i]; 
      s[i] = temp; 

     } 
    } 
    return new String(s); 
} 

dann, wenn Sie Eingabe 'ALACTRIC' der Ausgang wird 'AALCTRIC', 'Tan = ATN', 'Gabel = Gabel' .

Verwandte Themen