N200 Simpel klasser (Terning)
Du skal skabe en tom konsol app med en klasse Terning (i en fil for sig selv) med følgende medlemmer:
- En offentlig (public) int værdi
- En metode Ryst() som sætter værdi til en tilfældig værdi mellem 1-6
- Se senere
- En default constructor der sætte værdi til 1
- En custom constructor der sætter værdien på terningen til den angivne værdi. Hvis værdien er <1 eller >6 skal der smides en Exception med teksen “Forkert værdi”
For at skabe et tilfældigt tal mellem 1-6 i Ryst-metoden kan du benytte System.Random.
Test klassen af i Main ved at skabe instanser og kalde Ryst.
Terning t1 = new Terning();
Console.WriteLine(t1.Værdi); // 1
t1.Ryst();
Console.WriteLine(t1.Værdi); // tilfældig værdi
Terning t2 = new Terning(2);
Console.WriteLine(t2.Værdi); // 2
t2.Ryst();
Console.WriteLine(t2.Værdi); // tilfældig værdi
Terning t3 = new Terning(8); // Fejl: Forkert værdi
Klassediagram
Prøv også at tilføje et klassediagram (class diagram) og se klassen visuelt.
Klik for at se et forslag til en løsning
class Program
{
static void Main(string[] args)
{
Terning t1 = new Terning();
Console.WriteLine(t1.Værdi); // 1
t1.Ryst();
Console.WriteLine(t1.Værdi); // tilfældig værdi
Terning t2 = new Terning(2);
Console.WriteLine(t2.Værdi); // 2
t2.Ryst();
Console.WriteLine(t2.Værdi); // tilfældig værdi
Terning t3 = new Terning(8); // Fejl: Forkert værdi
}
}
class Terning
{
public int Værdi;
public Terning()
{
this.Værdi = 1;
}
public Terning(int værdi)
{
if (værdi < 1 || værdi > 6)
throw new ApplicationException("Forkert værdi");
this.Værdi = værdi;
}
public void Ryst() {
System.Random rnd = new Random();
this.Værdi = rnd.Next(1, 7);
}
}