4 svar
135 visningar
Avokado12345 behöver inte mer hjälp
Avokado12345 131
Postad: 3 jan 2023 21:14

Uppgift med tärning

Jag är ny till programmering och jag bryr mig just nu inte så mycket om att komprimera koden och så, utan mest att faktiskt klara av att lösa uppgifter och få det att fungera, så håll det till godo :)

För den här uppgiften, gjorde jag såhär:

Men jag tror inte det blir rätt med antalen? Och här är det väl som att man kastar tre tärningar?

Här nedan fanns ett förslag på hur man kan lösa den:

Jag förstår dock inte varför/ vad som händer när man tar värden.pop(0)? och hade man lika gärna kunnat sätta värden = [0, 0 ,0] eller det vara -1? Har jag rätt med att de tar bort första elementet och sätter dit ett värde i slutet, så att det blir som en rullande lista och när alla värden är samma så blir three_in_a_row True och antal retuneras? 

Är min lösning helt fel, eller kan man ändra lite i den så att den också fungerar? (Eller blir koden väldigt lång då?)

Laguna Online 30472
Postad: 3 jan 2023 21:35

Din kod löser ett lite annat problem, nämligen hur många gånger man måste kasta tre tärningar samtidigt för att de ska visa samma.

Men här kastar man alltid en tärning i taget och jämför med de två senaste kasten. Så man måste komma ihåg vad de två senaste var. Det är det de har den lilla listan till, men man behöver inte använda pop osv. Det stämmer att det är en rullande lista.

0 hade man lika gärna kunnat använda som -1, för tärningen kan inte ge 0.

Fermatrix 7841 – Fd. Medlem
Postad: 3 jan 2023 22:15

Man använder listan likt en stack med pop. så om du har tråkigt och vill lära dig om nya användbara koncept, kika på vad datastrukturen stack är. 

Laguna Online 30472
Postad: 3 jan 2023 22:22
Dracaena skrev:

Man använder listan likt en stack med pop. så om du har tråkigt och vill lära dig om nya användbara koncept, kika på vad datastrukturen stack är. 

Notera att den pop de gör här är på början av listan, så den används inte som en stack i denna uppgift.

Jag skulle bara ha skrivit värden = värden[1:]

Fermatrix 7841 – Fd. Medlem
Postad: 3 jan 2023 22:41 Redigerad: 3 jan 2023 22:42

Juste, pop(0)  ser till att vi poppar elementet "längst ner". Så det blir lite knasigt.

Jag tycker dock det är skumt med pop, eftersom man struntar i värdet. Mef fscits lösning kan man likaväl ta bort elementet direkt. Pop(0) känns som en "cool" addition av lösaren.

Svara
Close