Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Plain Text by asdsad ( 14 years ago )
/* Programm zur Erzeugung eines Char-Arrays mit druckbaren ASCII-Zeichen
* welches dieses ausgibt, das Array mischt und einen eingegebenen String in
* ein Char-Array unwandelt und dieses dann substituiert und anschließend
* ausgibt
* Christopher Reiter, Jan Kudik
*/
import java.util.Random;
public class Geheimtext {
public static void main(String[] args) {
// Array mit Char Werten von char(32) bis char (126) erzeugen und ausgeben
char[] array1;
array1 = druckZeichen();
printCharArray(array1);
System.out.println("________________________________");
System.out.println();
// Erzeugtes Array mischen und ausgeben
array1 = mischen(array1);
printCharArray(array1);
System.out.println("________________________________");
System.out.println();
// String Eingeben, in Char-Array übergeben und substituieren und ausgeben
System.out.println("Bitte Text eingeben:");
String eingabe = TextIO.getlnString(); // einlesen des Eingabetextes
char[] eingabe_array = eingabe.toCharArray(); // umwandeln String zu Char-Array
char[] ausgabe_array = new char[eingabe_array.length]; // Ausgabe Array initialisieren
ausgabe_array = substituieren(eingabe_array, array1, ausgabe_array);
printCharArray(ausgabe_array);
} // end of main
// Methode zum erzeugen eines Arrays mit allen Druckbaren ASCII-Zeichen
public static char[] druckZeichen(){
char[] zeichenListe = new char[96];
int azeichen = 0;
for ( int i = 32; i < 127; i++ ) {
char zeichen = ( char )(i);
zeichenListe[i-31] = zeichen;
}
return zeichenListe;
} // end of druckZeichen
// Methode zur Ausgabe eines übergebenen Char-Arrays
public static void printCharArray(char[] zeichenListe1){
for (int i = 0; i < zeichenListe1.length; i++ ) {
if (!(i % 32 == 0)) {
System.out.print(zeichenListe1[i]);
} else {
System.out.println(zeichenListe1[i]);
}// end of if
} // end of for
System.out.println();
} // end of printCharArray
// Methode zum mischen eines übergebenen Char-Arrays
public static char[] mischen(char[] arrayMischen){
char temp;
for (int i = 0; i < arrayMischen.length; i++ ) {
int rZahl = randomZahl();
temp = arrayMischen[i];
arrayMischen[i] = arrayMischen[rZahl];
arrayMischen[rZahl] = temp;
} // end of for
return arrayMischen;
} // end of mischen
// Methode zur erzeugung einer Zufallszahl
public static int randomZahl(){
Random rand = new Random ();
int zufall = rand.nextInt (96); // Zufallszahlen im Intervall [0,100)
return zufall;
}
// Methode zum Substituieren eines Char-Arrays
public static char[] substituieren(char[] eingabe_Array, char[] gemischt, char[] Ausgabe){
for (int i = 0; i < eingabe_Array.length ; i++ ) {
int index = (int) eingabe_Array[i] - 32;
char zeichen_neu = gemischt[index];
System.out.print(zeichen_neu);
} // end of for
return Ausgabe;
}
} // end of class Geheimtext
Revise this Paste