4422 UWP Dice

Uppgift 2 - Dice

Lärandemål

  • Kunna slumpa tal
  • Kunna göra klass-variabler med static
  • Kunna skriva metoder som inte tar parametrar
  • Repetera hur man skriver if-satser

Uppgift 2A

Om du gillar getters och setters laddar du ner följande kod från GitHub.

Dice med getters och setters på GitHub.

Om du gillar egenskaper (eng. properties) laddar du ner följande kod från GitHub.

Dice med properties på GitHub.

Skillnaden mot koden för huset är att en knapp har lagts till samt att klassen Picture har bytt namn till Dice. Därtill har slump lagts till i Dice.

Skriv om koden så att en tärning ritas, se nedan. Alla sju prickarna ska visas. Senare ska du skriva kod som bara visar vissa prickar. Börja med att göra sju objektvariabler, en för varje prick. Döp dem till dot0, dot1, ..., dot6. Vi kommer att ha nyttan av den här namngivningen senare.

Placera prickarna som nedan.

  1   4
  5 0 6
  3   2

Slumpa tal

Nu är det dags att fylla metoden Roll med innehåll. Pseudokod följer.

  Slumpa ett tal och lägg det i den lokala variabeln `numberOfDots`
  (Redan gjort i koden)

  Göm alla prickar.

  Visa rätt antal prickar

Det sista kan lösas tjusigt på följande vis. Det förutsätter att du har placerat dot0 - 6 som följder.

  1   4
  5 0 6
  3   2

  Om number är udda
      Visa dot0, d.v.s. pricken i mitten
  Om number är större eller lika med 2
      Visa dot1 och 2.
  Om number är större eller lika med 4
      Visa även dot 3 och 4
  Om number är 6
      Visa även dot 5 och 6.

Testa att tärningen kan kastas.

Reflektion

Rita klass-diagram för klassen Dice. Gör det på papper eller med digitalt hjälpmedel.

Rita objekt-diagram för klassen Dice. Även Cirkel-objekten ska ritas.