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



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

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: import java.awt.*; public class Uppgift1b public static void main(string[] mupp) Color färg = Color.blue; Bil[] bilar

Metodanrop, parametrar och

Klasser & klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler

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

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.

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.

TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P

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

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

Tentamen OOP

Objektorienterad programmering i Java

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

Tentamen. Lösningsförslag

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

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

Examination i. PROGRAMMERINGSTEKNIK F1/TM1 TIN212 (Dugga) Dag: Onsdag Datum: Tid: (OBS 3 tim) Rum: V

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

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

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

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 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

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

DELPROV 1 I DATAVETENSKAP

Klasser och objekt i C#

Föreläsning 3-4 Innehåll

Tentamen i Programmering grundkurs och Programmering C

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

Rekursion: varför? Problem delas upp i mindre bitar algoritm för att lösa problemet erhålls från problemformuleringen

//Använd main som ett "handtag" för att hålla ihop programmet. //Själva programmet finns i övriga klasser.

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

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

Föreläsning 5-6 Innehåll

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

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Kort repetition. Programmeringsteknik för Bio1 och I1. Vad ska vi lära oss idag? Ett exempel

Malmö högskola 2008/2009 CTS

Tentamen i Programmeringsteknik I

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

FRÅN A TILL Ö LäraMera Ab / och Allemansdata Ab / FRÅN A TILL Ö

Det finns en referensbok (Java) hos vakten 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?

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

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.

Java, klasser, objekt (Skansholm: Kapitel 2)

DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad.

Programexempel: tärningsspel

Objekt och referenser

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 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Laboration 1 - Grunderna för OOP i Java

FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl

Kapitel 6. Hakparenteser fšr att ange index MŒnga všrden av samma typ

Tentamen på kursen DA7351, Programmering , kl Malmö högskola Teknik och samhälle. DA7351, Programmering

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

Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h

Tentamen i Objektorienterad programmering

Algoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm.

Lösningsförslag övning 2.

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

TENTAMEN OOP

Del A (obligatorisk för alla)

Att skriva till och läsa från terminalfönstret

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

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

Lösningar för tenta 2 DAT043,

Tentamen Programmeringsteknik II och NV2 (alla varianter) Skriv bara på framsidan av varje papper.

TENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: Tid: kl

Dagens program. Programmeringsteknik och Matlab. Vad är arv? Vi ärver från GregorianCalendar. Kan vi bygga vidare på existerande klasser?

OOP Objekt-orienterad programmering

Föreläsning 1 & 2 INTRODUKTION

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

2D1342 Programkonstruktion för F1, ht 2006

Del A (obligatorisk för alla)

LÖSNINGSFÖRSLAG TENTAMEN

Föreläsningar 9, 10 (okt 01, okt 03 v 40). delvis DD Chapter 7.

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, ES,

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

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

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

Tentamen i Programmering

SMD 134 Objektorienterad programmering

Tentamen i Programmeringsteknik I,, KandMa/Fy,

Tentamen Programmeringsteknik II Skrivtid: Hjälpmedel: Java-bok (vilken som helst) Skriv läsligt! Använd inte rödpenna!

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

Övningar Dag 2 En första klass

TENTAMEN OOP

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

Mer om klasser och objekt

Tentamen, EDAA20/EDA501 Programmering

Tentamen i Programmeringsteknik I

Transkript:

2D1310, 2D1311 Programmeringsteknik Tentamen (1p) 3 maj 2001, kl 9.00-12.00 Hjälpmedel: En Javabok (det blå Javahäftet som ingår i kursbunten räknas som en Javabok). För betyget godkänd 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 L-00) på omslaget. Skriv svaren i ramarna i detta häfte. Glöm inte att skriva namn och personnummer på varje blad. Lycka till! 1 Parametrar a) Vad blir utskriften från följande program: class HockeyVM { public static void main(string[] barf){ String betyg = "ett fiasko!"; String[] trekronor = new String[22]; trekronor[21] = "Foppa"; int antalguldmedaljer = 2; turnering(trekronor, antalguldmedaljer, betyg); System.out.println(treKronor[21] + " har " + antalguldmedaljer + " guld och är " + betyg); static void turnering(string[] lag, int antalguldmedaljer, String betyg) { lag[21] = "Mats Sundin"; antalguldmedaljer++; betyg = "en hjälte!"; System.out.println(lag[21] + " har " + antalguldmedaljer + " guld och är " + betyg); Utskrift i metoden turnering: har guld och är Utskrift i metoden main: har guld och är b) Följande finns definierat: class Färgval { public static void main(string[] garf){ String[] tröjor = new String[2]; String tröja = "Gul"; tröjor[1]="blå"; System.out.println(tröja + tröjor[1]); tvättmaskin(tröja, tröjor); System.out.println(tröja + tröjor[1]); Ange om utskriften kan ha ändrats efter anropet till metoden tvättmaskin. Svaret måste motiveras. Variabel Kan ha ändrats (j/n) Motivering tröja tröjor[1]

2 Metodanrop Följande deklarationer är redan gjorda och inga andra får göras för att lösa uppgiften: class TV3 { public static void main(string[] glapp) { Journalist skitsnackare = new Journalist(); int i; double d; // koden i a- och b-delen hamnar här class Journalist { public int kollhalt() /* Returnerar andelen av det Journalisten säger som är rätt */ {... public int avdrag(int spritkostnader, double bordellkostnader, int totalkostnad) /* Returnerar största lagliga avdrag från totalkostnad givet sprit- och bordellkostnaderna */ {... public static void skrivreseräkning(string ändamål) /* Skriver ut en reseräkning för ändamålet */{... a) Kryssa för och ange vilka av följande satser (metodanrop som görs i main) som är riktiga respektive felaktiga, samt för de felaktiga vad som är fel! Sats Rätt Fel Orsak Journalist.avdrag(30000, 27856.50, 60000); i = avdrag(30000, 27856.50, 60000); i = skitsnackare.avdrag(d, d, i); i = skitsnackare.avdrag ("30000 27856.50 60000"); b) Skriv kod som skriver en reseräkning för hockey-vm med hjälp av metoderna ovan.

3 Vektorer Följande deklarationer är redan gjorda och inga andra får användas för att lösa uppgifterna. final int MAX_ANTAL_LÄNDER = 16; String[] brahockyländer = new String[MAX_ANTAL_LÄNDER]; BufferedReader tangentbord = new BufferedReader(new InputStreamReader(System.in)); Vector blåbärsländer = new Vector(); int i; String s; // koden i a- och b-delen ska in här I blåbärsländer har dessutom teckenföljder (String) lagts in. a) Skriv kod som läser in namn på 12 länder till brahockyländer från tangentbordet. b) Skriv kod som skriver ut namnen på alla blåbärsländer på skärmen..

4 Klasser Hardy Nilsson behöver hjälp men att hålla rätt statistik för sina spelare. T ex vill han veta antalet gjorda mål, antalet målpassningar, antalet passningar och antalet skott för att kunna avgöra bland annat hur själviska och effektiva spelarna är. Nedan finns två klasser som kan vara till hjälp. class Spelare { private int skott, passningar, mål, målpassningar; public Spelare(String namn) { // initierar och nollställer instansvariablerna // b) public int gjordamål() { // returnerar antalet gjorda mål av denna spelare return mål; // andra metoder som ej visaas här // slut på klassen Spelare class Turnering { private Spelare[] spelare; private int antalspelare; public int summagjordamål() { // summerar alla spelares gjorda mål int summa = 0; Spelare s; for (int i=0; i < antalspelare; i++) { s = spelare[i]; // a) return summa; // andra metoder som ej visas här // slut på klassen Turnering a) Skriv koden som saknas i metoden summagjordamål i klassen Turnering. b) Skriv koden som saknas i konstruktorn i klassen Spelare.

5 Minnesbilder Betrakta följande program: class Hockylag { public static void main(string[] args) throws IOException{ Spelare hjälte = new Spelare("Foppa", 25, 0); System.out.println("Bästa effektiviteten är " + hjälte.effektivitet() ); Spelare looser = new Spelare("Bush", 0, 2004); System.out.println("Sämsta är " + looser.effektivitet() ); class Spelare { private int plusmål; // antalet mål framåt som spelaren varit på planen private int minusmål; // antalet mål bakåt som spelaren varit på planen public Spelare(String namn, int plus, int minus) { // Initierar instansvariablerna this.namn = namn; plusmål = plus; minusmål = minus; public String effektivitet() { // Returnerar effektiviteten för spelaren if (minusmål == 0) { // a return "oändligt stor"; else { return Double.toString(plusmal/(double) minusmal); // Slut på klassen Spelare a) Rita en bild vid läge (a) i programmet. Glöm inte this och args. Klasser och klassvariabler Metodanrop, parametrar och lokala variabler Instanser och instansvariabler Betrakta följande program:

class Hockey { public static void main(string[] args) throws IOException{ // Här ska koden för b in // Slut på klassen Hockey class Spelare { private String klubblag; public Spelare(String namn) { // initierar instansvariablerna this.namn = namn; klubblag = "Brunflo IK"; public void värvaspelare(string klubblag) { // ändrar klubbtillhörigheten this.klubblag = klubblag; // slut på klassen Spelare b) Skriv den kod som behövs för att det ska se ut som nedan i minnet. Klasser och klassvariabler Metodanrop, parametrar och lokala variabler Instanser och instansvariabler Hockey Spelare main args spelare null Spelare-instans namn klubblag "Foppa" "Colorado Avalanche"