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

Relevanta dokument
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: public class Käk String titel = "Chili con carne"; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda("Svartpe

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

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!"

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

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

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 3-4 Innehåll

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

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

Tentamen i Programmeringsteknik I

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

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

2D1342 Programkonstruktion för F1, ht 2006

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

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

Tentamen. Lösningsförslag

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 REPETITION & EXTENTA

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

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

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

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

OOP Objekt-orienterad programmering

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

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

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.

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

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

Föreläsning 5-6 Innehåll

Tentamen DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga)

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

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

DD1342 Programkonstruktion för F1,

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

Tentamen i Programmeringsteknik I, ES,

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

Tentamen i Programmeringsteknik I

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

String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning

Malmö högskola 2008/2009 CTS

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

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.

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

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

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

Tentamen OOP

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

F4. programmeringsteknik och Matlab

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

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

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

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

Sammanfattning och repetition utgående från typiska tentamensuppgifter

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

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

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

Del A (obligatorisk för alla)

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

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.

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

Java, klasser, objekt (Skansholm: Kapitel 2)

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

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

Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

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

TENTAMEN OOP

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

Grundläggande programmering med C# 7,5 högskolepoäng

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

2D1339 Programkonstruktion för F1, ht 2003

Del A (obligatorisk för alla)

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

Tentamen i Objektorienterad programmering

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

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

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla

F4 Klasser och Metoder. ID1004 Objektorienterad programmering Fredrik Kilander

Tentamen i Programmeringsteknik I,, KandMa/Fy,

Exempel på listor (klassen ArrayList). Ett exempel med fält. Avbildning är en speciell typ av lista HashMap.

for-satsen Fält for-satsen Föreläsning 8 (OH-bilder 7) for-satsen for-sats är en styrsats för iterationer. for-sats har följande generella utseende:

Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl

Instuderingsfrågor, del D

2D1339 Programkonstruktion för F1, ht 2003

Objektorienterad programmering i Java

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

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

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

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

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

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

Lösningsförslag tentamen FYTA11 Java

Transkript:

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl 14.00 17.00 Hjälpmedel: En Javabok. För betyget godkänt krävs att a- eller b-delen av varje fråga (uppgift 1 4) samt a- eller b- eller c-delen av fråga 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 V-99) på omslaget. Skriv svaren i ramarna i detta häfte. Glöm inte att skriva namn och personnummer på varje blad! Lycka till! Uppgift 1: Parametrar a) Vad blir utskriften från följande program? class ChokladAsk String kvalitet = "Godkänd"; char kontrollant = '2'; int[] pralinposition = 10, 11, 12, 20, 21, 22; foo(pralinposition, kvalitet, kontrollant); System.out.println(kontrollant + " " + pralinposition[2] + " " + kvalitet); static void foo(int[] pralinp, String kval, char kontr) kontr = '3'; pralinp[1] = 0; pralinp[2] = 0; kval = "Utmärkt"; System.out.println(kontr + " " + pralinp[2] + " " + kval); Utskrift i metoden foo(): Utskrift i metoden main():

2 b) Följande finns definierat: class ChokladPralin // Div kommandon int antalromrussin = 3; double mängdkakao = 220; FinKonditor sven = new FinKonditor(antalRomRussin, mängdkakao); System.out.println(antalRomRussin + " " + mängdkakao + " " + sven.rapporteraingredienser()); sven.skapanyttrecept(); System.out.println(antalRomRussin + " " + mängdkakao + " " + sven.rapporteraingredienser()); // Div kommandon class FinKonditor // Div deklarationer av instansvariabler public FinKonditor(int nrrr, double mängdkk) // Div kommandon, bla initiering av instansvariabler public String rapporteraingredienser() // Div kommandon, bla kommer värden av instansvariablerna att returneras public void skapanyttrecept() // Div kommandon, bla kommer instansvariablerna att få nya värden // Div deklarationer Ange för följande om utskriften kan ha ändrats efter anropet till metoden skapanyttrecept(). Variabel/returvärde Kan ha Motivering ändrats (j/n) antalromrussin mängdkakao sven.rapporteraingredienser()

Namn: Personnr: 3 Uppgift 2: Metodanrop Följande deklarationer av variabler och metoder är redan gjorda. class LångfilmsSnack ChipsTallrik mintallrik = new ChipsTallrik(270, "MexHot"); // Koden i a-delen och b-delen hamnar här class ChipsTallrik private int antalchips; private String dipsås; public ChipsTallrik(int antal, String sås) antalchips = antal; dipsås = sås; public int chipskvar() return antalchips; public void dippa() antalchips--; 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 System.out.println(dippa()); System.out.println(minTallrik.dippa()); int chips = mintallrik.chipskvar(); mintallrik.dippa(5); b) Skriv kod som dippar en gång ifall antalet chips är fler än 2. Använd dig av de metoder som finns beskrivna ovan.

4 Uppgift 3: Vektorer (arrayer) och klassen Vector Följande deklarationer är redan gjorda. char[] arr = new char[10]; int i, j; char ch; Vector vek = new Vector(); a) Skriv kod som byter plats på första och sista elementets innehåll i vektorn (arrayen) arr. b) Skriv kod som lägger till vektorn (arrayen) arr i Vectorn vek, samt därefter tar reda på (lagra lokalt) antalet element i vek. Uppgift 4: Klasser När skafferiet är tomt tvingas man skaffa den rejäla frukost som dagen kräver i närmaste affär. Nedan ser du deklarationer av klasserna Frukost och Macka, men klassen Macka är inte riktigt klar. Kan du hjälpa till att skriva klart den? Följande deklarationer är redan gjorda och du får inte lägga till några nya fält (instansvariabler eller metoder) i klasserna. class Frukost private int dagensdatum; public Frukost(int datum) dagensdatum = datum;

Namn: Personnr: 5 public void enmackatill() Macka m = new Macka("Kavring"); if(m.returneradatum() >= dagensdatum-1) System.out.println("Mums, den se god ut!"); else System.out.println("Hmm, den ser inte färsk ut..."); class Macka private String brödsort; private String pålägg; private int tillverkningsdatum; public Macka(String sort) // a) Initierar instansvariabeln brödsort public int returneradatum() // b) Returnerar instansvariabeln tillverkningsdatum a) Skriv den kod som saknas i konstruktorn Macka(String sort) i klassen Macka. b) Skriv den kod som saknas i metoden returneradatum().

6 Uppgift 5: Minnesbilder Betrakta följade program. class GlassStrut GlassKula[] strut; GlassKula kula1; strut = new GlassKula[4]; kula1 = new GlassKula("ApelsinSorbet"); // (a) strut[0] = kula1; kula1.ändratemperatur(13.0); // Mer kod (mer glass förstås) class GlassKula private String smak; private double temperatur; public GlassKula(String smak) this.smak = smak; temperatur = -18.0; public void ändratemperatur(double ökning) temperatur += ökning; // (b) I uppgifterna nedan ska du rita bilder av minnet vid två tillfällen under exekveringen. Bilderna ska innehålla samtliga klasser med tillhörande klassvariabler, samtliga metodanrop med lokala variabler och parametrar (glöm inte this) och samtliga objekt med instansvariabler. Alla variablers värden och datatyp ska framgå av bilden. Objekt som är kandidater för skräpsamling ska markeras. Metodanrop som är avslutade ska strykas, eller inte ritas ut (men effekten av anropet ska givetvis synas).

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

8 5c) Betrakta följade program. class Espresso String favoritkaffe = "Java"; double temp = 100; KaffeSlurk morgonkaffe; morgonkaffe = new KaffeSlurk(favoritKaffe); // Koden i c-delen hamnar här class KaffeSlurk private String typ; private double temperatur; private boolean mjölkskum; public KaffeSlurk(String valdtyp) typ = valdtyp; mjölkskum = false; temperatur = 78; public void tillsättskummadmjölk() mjölkskum = true; public void svalnatill(double temp) temperatur = temp; Klasser och klassvariabler Espresso KaffeSlurk Metodanrop, parametrar och lokala variabler main(...) String[] args? String favoritkaffe temp morgonkaffe double 100.0 KaffeeSlurk Objekt/Instanser och instansvariabler KaffeSlurk-objekt String-objekt String typ "Java" double temperatur 62.0 boolean mjölkskum true Skriv de satser som ska invidc) i main för att det ska seutsomovan i minnet.