INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

Relevanta dokument
INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

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

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

TENTAMEN OOP

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

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.

Programmering C: Tentamen of 5 Prioritet och associativitet hos operatorerna i C De viktigaste operatorerna: Prioritet Kategori Operator

Tentamen i Introduktion till programmering

Tentamen i Grundläggande programmering STS, åk

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. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

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

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

729G74 - IT och programmering, grundkurs. Dugga.

729G06 Föreläsning 1 Objektorienterad 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

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

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 i Programmeringsteknik I

Lösningar till uppgifterna sätts ut på kurssidan och på WebCT (Gamla Tentor) i dag kl 19. Tentamen i Programmering C, 5p, Distans, övriga,

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 Grundläggande programmering STS, åk

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

HI1024 Programmering, grundkurs TEN

Tentamen i. för D1 m fl, även distanskursen. lördag 26 februari 2011

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

OOP Tentamen

Objektorienterad programmering i Java I

Tentamen i Programmeringsteknik I

Tentamen i Programmeringsteknik I

Tentamen i Grundläggande Programvaruutveckling, TDA548

7,5 högskolepoäng. Objektorienterad systemutveckling I Provmoment: Ladokkod: 21OS1B Tentamen ges för: Lycka till! /Peter & Petter

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

729G04 Programmering och diskret matematik

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 TEN1 HI

CHALMERS TENTAMEN. 2018/2019, lp 1 DAT050. Uno Holmer

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

Johan Karlsson Datavetenskap för teknisk kemi, 10p, moment 1 Datavetenskap Umeå Universitet. Tentamen

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

Tentamen, EDAA10 Programmering i Java

Tentamen TEN1 HI

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

Tentamen i EDAF oktober Skrivtid: Skriv bara på ena sidan av pappret tentorna kommer att scannas in, och endast framsidorna rättas.

7,5 högskolepoäng. Objektorienterad systemutveckling I. Lycka till! /Peter & Petter. Provmoment: Ladokkod: 21OS1B Tentamen ges för:

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

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

TENTAMEN OOP

tentaplugg.nu av studenter för studenter

OOP Exempel Tentamen 2007

HI1024 Programmering, grundkurs TEN

729G04 Programmering och diskret matematik TEN kl 8-12

OOP Tentamen

Design av en klass BankAccount som representerar ett bankkonto

JAVA Mer om klasser och objektorientering

Tentamen i. Programmering i språket C

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

Systemutvecklare SU13, Malmö

Företagsekonomi grundkurs, FOA134, Ten3, 4 hp

Objektorienterad programmering D2

Tentamen i Objektorienterad Programmering 5p, Au, D, Fri, Pr,

Tentamen, EDA501/EDAA20 Programmering M MD W BK L

För alla uppgifter på tentan gäller: Man får använda både standard-c++ (som till exempel har pekare som anges med * och objekt som skapas med new) och

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

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor

Maximalt antal poäng för hela skrivningen är 22 poäng. För Godkänt krävs minst 13 poäng. För Väl Godkänt krävs minst 18 poäng.

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl Tentamen i Programmering C, Fri, Kväll,

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

Tentamen i Programmering grundkurs och Programmering C

Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Tentamen DE14, IMIT14 och SYST14 samt öppen för alla

Objektorienterad Programmering (TDDC77)

Namn Stil Dokumentation Objekt-orienterad programmering OBS OBS OBS OBS OBS OBS OBS OBS

Användarhandledning Version 1.2

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

Tentamen i Programmering grundkurs och Programmering C

Tentamen, Algoritmer och datastrukturer

Objektorienterad Programkonstruktion. Föreläsning jan 2016

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

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

Inledande programmering med C# (1DV402) Introduktion till C#

Objektorienterad analys och design

729G04 Programmering och diskret matematik

Programmering = modellering

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

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

Övningsuppgifter kapitel 8

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 8 10, 7 april 2016

Uppgifter till tenta i 729G04 Programmering och diskret matematik. 7 augusti 2015, kl 08:00-12:00

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

Malmö högskola 2008/2009 CTS

TUTORIAL: KLASSER & OBJEKT

TDP Regler

OOP Objekt-orienterad programmering

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

TDDC74 Programmering, abstraktion och modellering. Tentamen

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Programmeringsteknik I

Transkript:

Tentamen INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP) Delkurs 3 Introduktion till objektorienterad programmering och problemlösning Lärare: Johan Petersson, Mathias Hatakka Datum: 2016-01-13 Tid: 14:15-19:15 Hjälpmedel: - Ordbok till/från svenska och annat språk - Ordbok till/från engelska och annat språk - Appendixhäfte Antal uppgifter, del A: 5 Poäng, del A: 18 ------------------------------------------- Antal uppgifter, del B: 2 Poäng, del B: 7 För betyget godkänt (G) krävs ca 66% av poängen på del A För betyget väl godkänt (VG) krävs, utöver kraven för G, ca 50% av poängen på del B 1

Läs noga igenom detta: Ett svårläst lösning kan medföra poängavdrag. Renskriv därför dina svar på ett nytt ark vid behov. Fyll i försättsbladen noggrant ange uppgiftsnummer och tentamenskod på alla inlämnade papper. Den enskilde studenten ansvarar själv för att material som skall bedömas lämnas in till skrivningsvakt. Obs! Lägg uppgifterna 1-5 i vitt omslag märkt A och uppgifterna B1-B2 i vitt omslag märkt B. Börja varje ny uppgift på nytt papper. Lämna in uppgifterna i nummerordning. Skriv endast på en sida. Penna som ger röd skrift får ej användas. Är uppgiften oklar, gör rimliga antaganden och redovisa dessa. Även inte helt fullständiga lösningar kan ge poäng. Lös de delar du kan. Lycka till! 2

Del A ------------------------------------------------------------------------------------- Uppgift 1 (3 p) Javaklassen Hast håller information om hästar. En uppgift man håller information om här är hästens vikt i kg. Din uppgift är att skriva kod för metoden setvikt som utgör ett tillägg till klassen. Metodens uppgift är ändra informationen om hästens vikt. Metoden skall dock också kontrollera om den angivna vikten är rimlig (i detta fall att vikten överstiger 0 och är mindre än 2000 kg) och ändra värde endast om så är fallet. - Metoden skall ta emot en önskad viktangivelse som parameter - Metoden skall kontrollera om den angivna vikten ligger inom intervallet - Värdet på viken skall ändras endast om det angivna värdet ligger inom intervallet - Om vikten lagrat ett godkänt värde skall metoden returnera true annars false Du behöver bara visa metodens programkod (ej resten av klassen). Skriv ditt svar på ett vanligt svarsark 3

Uppgift 2 (1+1+2 p) Åven i den här uppgiften är utgångspunkten koden för klassen Hast enligt ovan. Besvara följande frågor: a) Hur skulle ett korrekt anrop till klassens konstruktor se ut i javakod? b) Vilket tillstånd (state) skulle det nya objektet ha (direkt efter instansiering)? c) I koden för klassens konstruktor används inte det reserverade ordet this. Förklara vad ordet står för men varför koden fungerar trots att det inte används här. Skriv ditt svar på ett vanligt svarsark 4

Uppgift 3 (2 p) Till denna uppgift hör javakoden för de 6 klasser du finner nedan. Varken namnet 1 på klasserna eller deras inbördes ordning nedan säger något om deras relation till varandra. Man kan dock beskriva relationen som att det handlar om komponenter som i sin tur kan vara sammansatta av andra komponenter. Inom OOP och används denna relation då man pratar om modularisering och abstraktion. Föreställ dig nu att du instansierar ett objekt av klassen Z och därefter kör metoden skrivutord() på detta objekt. Ange nu den sträng som skrivs ut på skärmen. Skriv ditt svar på ett vanligt svarsark 1 Vilket i ett verkligt program vore dålig kodning. Nu är namnsättningen gjord medvetet informationsfri för att gagna kunskapskontroll. 5

6

7

Uppgift 4 (4 p) Utgångspunkten för denna uppgift är klasserna Hast (ovan) och Stall (nedan). Din uppgift är att komplettera klassen Stall med metoden raknahastarmedvissminstavikt. Metodens uppgift är att kontrollera, och skriva ut hur många av stallets hästar som har samma eller högre vikt än den siffra som anges då metoden anropas. Exempel: Om det finns två hästar i systemet som väger 500 kg eller mer skall exempelanropet: raknahastarmedvissminstavikt(500); ge följande utskrift på skärmen (i terminlafönstret): Antalet hästar är: 2 Om det inte finn någon häst i systemet som väger 500 kg eller mer skall exempelanropet: raknahastarmedvissminstavikt(500); ge följande utskrift på skärmen (i terminlafönstret): Inga hästar funna Skriv ditt svar på ett vanligt svarsark 8

Uppgift 5 (2+2+1 p) Även i denna uppgift är utgångspunkten klassen Hast (ovan). Här fokuseras dock begreppet sammanhållning (cohesion) och det begreppets koppling till ansvarsdriven design (responisbility driven design). a) Identifiera på vilket sätt källkoden visar upp tecken på bristande sammanhållning. Beskriv alltså hur man kan se det i koden. b) Beskriv de förändringar man skulle kunna göra i koden för att förbättra sammanhållningen (gärna med källkod men det finns inget behov av att skriva komplett klasskod). c) Förklara på vilket sätt det ovan har med ansvarsdriven design att göra (exemplifiera alltså med koden i klassen Hast). Skriv ditt svar på ett vanligt svarsark 9

Del B ------------------------------------------------------------------------------------- Uppgift B1 (3 p) Titta på källkoden för klasserna Klass1, Klass2, Klass3 nedan. Din uppgift är att svara på frågan: - vad kommer att skrivas ut på skärmen efter att metoden startasystem() i Klass1 anropas? Visa utskriften genom att besvara frågan på ett vanligt svarsark. 10

11

12

Uppgift B2 (4 p) Jultomten är nu klar med sin julklappsutdelning och behöver lite hjälp med att få fram lite statistik över utdelade klappar från sitt julklappsinformationssystem. Titta på källkoden för klasserna JulKlappsAdmin, Utdelaren, Klappar och Barn nedan. Din uppgift är att skapa metoden listaklappstatistik() i klassen JulKlappsAdmin. Inga ändringar får göras i andra metoder eller klasser. Om nedan exempeldata har lagts till i systemet: så skall, när metoden listaklappstatistik() anropas, följande skrivas ut på skärmen: OBS! Observera att de barn som ej varit snälla inte skall vara med i utskriften. Skriv svaren på ett vanligt svarsark 13

14

15

16