Hallo,
ich habe ein Problem bei dem ich nicht weiter komme. Die Aufgabenstellung ist, dass ich ein Programm schreiben soll, wo ein Wort ver- und entschlüsselt werden soll mit der Caesar Methode. Es sollen ganz bestimmte Buchstaben und Sonderzeichen zur Ver- und Entschlüsselung verwendet werden. Mein Problem ist, dass ich es nicht hinbekomme, sobald ein Buchstabe oder Sonderzeichen, welches nicht definiert ist (z.B "ä"), das Programm mir eine Fehlermeldung, wie "Falsche Eingabe" ausgibt. Hat irgend einer ne Idee. Mit exeptions würde ich nicht so gerne arbeiten, da ich die nicht so wirklich verstehe...
Wenn mir jemand helfen könnte wäre echt cool, danke schonmal im Voraus...
Hier ist mein bisher erstellter Quelltext:
ich habe ein Problem bei dem ich nicht weiter komme. Die Aufgabenstellung ist, dass ich ein Programm schreiben soll, wo ein Wort ver- und entschlüsselt werden soll mit der Caesar Methode. Es sollen ganz bestimmte Buchstaben und Sonderzeichen zur Ver- und Entschlüsselung verwendet werden. Mein Problem ist, dass ich es nicht hinbekomme, sobald ein Buchstabe oder Sonderzeichen, welches nicht definiert ist (z.B "ä"), das Programm mir eine Fehlermeldung, wie "Falsche Eingabe" ausgibt. Hat irgend einer ne Idee. Mit exeptions würde ich nicht so gerne arbeiten, da ich die nicht so wirklich verstehe...
Wenn mir jemand helfen könnte wäre echt cool, danke schonmal im Voraus...
Hier ist mein bisher erstellter Quelltext:
Code:
public class Semesteraufgabe5
{
public static void starten ()
{
System.out.println ("Was willst du? Verschluesseln (V), entschluesseln (E) oder das Programm beenden (B)?");
String x = Tools.stringEingabe ();
if (x.equals("V"))
{
String e=verschluesseln ();
System.out.println(" "+e);
} //Menüerstellung
else
{
if (x.equals("E"))
{
String e=entschluesseln ();
System.out.println(" "+e);
}
else
{
if (x.equals("B"))
{
System.out.println ("Das Programm wurde beendet!");
}
else
{
System.out.println("Falsche Eingabe,nächster Versuch!");
System.out.println (" ");
starten ();
}
}
}
}
public static String entschluesseln()
{
System.out.println ("Bitte geben Sie das zu entschlüsselnde Wort ein!");
String text= Tools.stringEingabe ();
System.out.println (" ");
System.out.println ("Bitte geben Sie eine ganze Zahl ein!");
int zahl= Tools.intEingabe ();
zahl=zahl*-1;
if (zahl >76 || zahl<-76)
{
zahl = zahl % 76;
}
String a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 @.,:;?-()/=+´";
String e = " ";
for( int i=0; i<text.length(); i++ )
{
int p = a.indexOf( text.substring(i,i+1) );
p =p+ zahl;
if( p>=76 ) p=p-76;
else
{
if( p<0 ) p=p+76;
}
e = e+a.substring(p,p+1);
}
return e;
}
public static String verschluesseln()
{
System.out.println ("Bitte geben Sie das zu verschlüsselnde Wort ein!");
String text= Tools.stringEingabe ();
System.out.println (" ");
System.out.println ("Bitte geben Sie eine ganze Zahl ein!");
int zahl= Tools.intEingabe ();
if (zahl >76 || zahl<-76)
{
zahl = zahl % 76;
}
String a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 @.,:;?-()/=+´";
String e = " ";
for( int i=0; i<text.length(); i++ )
{
int p = a.indexOf( text.substring(i,i+1) );
p =p+zahl;
if( p>=76 ) p=p-76;
else
if( p<0 ) p=p+76;
e = e+a.substring(p,p+1);
}
return e;
}
public static void main (String [] args)
{
starten ();
}
}