TDDC68 Imperativ programmering i Ada
Projektmaterial
|
Allmänt om projektet (vad det skall innehålla m.m.)
I projektet är det meningen att ni skall arbeta i grupper om 2-3 personer (i undantagsfall kan vi gå med på 4 personer per grupp). Ni kan bilda grupper fritt inom eller utom klassen. Då projektet bygger på eget arbete och att laborationsdelen i kursen är avklarad är det lämpligt att grupperna bildas så att de som ingår i gruppen ligger på samma nivå. Projektet ger också en chans att öva lite mer inför tentan och bör därför genomföras så att alla får en vettig programmeringsuppgift att utföra. I det projekt ni skall genomföra skall följande delar finnas med: * Processhantering (tasks). Inte obligatorisk del, men detta ger enorma möjligheter till effektivisering inför redovisningen (tävlingen). För att projektet skall godkännas skall följande moment redovisas för er assistent: * Innan projektet startas: En specifikationsfil som visar att man förstått vilka moment som behöver hanteras vad det gäller den datastruktur som skall användas för att representera olika delar och figurer. Eventuellt blir detta flera paket. OBS! Skapa INTE "adb"-filen utan tänk igenom vad som behövs och hur ni skall lagra data. |
|||||||||||
| |
|||||||||||
|
TJa-biblioteket (fungerar endast på IDA)
Observera att detta paket inte är något som finns tillgängligt utanför IDA. Det är heller inte så att det skall användas till något kommersiellt då det i vissa fall är rent olämpliga konstruktioner som ligger i "botten". Det fungerar dock i våra nybörjarkurser. |
|||||||||||
| |
|||||||||||
|
Projektet är att implementera en lösare av en såkallad
träknut. Den knut vi kommer att ha som exempel i denna kurs
kallar för "Soma-kuben" och är egentligen inte en träknut, men
det spelar mindre roll. Vid demonstrationen kommer även en annan
variant att användas som har en lite annan uppsättning bitar.
Se därför till att ni inte skapar ett program som endast klarar
de 7 bitar som finns i Soma-kuben.
Uppgiften är att skriva ett program som hämtar information från en server om hur de bitar man har tillgängliga ser ut (i er uppgift kommer ni dock att veta vilka bitarna är redan i början av kursen, men detta skall ni inte ta hänsyn till i ert program) och sen ta reda på hur bitarna skall sättas ihop för att bilda en given figur.
Den givna figuren skall också hämtas från servern så det är inte givet från början vilken figur som skall genereras.
Ni skall INTE skapa servern i detta projekt. Den tillhandahåller vi.
Hur kommunikationen mellan server och klient skall se ut beskrivs i ett kommunikationsprotokoll. För att alla skall ha samma protokoll har detta givet nedan. En testserver finns att hämta här (går endast att köra på våra datorer dock).
Servern kommer att hämta in vilka delar och vilken figur som skall bildas från en datafil. Hur denna ser ut finns givet nedan.
När klienten kommit fram till en lösning på hur man skall placera de olika bitarna för att få fram den givna figuren skall den skicka in placeringen av bitarna till servern (servern kontrollerar att alla bitar finns med och att det är rätt figur förstås). |
|||||||||||
| |
|||||||||||
De filer som är givna under kursens gång är
De filer som kommer att användas under projektredovisningen är
|
|||||||||||
Sidansvarig: Torbjörn Jonsson
Senast uppdaterad: 2012-03-02
