Göm menyn

Seminarium 3 - En sak i taget

Kapitel som ska ha lästs:

Uppgift: Booleska värden

Lösningarna kan innehålla strängar, listor, siffror, funktioner, variabler och operatorer Variabler kan antas vara initierade.

Skriv ett uttryck som innehåller minst två booleska operatorer och som: 1. alltid är sant (kallas tautologi) 2. alltid är falskt 3. innehåller samtliga booleska operatorer och som alltid är sant 4. använder operatorn in 5. endast är sant om en variabel innehåller ett heltal inom ett visst intervall

Uppgift: If som sats

Bilda grupper på minst fem personer. Skriv tillsammans en funktion som givet två heltal som representerar månad och dag skriver ut namnet på den i gruppen som sedan hade födelsedag.

Uppgift: If som uttryck och booleska operationer

Vilket värde har följande uttryck?

  1. False if True else True
  2. 1 if not True and False else 2
  3. 1 if not (True and False) else 2
  4. 3 and 4 if 3 or 0 else 4 and 3
  5. "True" if True > False else "False"

Uppgift: Game of Life

Game of Life's regler är som följande:

  • En levande cell med 0-1 levande grannar dör av ensamhet
  • En levande cell med 4-8 levande grannar dör av trängsel
  • En död cell med 3 levande grannar återföds
  • Alla övriga celler är oförändrade.

Denna formulering är ej optimal för kodning. Förbättra formuleringen så att samma regler gäller men med dessa saker i åtanke:

  • Du bör inte behöva kolla cellens tillstånd om du inte måste
  • När du hittat ett visst antal grannar kan du kunna sluta räkna
  • Minimera antalet regler
  • Reglerna ska vara atomära (ej delbara) på samma sätt som reglerna ovan
  • Reglerna ska tillsammans vara fullständiga, alla fall ska täckas

Sidansvarig: Peter Dalenius
Senast uppdaterad: 2016-08-17