OOP dag 7



4.5.2 Opgaver (så langt som du kan nå)

  1. Skriv et program, der vha. et Raflebaeger rafler med fire terninger, indtil der slås tre eller fire 6'ere. Udskriv antal øjne for hver terning.

  2. Skriv et program, der vha. et Raflebaeger rafler med 12 terninger og udskriver terningernes værdier, summen af værdierne, og hvor mange 6'ere der kom.

  3. Skriv et simpelt Yatzy-spil med fem terninger. Man kaster én gang og ser, om man har et par, to par, tre ens, hus (et par og tre ens, f.eks. 25225), fire ens eller fem ens.

Udvid Raflebaeger, så man kan spørge, om der er fire ens, med en fireEns()-metode:

  public boolean fireEns()
  { 
    ... 
  } 

Lav tilsvarende de andre metoder (toEns(), treEns(), toPar(), hus()...).
(vink: Gør flittigt brug af antalDerViser()-metoden)

Ret toString()-metoden, så den fortæller, om der var fem ens, hus eller lignende.

Lav et program (en klasse med en main()-metode), der rafler et Raflebaeger et par gange og skriver dets indhold ud. Her er et eksempel på, hvordan uddata kunne se ud:

1 4 4 3 4  : Tre ens
4 2 1 6 6  : Et par
2 6 2 2 6  : Hus
5 2 3 6 4  : Ingenting
2 3 4 5 4  : Et par
6 5 2 6 2  : To par
6 6 2 2 6  : Hus





Person-opgave

Afprøv BenytPerson, som bruger klassen Person, og forvis dig om, at du forstår, hvad der sker.

  1. Udfør de samme skridt fra BlueJ som findes i BenytPerson

  2. Udvid Person-klassen, så hver person også har en liste med fritidsinterresser, og foretag de nødvendige ændringer i konstruktøren.
    Vink: Gem listen af fritidsinteresser i en objektvariabel af typen ArrayList, og læg fritidsinteresserne ind som String-objekter.

  3. Lav et ArrayList-objekt i klassen BenytPerson, og læg en række Person-objekter ind i det.

  4. Udskriv alle Person-objekterne ved hjælp af en løkke.

  5. Udvid Person-klassen med en metoden public void fritid() . Metoden skal udskrive navn og alle fritidsinteresser for den aktuelle person.

  6. Ændr programmet, så det udskriver alle Person-objekternes navne og fritidsinteresser.