Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Javakurs/Übungsaufgaben/Palindrome: Unterschied zwischen den Versionen

K (Aufgabenstellung)
K (Link entfernt um es Jahresunabhängig zu machen)
Zeile 11: Zeile 11:
 
* Wenn das Wort ein Palindrom ist, sieht das ausgegebene Wort wieder genau so aus, wie die Eingabe. (otto => otto)
 
* Wenn das Wort ein Palindrom ist, sieht das ausgegebene Wort wieder genau so aus, wie die Eingabe. (otto => otto)
 
* Das Programm soll nun prüfen, ob das Wort ein Palindrom war oder nicht und eine entsprechende Meldung ausgeben.
 
* Das Programm soll nun prüfen, ob das Wort ein Palindrom war oder nicht und eine entsprechende Meldung ausgeben.
* Überlege dir zuerst, wie in [[Javakurs2007/Vortrag04|Vortrag 4]] gelernt, wie du das Programm schreiben willst, z.B. welche Methoden du brauchst und was diese tun. Solltest du gar keine Ahnung haben, wie man das Problem angehen könnte, dann lass dir einfach von einen Tutor deines Vertrauens einen Tipp geben.
+
* Überlege dir zuerst, wie in Vortrag 4 gelernt, wie du das Programm schreiben willst, z.B. welche Methoden du brauchst und was diese tun. Solltest du gar keine Ahnung haben, wie man das Problem angehen könnte, dann lass dir einfach von einen Tutor deines Vertrauens einen Tipp geben.
  
 
Hinweis: Der Vergleich von Strings mit == funktioniert nicht. Da müsst ihr euch selbst etwas überlegen, oder euren Tutor fragen. Siehe auch der Abschnit 'Tipps' auf dieser Seite
 
Hinweis: Der Vergleich von Strings mit == funktioniert nicht. Da müsst ihr euch selbst etwas überlegen, oder euren Tutor fragen. Siehe auch der Abschnit 'Tipps' auf dieser Seite

Version vom 19. März 2010, 22:00 Uhr

Einleitung

Palindrome sind Wörter, die rückwärts und vorwärts gleich sind, z.B. Rentner.

Später brauchst du solche Palindrome als Eingabewerte für das Programm, das du schreiben sollst. In der Wikipedia gibt es dafür eine Liste mit Palindromwörtern.


Aufgabenstellung

  • Schreibe ein Programm, das ein Wort aus Kleinbuchstaben auf dem Bildschirm umgedreht ausgibt. (hallo => ollah)
  • Wenn das Wort ein Palindrom ist, sieht das ausgegebene Wort wieder genau so aus, wie die Eingabe. (otto => otto)
  • Das Programm soll nun prüfen, ob das Wort ein Palindrom war oder nicht und eine entsprechende Meldung ausgeben.
  • Überlege dir zuerst, wie in Vortrag 4 gelernt, wie du das Programm schreiben willst, z.B. welche Methoden du brauchst und was diese tun. Solltest du gar keine Ahnung haben, wie man das Problem angehen könnte, dann lass dir einfach von einen Tutor deines Vertrauens einen Tipp geben.

Hinweis: Der Vergleich von Strings mit == funktioniert nicht. Da müsst ihr euch selbst etwas überlegen, oder euren Tutor fragen. Siehe auch der Abschnit 'Tipps' auf dieser Seite

Fortgeschritten:

  • Lies das umzudrehende Wort von der Konsole ein.
  • Passe das Programm nun so an, dass es auch Wörter die mit Großbuchstaben beginnen als Palindrome erkennt (Otto).

Tipps:

Speichern der Länge eines Strings

String palindrom = "rentner";
int length = palindrom.length();

Lesen des n-ten Buchstabens

int n = 5;
char c = palindrom.charAt(n);

Lesen von der Konsole

Wenn ihr beim Ausführen eures Programms in der Konsole einen Parameter mit übergebt, so findet ihr ihn an Position [0] im String-Array eurer main-Methode wieder.

Beispiel:

java Palindrome rentner

-> arguments[0] enthält rentner.


Du kannst auch die Klasse Terminal in das Verzeichnis kopieren, in welchem du dein Programm schreibst und die Methode Terminal.readString() benutzen, um eine Tastatureingabe von der Kommandozeile zu lesen. Wenn dich interessiert, warum das so funktioniert, so erfährst du es hier.

Kommentare

Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)