Till KTH:s startsida Till KTH:s startsida

Ändringar mellan två versioner

Här visas ändringar i "Laboration 8" mellan 2016-10-03 15:42 av Linda Kann och 2016-10-07 11:13 av Linda Kann.

Visa < föregående | nästa > ändring.

Laboration 8

cat

I denna labb ska du


* Lära dig att använda domaren Kattis.
* Lära dig att skriva testprogram med unittest.
Registrera dig på Kattis Gör så här:


* Följ länken: tildah16 i Kattis
* Logga in (längst upp till höger) med ditt KTH-id
* Registrera dig på tildah16 i Kattis (I am a student taking this course and I want to register for it on Kattis.)
Lär dig använda Kattis
* Läs avsnittet Tutorials (1 och 2) i dokumentationen
* Lös problemet Hello
* Lös problemet A Different Problem
Molekyler Du ska implementera en syntax (se Föreläsning 10) för enkla molekyler, till exempel H2 eller Cr12. Programmet ska fungera enligt följande exempel:

Ge en molekyl: H2Formeln är syntaktiskt korrekt Ge en molekyl: cr12Saknad stor bokstavGe en molekyl: Cr0För litet tal vid radslutetGe en molekyl: Pb1För litet tal vid radslutetGe en molekyl: Mn4Formeln är sytaktiskt korrekt

Syntaxen besår av dessa fem regler:

<molekyl> ::= <atom> | <atom><num> <atom> ::= <LETTER> | <LETTER><letter> <LETTER>::= A | B | C | ... | Z <letter>::= a | b | c | ... | z <num> ::= 2 | 3 | 4 | ... Du ska inte kontrollera att bokstäverna bildar en verkligt atomnamn (det kommer i nästa labb), inte heller ska du undersöka om molekylen är rimlig kemiskt sett.

Läs igenom instruktionerna nedan och utför punkterna i ordning.


* Skriv en spec med namnen på de funktioner du behöver och en kommentar för varje funktion som beskriver vad funktionen ska göra.
* Gör en kopia av din LinkedQueue från labb 2, och lägg till metoden peek() som tittar på nästa värde i kön utan att plocka ut det.
* Gör ett eget särfall Syntaxfel som är subklass (ärver från) Exception.
* Skriv ett testprogram med unittest som ska kontrollera att funktionerna fungerar som avsett.
* Till sist - skriv själva funktionerna.
Redovisning Labben lämnas in på kurswebbsidan (se Inlämningsuppgifter i vänstermenyn) och redovisas muntligt av bägge gruppmedlemmarna.

Vid redovisningen ska du kunna


* Demonstrera hur Kattis används.
* Visa upp din spec med beskrivningar av funktionerna.
* Visa hur unittest används för testning av dina funktioner
* Förklara hur ditt program fungerar.
Betyg Denna labb kan endast ge betyg E. Du måste lämna in den och redovisa den i tid för att få göra labbarna för högre betyg i period 2.