Laboration 11 – Snake eyes och Yatzy

1. Programkod att testköra

Skapa ett nytt projekt för varje labb du gör! Använd gärna "Labb x - labbnamn" som projektnamn så är det sen lätt att hitta.

Skriv in följande kod i kodblocket för Main-metoden.

Alternativ 1

	int tärning1 = 0;
	int antalFörsök = 0;
	Random randomObjekt = new Random();

	while (tärning1 != 6)
	{
		// Simulerar ett tärningskast genom att slumpa mellan 1 och 6:
		tärning1 = randomObjekt.Next(1, 7);
		antalFörsök = antalFörsök + 1;
		Console.WriteLine("Försök " + antalFörsök + ": " + tärning1);
	}

	Console.WriteLine("Det behövdes " + antalFörsök + " försök för att få en sexa!");
	Console.ReadLine();
	

Samma som ovan, fast med en annan lösning när det gäller loopen:

Alternativ 2

	int tärning1 = 0;
	int antalFörsök = 0;

	while (true)
	{
		// Simulerar ett tärningskast genom att slumpa mellan 1 och 6:
		tärning1 = randomObjekt.Next(1, 7);
		antalFörsök = antalFörsök + 1;
		Console.WriteLine("Försök " + antalFörsök + ": " + tärning1);
		if (tärning1 == 6)
		{
			break;
		}
	}

	Console.WriteLine("Det behövdes " + antalFörsök + " försök för att få en sexa!");
	Console.ReadLine();

Kör programmet (F5).

2. Frågor att fundera på

1. Hur skiljer sig de båda lösningarna ovan? Tycker du bättre om någon av lösningarna och i så fall varför?

2. Vad betyder tärning1 != 6 ?

3. Till vad används variabeln antalFörsök?

4. Hur slumpar man ett tal? (Två steg.)

5. Hur kan man avbryta en "oändlig" loop?

3. Uppgifter att jobba med

1. Gör ett program som i en oändlig loop, t.ex. while (true), simulerar två tärningskast (eller ett kast med två tärningar) och presenterar resultatet på följande sätt:
Försök 1: 4, 2
Försök 2: 1, 3
.

2. Fortsättning på uppgift 1.
När det blir två 1:or ska loopen sluta och programmet skriva ut "Snake eyes! Det behövdes x försök".

Tips: Man kan ha en oändlig loop, t.ex. while (true), och i slutet av loopen ha ett villkor som kollar om båda tärningarna är värdet 1 och i så fall avbryta loopen med break.

3. Gör ett program som genererar kast med fem tärningar. Visa alla försök.
Försök 1: 3, 2, 5, 2, 6
Försök 2: 1, 6, 6, 3, 4
...

När alla fem tärningarna får samma värde ska loopen sluta och programmet skriva ut "Yatzzzzy".

Tips: Kör med en "oändlig loop" och i den en if-sats som kollar om alla tärningarna visar samma siffra.
T.ex. kan du kolla om alla tärningar är lika med tärning1.

4. Bra att läsa

Inget nytt, men repetera gärna tidigare genomgångar.

5. Viktiga ord att minnas

Inget nytt, men repetera gärna tidigare ord

Författare: Håkan Lundberg, Cybergymnasiet

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

Scroll to top