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
220
Vastaukset
- 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
Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa
En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod225164- 254348
- 272461
- 342254
- 371998
- 151918
En ole koskaan kokenut
Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka191597- 121521
Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...
Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons211247Kerranki asiat oikein
Ilkka ja muut pienpuolueeet...teitte hyvän työn kun valitsitte pätevän henkilön virkaan eikä kepulle passelia!! Jatkakaa101174