Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Lortech
    addikt

    Értem. Tehát ha én paraméternek a main-ben negatív számot adok meg, akkor gyakorlatilag a feladat dob egy kivételt és ennyi. Ha pozitív számot, akkor tovább lép, kiírja a kerületet, területet. Amikor pedig tovább lép a main-ben ahhoz, hogy létrehozzon 2 kör objektumot, akkor is kivétel fog keletkezni, mivel az egyik az negatív sugár. És így ennyi is a feladat...Ha jól értelmezem.

    Ezekszerint túlbonyolítottam a feladatot. (amúgy a könyv szerzője a vizsgáztató tanár is :D GDF-re járok Kaczúr Sándor-hoz prog.technológiára :D ).

    egy lehetséges értelmezése a feladatnak:
    Nincs meghatározva, hol dobj kivételt, a konstruktorban ellenőrizd-e a paramétert, vagy a hívás előtt a mainben.
    Nincs meghatározva az sem, hogyan írasd ki, pl. lehetne olyan metódusa is a Kor osztálynak, ami egyből a kimenetre ír, nemcsak számol. Vagy lehet a mainben is csinálni a számolást és kiíratást is stb.
    0-t nempozitívnak vettem.
    ...
    public class Korkeruletterulet {

    public static void main(String[] args) {

    Kor kor = new Kor(12);
    System.out.format("%.2f sugarú kör kerülete: %.2f, területe: %.2f",
    kor.getSugar(),kor.getKerulet(),kor.getTerulet());
    kor = new Kor(-7.5);
    System.out.format("%.2f sugarú kör kerülete: %.2f, területe: %.2f",
    kor.getSugar(),kor.getKerulet(),kor.getTerulet());
    }
    }
    ...
    public class Kor
    {
    private double sugar;

    public Kor(double r) throws IllegalArgumentException
    {
    if (r <= 0)
    {
    throw new IllegalArgumentException("Nempozitív sugár!");
    }
    else
    {
    this.sugar = r;
    }
    }

    public void setSugar(double r) {
    this.sugar = r;
    }

    public double getSugar() {
    return sugar;
    }

    public double getKerulet()
    {
    return Math.PI * 2 * sugar ;
    }

    public double getTerulet()
    {
    return Math.PI * sugar * sugar;
    }
    }...

Új hozzászólás Aktív témák