User Tools

Site Tools


linuxbog:java:java-klasser-dice
Linux - Friheden til at programmere i Java: Version 0.7.20040516 - 2020-12-31
forrige Kapitel 5. Definition af klasser næste

5.4. En Terning-klasse

Lad os tage et andet eksempel, en terning. Den vigtigste egenskab ved en terning er dens værdi (dvs. antallet af øjne på siden, der vender opad lige nu) mellem 1 og 6.

Figur 5-4. Java

{linuxbog:java:Nordfalk615387.png}

//// En klasse der beskriver 6-sidede terninger// public class Terning
{ //// den side der vender opad lige nu//  //int værdi;//  //// konstruktør//  //public Terning()// {
    kast(); //// kald kast() der sætter værdi til noget fornuftigt// } //// metode til at kaste terningen//  //public void kast()// { //// find en tilfældig side// double tilfældigtTal = Math.random();
    værdi = (int) (tilfældigtTal * 6 + 1);
  } //// giver en beskrivelse af terningen som en streng//  //public String toString()// {
    String svar = ""+værdi; //// værdi som streng, f.eks. "4"// return svar;
  }
}

Her er et program, der bruger et Terning-objekt til at slå med, indtil vi får en 6'er:

public class BenytTerning
{
  public static void main(String args[])
  {
    Terning t;
    t = new Terning(); //// opret terning//  //// Slå nu med terningen indtil vi får en sekser// boolean sekser = false;
    int antalKast = 0;

    while (sekser==false)
    {
      t.kast();
      antalKast = antalKast + 1;
      System.out.println("kast "+antalKast+": "+t.værdi);
      if (t.værdi == 6) sekser = true;
    }

    System.out.println("Vi slog en 6'er efter "+antalKast+" slag.");
  }
}
kast 1: 4
kast 2: 2
kast 3: 6
Vi slog en 6'er efter 3 slag.

5.4.1. Opgaver

  1. Skriv et program, der rafler med to terning-objekter, indtil der slås en 6'er.
  2. Skriv et program, der rafler med fire terninger, indtil der slås tre eller fire 6'ere. Udskriv antal øjne for hver terning.
  3. Skriv et program, der rafler med 12 terninger, og hver gang udskriver øjnene, summen af øjnene og hvor mange 6'ere der kom. Brug Vector-klassen til at holde styr på terningerne.
  4. Lav en Moent-klasse der repræsenterer en mønt med 2 sider (du kan tage udgangspunkt i Terning.java). Lav metoden krone(), der returnerer true eller false. Lav et program, der kaster en mønt 100 gange og tæller antal gange, det fik krone.

forrige hjem næste
Konstruktører op Relationer mellem objekter
linuxbog/java/java-klasser-dice.txt · Last modified: by 127.0.0.1

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

Brug af AI : Al tekst kán være uddrag af AI genereret tekst og kan være fejlbehæftet.
AI kan lave fejl og det kan mennesker også, men al tekst er gennemgået af et menneske for fejl, og personlig bias kan være tilføjet.