Javakurs/Übungsaufgaben/Palindrome: Unterschied zwischen den Versionen
Nighoo (Diskussion | Beiträge) (Änderung 17297 von 70.135.118.126 (Diskussion) rückgängig gemacht.) |
|||
(16 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | == Einleitung == | + | === Einleitung === |
− | Palindrome sind Wörter, die | + | [[wikipedia:Palindrom|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 [[wikipedia:Palindrom#Wortpalindrome|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. | ||
− | == Tipps == | + | 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 |
− | Speichern der Länge eines Strings | + | |
+ | '''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"; | String palindrom = "rentner"; | ||
int length = palindrom.length(); | int length = palindrom.length(); | ||
− | Lesen des n-ten Buchstabens | + | '''Lesen des n-ten Buchstabens''' |
int n = 5; | int n = 5; | ||
char c = palindrom.charAt(n); | 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 [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/Terminal.java Klasse Terminal] in das Verzeichnis kopieren, in welchem du dein Programm schreibst und die Methode <code>Terminal.readString()</code> benutzen, um eine Tastatureingabe von der Kommandozeile zu lesen. Wenn dich interessiert, warum das so funktioniert, so erfährst du es [[Javakurs2007/Terminal | 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 ;) | ||
+ | |||
+ | <!-- | ||
+ | Als kleine Starthilfe folgt ein Beispiel, wie so ein Kommentar formatiert sein könnte. Mit "Vorschau zeigen" kannst du dir ansehen, was deine Änderung bewirken würde, ohne wirklich etwas zu ändern. | ||
+ | Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;) | ||
+ | |||
+ | ==== Robert ==== | ||
+ | Na mal schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll. | ||
+ | --> | ||
+ | |||
+ | [[Kategorie:Java]] | ||
+ | [[Kategorie:Java_Aufgaben]] |
Aktuelle Version vom 2. Januar 2012, 22:49 Uhr
Inhaltsverzeichnis
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 ;)