Asuntovertailun hintaero

javailija

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?

5

225

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Suureksi onneksesi on myönnettävä

      Että olen nyt sitten mennyt rakastumaan sinuun. Ei tässä mitään, olen kärsivällinen ❤️
      Ikävä
      85
      1758
    2. Perusmuotoiset TV-lähetykset loppu

      Nyt sanoo useiden HD-muotoistenkin kanavien kohdalla äly-TV, ettei kanava ole käytössä, haluatko poistaa sen? Kanavia
      Apua aloittelijalle
      120
      1174
    3. YLE Äänekosken kaupunginjohtaja saa ankaraa arvostelua

      Kaupungin johtaja saa ankaraa kritiikkiä äkkiväärästä henkilöstöjohtamisestaan. Uusin häirintäilmoitus päivätty 15 kesä
      Äänekoski
      58
      1036
    4. No ei sun asunto eikä mikään

      muukaan sussa ole erikoista. 🤣 köyhä 🤣
      Ikävä
      62
      926
    5. Hyvin. Ikävää nainen,

      Että vainoat ja stalkkaat miestäni.onko tarkoituksesi ehkä saada meidät eroamaan?no,siinä et tule onnistumaan
      Ikävä
      74
      836
    6. Mitä mietit Honey?

      Kulta nainen ❤️❤️
      Ikävä
      57
      790
    7. Uskomaton tekninen vaaliliitto poimii rusinoita pullasta

      Korni näytösesitelmä menossa kaupunginvaltuustossa. Juhlia ei ole kokouksista tiedossa muilla, kuin monipuolue paikalli
      Pyhäjärvi
      78
      789
    8. Linnasuolla poliisi operaatio

      Kamalaa menoa taas meidän ihanassa kaupungissa. https://www.uutisvuoksi.fi/paikalliset/8646060
      Imatra
      29
      786
    9. Missä kaikessa olet erilainen

      Kuin kaivattusi? Voin itse aloittaa: en ole vegaani kuten hän. Enkä harrasta tietokonepelejä lainkaan.
      Ikävä
      39
      757
    10. Katsoin mies itseäni rehellisesti peiliin

      Ja pakko on myöntää, että rupsahtanut olen 😆. Niin se ikä saavuttaa meidät kaikki.
      Ikävä
      43
      756
    Aihe