Bräuchte dringend Hilfe bei einer Hausaufgabe, allerdings scheint es von der Eklärung her etwas umfangreicher zu sein, weshalb ich das gerne über skype machen würde. zu bieten hätte ich ewige dankbarkeit und 5€ von einer paysafecard
Edit:
ok ich versuchs trotzdem mal zu machen
die 2 sachen waren gegeben, jetzt kommt was ich schon gemacht habe, bzw. bearbeiten soll
Zur Aufgabenstellung
a) gemacht
Implementieren Sie eine Schnittstelle Vergleichbar, die eine Methode
boolean istKleiner(Vergleichbar other)
besitzt. Bei Implementierung der Schnittstelle Vergleichbar soll die Methode true genau dann zurückliefern,
wenn dieses Vergleichbar-Objekt kleiner ist als das übergebene Objekt other.
b) teilweise gemacht
Implementieren Sie eine Klasse Tarif, die Tarife von Stromanbietern realisiert. Die Klasse implementiert die
Schnittstelle Vergleichbar (näheres siehe unten). Die Klasse Tarif besitzt
• einen Grundpreis (double)
• den aktuellen Verbrauch in kwh (double)
• den aktuellen Tarif in Cent (double)
• den Namen des Stromanbieters (String)
Außerdem besitzt die Klasse Tarif das folgende Verhalten:
• Einen Konstruktor, dem Parameter zur Initialisierung des Namen und des Grundpreises übergeben werden.
Der aktuelle Verbrauch wird mit 0 und der aktuelle Tarif mit dem Wert des Grundpreises initialisiert.
• Eine Methode void berechneTarif(double verbrauch). Jede Unterklasse, die Tarif erweitert, setzt
den aktuellen Verbrauch auf den Wert des übergebenen Parameters und berechnet den aktuellen Tarif in
Abhängigkeit des Grundpreises und des aktuellen Verbrauchs.
Hinweis: Beachten Sie, dass die Methode den aktuellen Tarif neu setzt.
weitere Informationen unter https://www.isis.tu-berlin.de/2.0/course/view.php?id=2442 2InfTech WS 2014/15 Übungsblatt 9 und 10 (Block 2)
• Eine Methode istKleiner(Vergleichbar other), die true genau dann zurückliefert, wenn der Tarif
dieses Objekts kleiner ist als der Tarif des übergebenen Objekts. Ist other kein Objekt der Klasse
Tarif, so soll stets der Wert false zurückgeliefert werden. Verwenden Sie den instanceof-Operator
und Casting.
c) ahnungslos
Implementieren Sie eine Unterklasse Nuon der Klasse Tarif, die den Tarif des Stromanbieters Nuon realisiert.
Der Tarif von Nuon berechnet sich gemäß der folgenden Formel:
T ari f = Grund preis +
5 ∗ Verbrauch2
1000
d) ahnungslos
Implementieren Sie eine Unterklasse Vattenfall der Klasse Tarif, die den Tarif des Stromanbieters Vattenfall
realisiert. Der Tarif von Vattenfall berechnet sich gemäß der folgenden Formel:
T ari f =
Grund preis : Verbrauch < 1000
Grund preis + 15 ∗ Verbrauch : 1000 <= Verbrauch < 4000
Grund preis + 25 ∗ Verbrauch : 4000 <= Verbrauch
e) ahnungslos
Ergänzen Sie die vorgegebene Klasse TarifRechner um eine Methode
public Tarif getBestTarif(double verbrauch)
die den Stromanbieter mit dem kleinsten Tarif in Abhängigkeit des Verbrauchs zurückliefert. Verwenden Sie
dazu die Methoden berechneTarif() und istKleiner() der Klasse Tarif.
Edit:
ok ich versuchs trotzdem mal zu machen
Java:
/**
* Diese Klasse demonstriert einen Tarifrechner fŸr den besten Stromtarif.
*/
public class DemoTarifRechner {
public static void main(String[] args) {
// Tarife
Tarif[] tarife = {
new EPrimo("EPrimo", 500.0),
new Nuon("Nuon", 529.0),
new Vattenfall("Vattenfall", 499.0)
};
// Tarifrechner
TarifRechner tr = new TarifRechner(tarife);
// Einlesen des monatlichen Verbrauchs von der Kommandozeile
double verbrauch = Double.parseDouble(args[0]);
// Ermittlung des konstenguenstigten Tarifs
Tarif bestTarif = tr.getBestTarif(verbrauch);
// Ausgabe
System.out.print("Guenstigter Tarif bei einem Verbrauch von ");
System.out.println(verbrauch + " kwh:");
System.out.println("Anbieter: " + bestTarif.getName());
System.out.println("Tarif : " + bestTarif.getTarif() + " Cent");
}
}
Java:
/**
* Diese Klasse implementiert den Tarif des Stromanbieters EPrimo.
*/
public class EPrimo extends Tarif {
/**
* Konstruktor
* @param name - Name des Stromanbieters
* @param grundpreis - Grundpreis
*/
public EPrimo(String name, double grundpreis) {
super(name, grundpreis);
}
/**
* Berechnet Tarif in AbhŠngigkeit des uebergebenen Verbrauchs und des
* Grundpreises. Diese Methode setzt den Verbrauch auf den Ÿbergebenen Wert
* und den Tarif auf den berechneten Tarif.
*
* @param kwh - Verbrauch in kwh
*/
public void berechneTarif(double kwh) {
setKwh(kwh);
setTarif(getGrundpreis() + 20.0*kwh);
}
}
die 2 sachen waren gegeben, jetzt kommt was ich schon gemacht habe, bzw. bearbeiten soll
Java:
/**
* Diese Klasse implementiert einen Tarifrechner zum Vergleich von Tarifen
* verschiedener Stromanbieter.
* @author brijneshjain
*
*/
public class TarifRechner {
// Array von Tarifen verschiedener Stromanbieter
private Tarif[] tarife;
/*
* Konstruktor zur Initialisierung der Tarife.
*
* Parameter: Tarife[] tarife - Array von Tarifen
*/
public TarifRechner(Tarif[] tarife) {
this.tarife = tarife;
}
public Tarif getBestTarif(double verbrauch) {
}
Java:
public interface Vergleichbar {
public boolean istKleiner(Vergleichbar other);
}
Java:
public class Tarif implements Vergleichbar {
private double grundpreis, verbrauch, tarif;
private String name;
public Tarif(String name, double grundpreis) {
this.name = name;
this.grundpreis = grundpreis;
verbrauch = 0;
tarif = grundpreis;
}
public void berechneTarif(double verbrauch) {
}
public boolean istKleiner(Vergleichbar other) {
if(other instanceof Tarif) {
if(tarif < ((Tarif)other).tarif) {
return true;
}
return false;
} else {
return false;
}
}
}
Java:
public class Nuon extends Tarif {
Java:
public class Vattenfall extends Tarif {
Zur Aufgabenstellung
a) gemacht
Implementieren Sie eine Schnittstelle Vergleichbar, die eine Methode
boolean istKleiner(Vergleichbar other)
besitzt. Bei Implementierung der Schnittstelle Vergleichbar soll die Methode true genau dann zurückliefern,
wenn dieses Vergleichbar-Objekt kleiner ist als das übergebene Objekt other.
b) teilweise gemacht
Implementieren Sie eine Klasse Tarif, die Tarife von Stromanbietern realisiert. Die Klasse implementiert die
Schnittstelle Vergleichbar (näheres siehe unten). Die Klasse Tarif besitzt
• einen Grundpreis (double)
• den aktuellen Verbrauch in kwh (double)
• den aktuellen Tarif in Cent (double)
• den Namen des Stromanbieters (String)
Außerdem besitzt die Klasse Tarif das folgende Verhalten:
• Einen Konstruktor, dem Parameter zur Initialisierung des Namen und des Grundpreises übergeben werden.
Der aktuelle Verbrauch wird mit 0 und der aktuelle Tarif mit dem Wert des Grundpreises initialisiert.
• Eine Methode void berechneTarif(double verbrauch). Jede Unterklasse, die Tarif erweitert, setzt
den aktuellen Verbrauch auf den Wert des übergebenen Parameters und berechnet den aktuellen Tarif in
Abhängigkeit des Grundpreises und des aktuellen Verbrauchs.
Hinweis: Beachten Sie, dass die Methode den aktuellen Tarif neu setzt.
weitere Informationen unter https://www.isis.tu-berlin.de/2.0/course/view.php?id=2442 2InfTech WS 2014/15 Übungsblatt 9 und 10 (Block 2)
• Eine Methode istKleiner(Vergleichbar other), die true genau dann zurückliefert, wenn der Tarif
dieses Objekts kleiner ist als der Tarif des übergebenen Objekts. Ist other kein Objekt der Klasse
Tarif, so soll stets der Wert false zurückgeliefert werden. Verwenden Sie den instanceof-Operator
und Casting.
c) ahnungslos
Implementieren Sie eine Unterklasse Nuon der Klasse Tarif, die den Tarif des Stromanbieters Nuon realisiert.
Der Tarif von Nuon berechnet sich gemäß der folgenden Formel:
T ari f = Grund preis +
5 ∗ Verbrauch2
1000
d) ahnungslos
Implementieren Sie eine Unterklasse Vattenfall der Klasse Tarif, die den Tarif des Stromanbieters Vattenfall
realisiert. Der Tarif von Vattenfall berechnet sich gemäß der folgenden Formel:
T ari f =
Grund preis : Verbrauch < 1000
Grund preis + 15 ∗ Verbrauch : 1000 <= Verbrauch < 4000
Grund preis + 25 ∗ Verbrauch : 4000 <= Verbrauch
e) ahnungslos
Ergänzen Sie die vorgegebene Klasse TarifRechner um eine Methode
public Tarif getBestTarif(double verbrauch)
die den Stromanbieter mit dem kleinsten Tarif in Abhängigkeit des Verbrauchs zurückliefert. Verwenden Sie
dazu die Methoden berechneTarif() und istKleiner() der Klasse Tarif.
Zuletzt bearbeitet von einem Moderator: