Grundkurs i programmering, kurstent 18.10 2011/AW Skriv upptill på varje papper kursens namn och tentdatumet, samt ditt namn, studentnummer (eller personbeteckning) och din signatur. Varje svar (1, 2, 3) skall skrivas på ett skilt pappersark! 1. Förklara kort och exakt följande begreppspar, samt ge åskådliga programexempel av dem: Hänvisa inte till dina svar till andra uppgifter i ditt svar. a. tabellindex och tabellelement b. metodspecifikation och metodanrop c. formell parameter och sann parameter d. konstruktor och accessor e. elementtyp och referenstyp (10 poäng) 2. En saftautomat har två behållare: en vattentank och en tank med saftkoncentrat. Saften framställs genom att blanda en del koncentrat med nio delar vatten. Programmera klassen Saftautomat för att förverkliga saftautomaten. Konstruktorn och accessorn tolkar negativa parametrar som noll. Klassens API: public Saftautomat(double vattenVolym, double saftkoncentratVolym) skapar en saftautomat där behållarnas volymer anges som parametrar. Behållarna är tomma då saftautomaten är ny. public double tillsattVatten(double mangd) tillsätter vatten i vattentanken. Metoden returnerar som sitt värde det vatten som inte rymdes i behållaren. Den returnerar alltså noll om allt vatten rymdes. public double tillsattSaftkoncentrat(double mangd) tillsätter saftkoncentrat i saftkoncentrattanken. Metoden returnerar som sitt värde det saftkoncentrat som inte rymdes i behållaren. Den returnerar alltså noll om allt saftkoncentrat rymdes. public boolean lagaSaftportion() lagar saft av vattnet och saftkoncentratet. Storleken på en portion är 0,2 enheter. Om det inte finns tillräckligt med råvara returnerar metoden värdet false. Om saften lyckades returnerar metoden värdet true. Faktum är alltså att metoden försöker minska på vattenförrådet med 0,18 enheter och saftförrådet med 0,02 enheter! public String toString() ger som sitt värde en teckensträng i klartext som beskriver saftautomatens status. Skriv också ett huvudprogram som utförligt beskriver hur man skapar och använder Saftautomat-objekten. Detta presentationsprogram behöver och skall inte läsa någon information från användaren. (10 poäng) 3. Gör ett program, som först frågar efter antalet namn och sedan efter namnen ett och ett. Inmatningarna läses antingen från standardinmatningsflödet eller via popup-fönster - du kan själv bestämma vilken metod programmet använder. Programmets uppgift är att mata ut namnen i standardutmatningsflödet i den "alfabetiska ordning" som String-klassens accessor compareTo() ger. (10 poäng)