JAVA Programmieraufgabe mit Strings - bitte um Hilfe

Status
Nicht offen für weitere Antworten.
V

vupel

Gast
Hi Leute,

ich habe hier eine Aufgabe, die ich nicht lösen konnte. Ich habe zwar bisschen was hinbekommen, aber hilft nicht weiter.
Hier nun die Aufgabe:

__
Kennen Sie "Urmel aus dem Eis"? In diesem Kinderbuch-Klassiker geht es um einige Tiere, die auf einer insel Titiwu wohne und bei Professor Tibatong das Sprechen gelernt haben. alle diese Tiere haben allerdings einen kleinen Sprachfehler:
- Ping Pinguin kann das "sch" nicht sprechen und sagt statt dessen immer "pf", z. B. "guten Morgen, pfon ausgepflafen in deiner mupfel?"
-Wawa, der Waran, sagt statt "z" immer "tsch", z. B. "Intschwischen bin ich umgetschogen"
- Bei Seele-Fant, dem traurigen See-Alefanten, wird "i", "ie" sowie "e" zu einem "ö"; "ei" wird zu "eu" und "u" wird zu "o" (aber nicht in "au"). Ein Beispiel: "Ös könntö schön seun, traurögö Lödör zosammön zo söngön"

Sie haben die Aufgabe, Klassen für diese sprechende Tiere zu entwickeln. es ist folgende abstrrakte Oberklasse gegeben:

Code:
public abstract class SprechendesTier {
                   protected String name;

                   /** erzeugt ein Tier mit dem angegebenen Namen*/
                   public SprechendesTier (String name) {
                           this.name = name; }
        
                   /**gibt den Text mit den tierspezifischen Sprachfehlern über System.out aus*/

                   public abstract void spreche (String text); }

a) Definieren Sie dazu Unterklassen Pinguin, Waran und SeeElefant, die die Methode
Code:
spreche
passend implementieren.
b)Zerlegen Sie Ihre Lösung nun in zwei Pakete. Hier eine Klasse zum Test

Code:
/**
 * Test für sprechende Tiere
 */
public class TitiwuTest
{
    public static void main(String[] args) {
        SprechendesTier[] tierschule = new SprechendesTier[3];
        tierschule[0] = new Pinguin("Ping Pinguin");
        tierschule[1] = new Waran("Wawa");
        tierschule[2] = new SeeElefant("Seele-Fant");
        
        for (int i = 0; i < tierschule.length; i++) {
            tierschule[i].spreche("Guten Morgen, schon ausgeschlafen " 
                                 + "in deiner Muschel?");
        }              

        for (int i = 0; i < tierschule.length; i++) {
            tierschule[i].spreche("Inzwischen bin ich umgezogen");
        }              
         
        for (int i = 0; i < tierschule.length; i++) {
            tierschule[i].spreche("Es könnte schön sein, " +
                                  "traurige Lieder zusammen zu singen.");
        }              
        
    }  
}

Das Paket
Code:
tierschule
soll die Klassen
Code:
TitiwuTest
und
Code:
SprechendesTier
enthalten
Das Paket
Code:
tiere
soll die Klassen
Code:
Pinguin
,
Code:
Waran
und
Code:
SeeElefant
umfassen


Es ist eine ziemlich große Aufgabe, speziell Pakete und String, StringBuffer sollen damit geübt werden.

Ich wäre sehr dankbar, wenn einer dafür eine Lösung hätte.

Danke im Voraus
 
E

edgrar_u

Gast
ja die leute hier fühlen sich ausgenutzt , nach dem Motto mit den Schüchternen Computerfreaks kann mans ja machen ... ich mach dir die Hausaufgabe machen - gegen eine Aufwandsentschädigung . Von sagen wir 15,- EUR. Wenn du reiche Eltern hast kannst du ja sagen , das du damit nur ein bischen Gras kaufen gehst -
für die Ziege in deinem Schrank :lol:

Nein aber ernsthaft für so ein Entgeld wär ich wirklich zu sowas bereit , aber kostenlos fühl ich mich da schon ausgenutzt.
 

lin

Top Contributor
@edgrar_u
lol, "Entgeld"
aber hallo, die Aufgabe hat ja den Zweck, dass man dabei was lernt. Wenn du sie ihm löst, lernt er nix.

@vupel
Zeig doch mal irgendwie, dass du schon versucht hast die Aufgabe zu lösen: Code, Überlegungen, etc. Dann wird dir auch gern geholfen - und zwar unentgeldlich
 

SnooP

Top Contributor
Das ist imho übrigens eine ganz prima Aufgabe ;) - ich bin begeistert - alles Drin ;) ... hätte auch gerne solche Aufgaben am Anfang gehabt ;) ... aber nein wir mussten Primzahlenfinder basteln, oder sowas wie Graphen :)

by the way ... die Aufgabe ist weder groß noch schwer!
 

KSG9|sebastian

Top Contributor
1. die Aufgabe ist wirklich nicht schwer
2. und erst recht _nicht_ groß

Das sind 3 Klassen die ne Methode implementieren und nen Konstruktor mit nem Parameter "name" haben.
Das einzige was noch zu tun ist, ist halt das ersetzen von bestimmten Strings, und wenn du mal n bissl suchst, dann findest du tausende Tools um Strings in Strings zu ersetzen, ohne Patterns zu benutzen.

Siehe dazu:

org.apache.commons.lang.StringUtils
http://jakarta.apache.org/commons/lang/
 
R

Roar

Gast
DP hat gesagt.:
Roar hat gesagt.:
wir machen keine hausaufgaben *verschoben*

was sagen denn deine lehrer zu dieser einstellung? :lol:
isch bin der king of hausaufgaben-nich-machen-und-damit-durchkommen :bae:

@sebastian: ich glaub nicht die sollen die aufgabe selbst implementieren und nicht was benutzen was es shcon gibt :D
 

KSG9|sebastian

Top Contributor
Roar hat gesagt.:
@sebastian: ich glaub nicht die sollen die aufgabe selbst implementieren und nicht was benutzen was es shcon gibt

Hat er aber nicht geschrieben, oder ? ;d
Meine ehemalige Lehrerin wollte auch, dass wir ein Programm schreiben welches überprüft, ob ein eingegebenes Datum korrekt ist.

Aber mit der Lösung mit SimpleDateFormat war sie auch zufrieden.. ;D
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben