2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); S

Relevanta dokument
2 b) Följande finns definierat: public class Käk String titel = "Chili con carne"; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda("Svartpe

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl Hjälpmedel: En Javabok. För betyget godkänt krävs at

2 b) Följande finns definierat: public class Spel String titel = "Spel"; Dice[] tärningar = new Dice[10]; tärningar[0] = new Dice("Röd"); tärningar[1]

2 b) Följande finns definierat: import java.awt.*; public class Uppgift1b public static void main(string[] mupp) Color färg = Color.blue; Bil[] bilar

Klasser & klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler

Metodanrop, parametrar och

2 b) class Mat Haj mumsbit = new Haj(70); int tid = 200; double sälta = 0.7; if (färdig(mumsbit, tid, sälta)) System.out.println("Dags att äta hajen!"

2D1310, 2D1311 Programmeringsteknik Tentamen (1p) 3 maj 2001, kl

2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det rik

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Föreläsning 8 Programmeringsteknik och Matlab 2D1312/2D1305. Klass Object, instans av klass public/private Klassvariabler och klassmetoder

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Variabler som hör till enskilda objekt. Deklareras på översta nivån i klassen och i regel som private.

Föreläsning 3-4 Innehåll

2D1342 Programkonstruktion för F1, ht 2006

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Föreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Föreläsning 5-6 Innehåll

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Det är principer och idéer som är viktiga. Skriv så att du övertygar examinatorn om att du har förstått dessa även om detaljer kan vara felaktiga.

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

2D1339 Programkonstruktion för F1, ht 2003

Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Tentamen. Lösningsförslag

Del A (obligatorisk för alla)

Tentamen i Programmeringsteknik I

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12

public och private Obs: private inte skyddar mot access från andra objekt i samma klass.

DD1342 Programkonstruktion för F1,

F4. programmeringsteknik och Matlab

Tentamen i Programmeringsteknik I

Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

TENTAMEN OOP

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Malmö högskola 2008/2009 CTS

JAVA Mer om klasser och objektorientering

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 14

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)

Föreläsning 3: Abstrakta datastrukturer, kö, stack, lista

Tentamen. Grundläggande programmering i Java A 5p, DTAA

Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering

Fält av referenser. Konstruktorerna används för att skapa Bilar och Trafikljus.

Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Malmö högskola 2007/2008 Teknik och samhälle

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

2D1339 Programkonstruktion för F1, ht 2003

Kort om klasser och objekt En introduktion till GUI-programmering i Java

Malmö högskola 2007/2008 Teknik och samhälle

Administrativt. Programmeringsteknik för I1. Dagens program. Objektorienterad programmering

Översikt MERA JAVA OCH ECLIPSE. Uttryck och tilldelning. Uttryck och tilldelning. Uttryck och tilldelning. Uttryck och tilldelning

Tentamen i Grundläggande programmering STS, åk 1 fredag

Del A (obligatorisk för alla)

2D1339 Programkonstruktion för F1, ht 2004

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Typkonvertering. Java versus C

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }

Sammanfattning och repetition utgående från typiska tentamensuppgifter

OOP Tentamen

Tentamen i Grundläggande programmering STS, åk 1 fredag

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser.

Objekt och klasser - Introduktion

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

TENTAMEN OOP

Java, klasser, objekt (Skansholm: Kapitel 2)

OOP Objekt-orienterad programmering

Laboration 1 - Grunderna för OOP i Java

LÖSNINGSFÖRSLAG TENTAMEN

Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014

2D1310 Programmeringsteknik Tentamen (1p) lördag 29 april 2000 kl 14-17

Inkapsling tumregler. Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler. public och private

Tentamen i Programmeringsteknik I,, KandMa/Fy,

4 13 / %.; 8 </" '': " / //&' " " ' * TelefonKostnad +,-%&. #!" $% " &' . > / ' 5 /' * 13/ &' static Math 1+" &'/ % 12 "" static "' * 1 /") %& &

Datastrukturer. Erik Forslin. Rum 1445, plan 4 på Nada

Föreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser.

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

Tentamen i Programmeringsteknik I, ES,

Programmering A. Johan Eliasson

Design av en klass BankAccount som representerar ett bankkonto

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Programmering för språkteknologer II, HT2011. Rum

2I1049 Föreläsning 5. Objektorientering. Objektorientering. Klasserna ordnas i en hierarki som motsvarar deras inbördes ordning

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

TDDE10 TDDE11, 725G90/1. Objektorienterad programmering i Java, Föreläsning 2 Erik Nilsson, Institutionen för Datavetenskap, LiU

Tentamen. DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl Hjälpmedel: penna, suddgummi, linjal

PROGRAMMERING-Java TENTAMINA

Föreläsning 8: Exempel och problemlösning

Tentamen i Programmeringsteknik I

Transkript:

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för M1, K2, Media1 och I1 (1p) 16 december 2000 Hjälpmedel: En Javabok. System.out är ett objekt kopplat till skärmen, dvs samma sak som i labbarna kallas utdata. För betyget godkänt krävs att a- eller b-delen av varje fråga (uppgift 1 5) är rätt besvarad. Ett mindre fel som inte har med frågan att göra kan accepteras. Vi reserverar oss för eventuella lättnader av dessa krav. Skriv linje och årskurs (t ex M-00) på omslaget. Skriv svaren i ramarna i detta häfte. Glöm inte att skriva namn och personnummer på varje blad! Försök svara på både a-delen och b-delen! Lycka till! Uppgift 1: Parametrar a) Vad blir utskriften från följande program? int antalpistvakter = 3; String hotellnamn = "Svartlien"; String [] pistvakt = new String [antalpistvakter]; pistvakt [0] = "Sven"; pistvakt [1] = "Jan"; pistvakt [2] = "Olle"; foo(hotellnamn, antalpistvakter, pistvakt); System.out.println( hotellnamn + " : " + antalpistvakter +" pistvakter : " + " " + pistvakt[0] + " " + pistvakt[1] + " " + pistvakt[2] ); public static void foo(string inamn, int in, String [] ipv) inamn = inamn + " sporthotell"; ipv[0] = ipv[0] + " E"; ipv[1] = ipv[1] + " E"; ipv[2] = ipv[2] + " E"; in = in*4; System.out.println( inamn + " in = " + in + " " + ipv[0] + " " + ipv[1] + " " + ipv[2] ); Utskrift i metoden foo(): Utskrift i metoden main():

2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); System.out.println(namn + " " + moms + bodegan.hojtpris()); bodegan.hojtpris()); class Bodega // Diverse deklarationer private double pris; public Bodega() public void ändra(double imoms, String inamn) public double hojtpris() // Diverse deklarationer Något verkar vara fel i metoden ändra(), så programmeraren skriver ut värdena både före och efter anropet till ändra(). Ange för följande uttryck om utskriften kan ha ändrats efter anropet till metoden ändra(). Variabel Kan ha Motivering ändrats (j/n) namn moms bodegan.hojtpris()

Namn: Personnr: 3 Uppgift 2: Metodanrop Följande deklarationer av variabler och metoder är redan gjorda och inga andra får användas för att lösa uppgiften. Bodega bodegan = new Bodega(); // Koden i a-delen och b-delen hamnar här class Bodega private int happyhourfr = 22; private int happyhourto = 23; public Bodega() public void happyhour(int ifrom, int ito) happyhourfr = ifrom; happyhourto = ito; public int happyhourfrån() return happyhourfr; public int happyhourtill() return happyhourto; a) Markera vilka av följande satser (som utförs i main-metoden) som är riktiga respektive felaktiga och ange för de felaktiga varför de är fel. Om det finns fler fel i en sats behöver du bara ange ett av dessa. Sats Rätt/Fel Motivering Bodega baren = new bodegan; Bodega nybodega = new Bodega("Ole"); Bodega.happyHour(21, 22); bodegan.happyhour(21, 22); b) Skriv kod i main som på skärmen skriver ut när bodegan har "happy hour".

4 Uppgift 3: Arrayer och vektorer a) Skriv om nedanstående tre kommandon (satser) i metoden foo med hjälp av en slinga. public static void foo(string inamn, int in, String [] ipv) ipv[0] = ipv[0] + " E"; ipv[1] = ipv[1] + " E"; ipv[2] = ipv[2] + " E"; b) Skriv kod som visar hur följande satser skulle skrivas om vi valde att använda en Vector för att lagra pistvakternas namn istället för en String []. String [] pistvakt = new String [antalpistvakter]; pistvakt [0] = "Sven"; pistvakt [1] = "Jan"; System.out.println( " Pistvakt 1 : " + pistvakt[0] + " Pistvakt 2 : " + pistvakt[1] )

Namn: Personnr: 5 Uppgift 4: Klasser Svartlien Sporthotell har en skidlift som kallas dragbanan och har 800 m vajer. Skidliftar med denna konstruktion skall smörjas efter en viss tids driftstid, f n 50 timmar. Vi har följande kod: Skidlift dragbanan = new Skidlift(800); if (dragbanan.skallsmörjas(50)) System.out.println("Smörj draglinan!"); class Skidlift private int vajerlängd; private int timmarsedansmörjning = 0; //tid i timmar sedan sista smörjning public Skidlift(int il) // En ny skidlift med vajerlängden il // Här är koden för fråga a public boolean skallsmörjas(int eftertimmar) // Här är koden för fråga b // Här finns bl a en metod som ökar instansvariablen timmarsedansmörjning. a) Skriv koden för konstruktorn Skidlift(int il). Parmetern il används för att bestämma skidliftens vajerlängd. b) Skriv den kod som saknas i metoden skallsmörjas() i klassen Skidlift. Skidliften skall smörjas när parametern eftertimmar är mindre än drifttiden i instansvariablen timmarsedansmörjning.

6 Uppgift 5: Minnesbilder Betrakta följade program. Scooter scootern = new Scooter("Ockelbo", 20.0); scootern.tanka (15.0); // Läge a scootern.starta (); if (scootern.ärmotornigång()) System.out.println("Kör till Kalmatjåkko"); class Scooter private String fabrikat; private final double tankvolym; private double bensinvolym = 0; private boolean motornigång = false; public Scooter( String ifabrikat, double itankvolym) fabrikat = ifabrikat; tankvolym = itankvolym; public void tanka(double ivolym) bensinvolym = bensinvolym + ivolym; if (tankvolym < bensinvolym) bensinvolym = tankvolym; public void starta() motornigång = (0.0 < bensinvolym); public boolean ärmotornigång() // Läge b return motornigång ; I uppgifterna nedan skall du rita bilder av minnet vid två tillfällen under exekveringen. Bilderna skall innehålla samtliga klasser med tillhörande klassvariabler, samtliga metodanrop med lokala variabler (glöm inte this) och samtliga objekt med instansvariabler. Alla variablers värden skall framgå av bilden.

Namn: Personnr: 7 a) Rita en bild av minnet vid läge (a) i programmet. Klasser och klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler b) Rita en bild av minnet vid läge (b) i programmet. Klasser och klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler