DELPROV 1 I DATAVETENSKAP

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

Uppgift (poäng) 1 (2) 2 (3) 3 (4) 4 (4) 5 (3) 6 (4) 7 (6) 8 (6) 9 (8) Summa

TENTAMEN I DATAVETENSKAP

TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P

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

OOP Objekt-orienterad programmering

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

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

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

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

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

Tentamen OOP

TDDC77 Objektorienterad Programmering

Tentamen i Objektorienterad programmering

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

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

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

Programmering A. Johan Eliasson

Föreläsning 6: Metoder och fält (arrays)

SMD 134 Objektorienterad programmering

Tentamen i Programmering

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

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

Tentamen, EDAA20/EDA501 Programmering

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Objektorienterad programmering i Java

Föreläsning 10. ADT:er och datastrukturer

TENTAMEN. Kurs: Applikationsutveckling i Java 5DV135. Ansvarig lärare: Johan Eliasson. HT12 Datum: Tid: kl

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

Laboration 13, Arrayer och objekt

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Föreläsning 3-4 Innehåll

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

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

(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

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

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

Objektorienterad programmering D2

Objektorienterad programmering, Java, 5p TDBA63

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

Programmering för Språkteknologer II. Innehåll. Associativa datastrukturer. Associativa datastrukturer. Binär sökning.

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)

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]

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

Del A (obligatorisk för alla)

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer.

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.

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

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

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

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

OOP Tentamen

Tentamen i Grundläggande programmering STS, åk 1 lördag

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

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

TENTAMEN OOP

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

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

Föreläsning 1 & 2 INTRODUKTION

Institutionen för TENTAMEN CTH HT-15 Datavetenskap TDA540. Tentamen för TDA540 Objektorienterad programmering

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

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

Föreläsning 2, vecka 8: Repetition

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

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

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.

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

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

TENTAMEN: Objektorienterad programmering. Läs detta! Skriv din tentamenskod på varje blad (så att vi inte slarvar bort dem).

OOP Omtenta

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

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

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

OOP Objekt-orienterad programmering

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

Lösningsförslag, tentamen FYTA11 Javaprogrammering

Outline. Objektorienterad Programmering (TDDC77) Att instansiera en klass. Objekt. Instansiering. Åtkomst. Abstrakt datatyp.

Tentamen, EDAA10 Programmering i Java

Objektorienterad Programkonstruktion, DD1346 FACIT. Tentamen , kl

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

Tentamen. Programmeringsmetodik, KV: Java och OOP. 20 januari 2005

Tentamen, EDA501 Programmering M L TM W K V

Föreläsning 11. Arrayer. Arrayer. Arrayer. Lagrar flera värden av samma typ Kan vara primitiva typer eller objekt. Kan ha en array av t.

Föreläsning 9: Arv och UML

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016

Objektorienterad Programmering (TDDC77)

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

Objektorienterad Programmering (TDDC77)

Dagens föreläsning. Arrayer och klasser. Medan ni väntar: Gå till m.voto.se/prog11 och svara på några gamla tentamensfrågor! (26 januari 2018 F3 1 )

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

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

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

TENTAMEN OOP

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 5-6 Innehåll

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

Objektorienterad Programmering (TDDC77)

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

Transkript:

Umeå Universitet Datavetenskap Marie Nordström 070502 DELPROV 1 I DATAVETENSKAP Uppgift (poäng) 1 () 2 () 3 () 4 () 5 () 6 () Summa (xx) Inlämnad Poäng Kurs : Datum : 070502 Namn (texta) : Personnummer : Objektorienterad programmering i Java för Ingenjörer, 5p. (TDBA62) Epost : @cs.umu.se Namnteckning UMEÅ UNIVERSITET 901 87 UMEÅ Tel.: 090-786 77 08 Fax: 090-786 61 26 e-mail: marie@cs.umu.se

DELPROV 1 DATAVETENSKAP OBJEKTORIENTERAD PROGRAMMERING I JAVA FÖR INGENJÖRER, 5P. (TDBA62) Datum : 070502 Tid : 9-12 Hjälpmedel Antal Uppgifter Poäng : Inga : xx : xx (delprovet får ej underskrida 30% av poängen för provet, halva poängtalet (DP1+DP2) krävs normalt för godkänt) Kryssa för de uppgifter du lämnar in Lösningarna skall vara snyggt och prydligt nedskrivna. Tankegången skall vara lätt att följa. Alla antaganden som inte är uppenbara skall redovisas. Tips! Försök på alla uppgifter! Om du inte kan lösa en av flera deluppgifter, gör lämpliga antaganden och gå vidare till efterföljande deluppgifter. Uppgifter kan vara felformulerade, fråga om du är osäker eller tycker att något verkar konstigt. Det är ditt ansvar att övertyga om att du besitter den kunskap som efterfrågas. Det är viktigt att du löser den givna uppgiften! Lycka till! 2(11)

Uppgift 1 (6 poäng) I ett java-program kan följande metodhuvud förekomma: public static void main(string[] args) Förklara kortfattat de ingående storheterna: public : static : void : main : String[] : args : Uppgift 2 (2+1 = 3 poäng) a) Det finns två kategorier av datatyper i Java. Namnge dessa och ge två exempel i vardera kategorin. b) Vad menas med casting? 3(11)

Uppgift 3 (5 poäng) Antag att du har en metod max som returnerar det största värdet i en array av heltal. Skriv kod för denna, arrayen ges som parameter. Överlagra sedan denna metod så att den även kan användas för en array av double-värden. Vad menas med överlagring i det här sammanhamget och hur fungerar det? 4(11)

Uppgift 4 (5 poäng) Utgå från en array av flyttal: double[] res = new double[ ]; som ska innehålla resultaten från t.ex en skolidrottstävling i kulstötning. Hur resultaten kommer in i arrayen struntar vi i just nu! Anta att de finns där. För att skriva ut resultat behöver vi sortera dessa värden. Men om resultatet är kopplat till information om den tävlande, så måste vi undvika att flytta om resultaten. T.ex. kanske vi har namnen på de tävlande i en annan array: String[] namn = new String[ ]; Därför sorterar vi resultaten indirekt med hjälp av en indexvektor. Utgå från resultaten double[] res = {12.4, 11.3, 12.4, 12.0, 11.9, 5.0, 11.2, 11.1}; Sätt upp en tabell och spåra vad som händer när följande kod körs. Det ska klart framgå vad som händer, vad som testas, utfallet av testerna och vilka värden variablerna antar under sorteringen. Du ska även visa innehållet i arrayerna eftersom. int[] index = new int[res.length]; for(int i=0; i < res.length; i++) { index[i] = i; } for (int i = 0; i < res.length-1; i++) for (int j = i+1; j < res.length; j++) { if (res[index[i]] < res[index[j]]) { int temp = index[i]; index[i] = index[j]; index[j] = temp; } } Svara på nästa sida! 5(11)

Svara här! 6(11)

Uppgift 5 (6 poäng) I biblioteksexemplet modellerar vi böcker., där varje bok behöver känna till ett återlämningsdatum. Bok och datum modelleras så här: Javadoc-beskrivningen av Book: Javadoc-beskrivningen av Date på nästa sida. 7(11)

Utgå från klasserna ovan och avgör om följande metodanrop är syntaktiskt korrekta eller ej. Om det är ok, ange vilka värden som skickas/returneras, om inte motivera varför det inte fungerar och ange hur det borde se ut för att fungera. Anrop Ok Fel // i klassen Book s lendbook-metod Date td = new Date.today(); duedate = td.add(periodoftime); Motivering/värden : Anrop Ok Fel // Var som helst Date td = new Date(Date.today()); Motivering/värden: Uppgiften fortsätter på nästa sida! 8(11)

Anrop Ok Fel //klassen Date s add-metod public Date add(int numofdays) { Date newd = this; newd = newd + numofdays; return newd; }//add Motivering/värden : Anrop Ok Fel // i klassen Book s islate-metod return Date.today().passed(dueDate); Motivering/värden: 9(11)

Uppgift 6 (5 poäng) En av dina kompisar är händig och tillverkar smycken, magneter och andra prydnadsföremål av cernitlera. För att finansiera denna hobby vill din kompis starta ett litet postorderföretag. Eftersom du jobbar med design av programvara erbjuder du dig att hjälpa till med ett system för att administrera kunder, beställningar och artiklar. Postorderföretaget DenGladaGrisen ska sälja örhängen, halsband, broscher, kylskåpsmagneter och ljusmanschetter. Varje artikel har ett unikt artikelnummer och ett pris. Halsband kan beställas i valfri längd och kylskåpsmagneter i tre olika storlekar: 2 cm, 4 cm och 7 cm. Ljusmanschetterna kan beställas i valfri färg. Du ska alltså föreslå en design till detta system (inte implementera). OBS! Du ska inte utreda något som har med användargränssnittet att göra (GUI designen). Lämna in en UML-liknande beskrivning av designen som innehåller alla klasser och som visar hur de hänger ihop. Oavsett vilken notation du väljer (UML eller egen) måste du förklara vad ev. pilar och streck representerar. För varje klass ska viktiga attribut, metoder och parametrar finnas med. Svara här och på nästa sida! 10(11)

11(11)