Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
prog2_03 [2019-09-13 14:02]
Daniel Viström
prog2_03 [2019-10-25 12:44] (current)
Daniel Viström
Line 21: Line 21:
 Ta filerna Index.java, Cup.java, Die.java från din workspace på datorn. Packa ihop dessa till en zip-fil och skicka in. \\ Ta filerna Index.java, Cup.java, Die.java från din workspace på datorn. Packa ihop dessa till en zip-fil och skicka in. \\
  
-2.+2*. 
 +**Fish**\\ 
 +Skriv en klass //Fish// som beskriver en fisk.\\ 
 +Klassen ska ha: 
 +  * attributen //sort//, //length// (i cm) och //weight// (i g). 
 +  * en //​konstruktor//​ som har tre parametrar som tar in startvärden till de tre attributen. 
 +  * 3 //​get-metoder//​ som returnerar "​värden"​ för varsitt attribut. Inga set-metoder ska finnas. 
 +  * en metod som returnerar //priset// på fisken (i hela kronor) utifrån dess vikt (120 kr/kg oavsett fisksort). 
 +  * en metod som returnerar //​fraktkostnaden//​ för fisken. Längden (i cm) multipliceras med faktorn 0,15 och vikten (i g) med faktorn 0,013. Därefter adderas värdena. Fraktkostnaden blir dock minst 12 kr. 
 +  
 +Gör en klass //​FishTest//​ som testar klassen Fish.\\ 
 +Klassen ska ha en //​mainmetod//​ som gör följande:​ 
 +  * Skapar en lista av typen //​ArrayList<​Fish>//​. 
 +  * Läser in fiskar från en //textfil// där varje rad innehåller data för en fisk. För varje rad som läses ska ett nytt fiskobjekt skapas och läggas in i listan med fiskar. 
 +  Ex:  
 +  Torsk 37 865 
 +  Gös 26 634 
 +  osv. 
 + 
 +  * Går igenom listan och skriver ut en //tabell// med information om fiskarna. 
 +  Ex:  
 +  Sort    Längd (cm) Vikt (g) Pris (kr) Frakt (kr) 
 +  ---------------------------------------------- 
 +  Torsk     ​37 ​        ​865 ​     104        17 
 +  Gös       ​26 ​        ​434 ​      ​52 ​       12 
 + 
 + 
 +3.
 **Arv** \\ **Arv** \\
 Klocka med alarm\\ Klocka med alarm\\
 {{::​uppgift1.pdf|Uppgift1}} \\ {{::​uppgift1.pdf|Uppgift1}} \\
 +<php>
 +/*
 {{::​testprogram.zip|Testprogram}} {{::​testprogram.zip|Testprogram}}
  
-3.+*/ 
 +</​php>​ 
 + 
 +4.
 **Interface** \\ **Interface** \\
 Skapa ett nytt interface i eclipse och kopiera in nedanstående kod. \\ Skapa ett nytt interface i eclipse och kopiera in nedanstående kod. \\
 Skapa en klass **MyQueue** som implementerar interfacet **IntQueue** där kön byggs upp av en array med heltal (int[ ]).\\ Skapa en klass **MyQueue** som implementerar interfacet **IntQueue** där kön byggs upp av en array med heltal (int[ ]).\\
 Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\ Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\
-Testa din klass med ett testprogram.+Testa din klass med ett testprogram. \\ 
 +I testklassen ska referenser till de köer som skapas vara av interfacets typ.
  
 <code java> <code java>
Line 53: Line 86:
 </​code>​ </​code>​
  
-4.+5.
 **Interface** \\ **Interface** \\
 Skapa ett nytt interface **IntStack** i eclipse. Fundera över vilka abstrakta metoder som ska vara med i interfacet.\\ Skapa ett nytt interface **IntStack** i eclipse. Fundera över vilka abstrakta metoder som ska vara med i interfacet.\\
 Skapa en klass **MyStack** som implementerar interfacet **IntStack** där stacken byggs upp av en array med heltal (int[ ]).\\ Skapa en klass **MyStack** som implementerar interfacet **IntStack** där stacken byggs upp av en array med heltal (int[ ]).\\
 Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\ Arrayens storlek ska hela tiden vara lika som det antal element den innehåller. \\
-Testa din klass med ett testprogram.+Testa din klass med ett testprogram. \\ 
 +I testklassen ska referenser till de stackar som skapas vara av interfacets typ.
  
-*5.+*6.
 **Arv, abstrakta klasser** \\ **Arv, abstrakta klasser** \\
 Robotar i labyrinter. \\ Robotar i labyrinter. \\
 {{: :​uppgift2.pdf|Uppgift2}} {{: :​uppgift2.pdf|Uppgift2}}