public class Asunto {
private int huoneita;
private int nelioita;
private int neliohinta;
public Asunto(int huoneita, int nelioita, int neliohinta) {
this.huoneita = huoneita;
this.nelioita = nelioita;
this.neliohinta = neliohinta;
}
public boolean suurempi(Asunto verrattava) {
if (this.nelioita < verrattava.nelioita) {
return false;
} else {
return true;
}
}
public int hintaero(Asunto verrattava) {
if (this.neliohinta > verrattava.neliohinta) {
this.neliohinta = (this.neliohinta * this.nelioita) - (verrattava.neliohinta * verrattava.nelioita);
return this.neliohinta;
}
if (this.neliohinta == verrattava.neliohinta && this.nelioita > verrattava.nelioita) {
return (verrattava.neliohinta * verrattava.nelioita) - (this.neliohinta * this.nelioita);
}
if (this.neliohinta == verrattava.neliohinta && this.nelioita == verrattava.nelioita
|| this.huoneita > verrattava.huoneita) {
}
return (verrattava.neliohinta * verrattava.nelioita) - (this.neliohinta * this.nelioita);
}
public boolean kalliimpi(Asunto verrattava) {
if (this.neliohinta < verrattava.neliohinta) {
return false;
}
if (this.neliohinta == verrattava.neliohinta && this.nelioita > verrattava.nelioita) {
return false;
}
if (this.neliohinta == verrattava.neliohinta && this.nelioita == verrattava.nelioita
|| this.huoneita > verrattava.huoneita) {
}
return true;
}
}
-------------------------------------------------------------------------------------------------------
public class Main {
public static void main(String[] args) {
// voit kirjoittaa testikoodia tänne
Asunto eiraYksio = new Asunto(1, 20, 1000);
Asunto kallioKaksio = new Asunto(2, 30, 2000);
Asunto jakomakiKolmio = new Asunto(2, 23, 1500);
System.out.println(eiraYksio.suurempi(kallioKaksio));
System.out.println(jakomakiKolmio.suurempi(kallioKaksio));
System.out.println("");
System.out.println(eiraYksio.hintaero(kallioKaksio));
System.out.println(kallioKaksio.hintaero(eiraYksio));
System.out.println("");
System.out.println(eiraYksio.kalliimpi(kallioKaksio));
System.out.println(jakomakiKolmio.kalliimpi(kallioKaksio));
}
}
Hintaero kohta ei toimi testeissä ja pitäisi tulostaa tyyliin: 22500 ja 40000 mutta testit näyttää 1165500. Että mikä siinä kusee?
Asuntovertailun hintaero
5
268
Vastaukset 5
- plörtsis
Jotain huomioita
1. hintojen käsittely olisi varmasti paljon helpompaa jos Asunnolla olisi metodi vaikkapa "laskeHinta" joka palauttaa kyseisen asunnon hinnan.
2. suurempi metodista voit poistaa turhat if lausekkeet kokonaan tyyliin
return this.nelioita >= verrattava.nelioita
3. hintaero metodissa muokkaat asunnon neliohintaa. Joko se on väärä toiminnallisuus tai metodin nimi on väärä.. luulenpa että hintaeron laskeminen helpottuu tekemällä tuon laskeHinta metodin joten ei siitä sen enempää
4. mikä merkitys on muuttujalla huoneita? Ei vaikuta hintaan mutta käytät joissain vertailuissa - javailija
Koska en tosiaan osaa sitä kohtaa tehdä niin pistin sen huoneita vaan siihen kohtaan ja ei varmasti vaikuta mitään kunhan laitoin ja ohjeissa sanotaan, että neliöt kertaa neliöidenhinnan itseisarvo. Mutta katotaan jos sen saisi toimimaan.
- javailija
Tekisitkö tänne oman versiosi tuosta jos vaikka se toimisi ja laita se sitten tänne.
- plörtsis
Sori, mutta en tee toisten kotitehtäviä :)
- purtsis
No älä tee mitään ja sitten ei tule mitään ja tämä ei ole kotitehtävä. Voi katsoa itse täältä: http://mooc.cs.helsinki.fi/ohjelmointi/materiaali-k2013/viikko-5 ja etsi komennolla mennä tehtävään 87.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 921602
- 841085
Miksi kumppaniehdokkaan oma elämä on teille ongelma?
Täällä monesti kuulee vaatimuksia siitä, että kumppaniehdokkaalla ei saisi olla lemmikkejä, lapsia, kavereita, eksiä, su3971023- 68995
Oikea nainen
On äärimmäisen naisellinen, pienikokoinen, kapeaharteinen, pienet kapeat kasvot, paksut huulet, kauniit hiukset, upeat t177944- 94861
- 64633
Olen pahoillani mies ihan kaikesta
Et sinä ole edes tehnyt mitään väärää. Eihän kenestäkään ole pakko tykätä. Pyydän anteeksi kaikkea häiriköintiä, joka on60622Minä olen käyttänyt mustan magian riittejä ja taikoja aiheuttaakseni epäonnea ja pahaa joillekin
Ne jutut on toimineet. Olen harjoittanut tätä parisenkymmentä vuotta170613- 37608