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
212
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
- 1472589
En kai koskaan saa sinua
Koska et usko että riitäisit minulle. Olet aina pitänyt itseäsi liian risana ja heikkona. Katkot korkeutesi, ja poraat k1541659Terveystalon lääkärit ylilaskuttaneet
Tämän pörriäiset osaavat, laskuttamisen. Terveystalo myöntää asian. https://www.hs.fi/suomi/art-2000011134269.html "K1331633Saran ökytyyli käänsi katseita.
On nyt kyllä Sara kasvoistaan, kuvan perusteella todellakin pyöristynyt ainakin kuvan perusteella.1491358- 661338
The Summit Suomi: Maxie avaa hyytävästä tilanteesta kuvauksissa: "Veri roiskui ja tajusi, että..."
Oletko seurannut The Summit Suomea? Tykkäätkö vai et tai mitä mieltä ylipäätään olet sarjasta? Moni katsoja on kaikonnut131180Työttömille lusmuille luvassa lisää keppiä
Hallitus aikoo kiristää velvoitteiden laiminlyönnistä seuraavia työttömyysturvan karensseja ensi vuodesta alkaen. Hall2821165- 156976
Miksi ihmeessä?
Erika Vikman diskattiin, ei osallistu Euroviisuihin – tilalle Gettomasa ja paluun tekevä Cheek22924Tiedän kaiken sinusta ja kaikesta
Tiedän miten kärsit. Tiedän millanen oikeesti oot. Tiedän miksi valehtelit, tiedän miksi satutit mua. Tiedän mitä tapaht58889