Tentamen i Grundläggande programmering STS, åk 1 2005-01-13



Relevanta dokument
Tentamen i Grundläggande programmering STS, åk

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

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

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.

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

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 Tentamen

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]

Tentamen i Programmeringsteknik I

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 Programmering

LyckaTill önskar Anna

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 PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

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

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

Tentamen i Programmeringsteknik I

Tentamen i EDA011 Programmeringsteknik för F, E, I, π och N

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

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

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)

OOP Omtenta

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

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

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

OOP Tenta

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

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

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

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

Laboration 1 - Grunderna för OOP i Java

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

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

Tentamen i Programmeringsteknik I, ES,

Tentamen i Programmeringsteknik I

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

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.

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

PROGRAMMERINGSTEKNIK TIN212

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

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

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

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

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

OOP Omtenta

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

OOP Tentamen

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

Sortering. Om du följt dessa steg korrekt så ska böckerna nu vara sorterade.

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

Dugga i Grundläggande programmering STS, åk

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

TENTAMEN OOP

Objektorienterad Programmering (TDDC77)

JAVA Mer om klasser och objektorientering

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

Tentamen i Programmeringsteknik MN

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

Diagnostiskt Prov. Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas.

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

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

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

Tentamen, EDAA10 Programmering i Java

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

Tentamen Datastrukturer, DAT037 (DAT036)

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

Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Skriv ditt idnummer på varje blad (så att vi inte slarvar bort dem).

PROGRAMMERING-JAVA TENTAMINA

Modern Programmering (2546) Tentamen lördag

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

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

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

Chapter 4: Writing Classes/ Att skriva egna klasser.

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

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

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

Tentamen i Algoritmer & Datastrukturer i Java

Tentamen i Programmeringsteknik MN

DAT043 Objektorienterad Programmering

a. Vilka av följande påståenden är riktiga? Observera att felaktigt valda påståenden ger poängavdrag. (4p)

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.

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

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

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

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

OOP Tentamen

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

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING

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

Laboration 3, uppgift En klass för en räknare

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

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

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

Inlämningsuppgifter, EDAF30, 2015

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

OOP Tenta

Transkript:

Tentamen i Grundläggande programmering STS, åk 1 2005-01-13 Skrivtid: 14.00-19.00 Lokal: Polacksbacken Hjälpmedel: Inga Lärare: Anders Berglund. Anders besöker tentan cirka kl. 15.30. Observera: Programkod ska skrivas enligt god programmeringssed för Java och objektorienterad programmering. Uppgifterna är inte ordnade efter svårighetsgrad. Läs igenom hela tentan först. Kom ihåg att fylla i försättsbladet ordentligt. Om du är osäker på någon fråga eller uppfattar någon uppgift som oklar, gör ett antagande som du motiverar och förklarar väl. På de uppgifter där du ska skriva programkod, kan du också skriva en förklaring, om du inte är säker på att din lösning är riktig. En sådan ger visserligen inga poäng, men kan hjälpa till vid rättningen att förstå tankarna bakom en lösning Skriv programkod rimligt indenterad och med bra variabelnamn. På så sätt underlättas rättningen. 50% av tentans totala poängantal garanterar betyget godkänt Skriv endast en uppgift per blad och skriv bara på ena sidan av papperet, dvs. ett nytt blad för varje uppgiftsnummer, medan deluppgifter (a, b, c etc.) får skrivas på samma blad. Fyll i försättsbladet ordentligt! Skriv namn på alla papper. Referera inte mellan olika svar. Lycka till!

FÖRSÄTTSBLAD Grundläggande programmering, STS, 13 januari 2005 Denna sida ska ifylld placeras först bland de papper du lämnar in Uppgift 1 2 3 4 5 6 7 8 bonus Besvarad. Ange i förekommande fall vilka deluppgifter du har löst ifylles av institutionen Poäng (ifylles av institutionen) Namnteckning: Namn: Personnummer:

1. Ord, bara ord (0,5 + 0,5) Förklara kortfattat men precist följande termer: a) syntax (i samband med programmeringsspråk) b) semantik (i samband med programmeringsspråk) 2. Mer ord (2 + 2+ 1) Förklara termerna klass, objekt och arv (2 + 2 + 1 p respektive) enligt de riktlinjer som ges nedan. Det ska tydligt framgå vad skillnader och eventuella likheter mellan de olika termerna är. Beskriv en situation (förmodligen ett tänkt program, som du skulle kunna skriva) där de tre begreppen kommer att användas. Ge konkreta exempel på två eller flera klasser, objekt samt tillämpningar av arv i denna. Var noggrann i dina förklaringar till varför exemplen illustrerar det du avser att de ska visa. 3. Ännu mera ord (2) Beskriv skillnaden mellan instansvariabler och klassvariabler. Ge ett kortfattat exempel i Javakod som illustrerar användningen av de två begreppen. Förklara i ord på vilket sätt ditt exempel illustrerar 4. På banken (2 + 2) a) Klassen BankKonto har instansvariablerna int nr och double saldo samt metoderna public int getnummer(), public void sättin(double summa), public void taut(double summa) och public void saldobesked(). main finns nedan. När programmet kompileras får man ett kompileringsfel. Visa vad som behöver ändras i main och förklara i ord varför det inte fungerar som det står nu. public static void main(string[] args) { BankKonto b1; b1.sättin(3000); b1.saldobesked(); b1.taut(2500); b1.saldobesked(); } b) Klassen Vinst nedan har två instansvariabler, ett fält (=array) av typ BankKonto (enligt ovan) och ett fält av heltal. Skriv en konstruktor för klassen. Varje objekt som skapas ska innehålla en array med plats för 100 objekt ur BankKonto respektive 100 heltal för vinst.

public class Vinst { private BankKonto[] konton; private int[] vinst; här ska konstruktorn vara.... 5. I katedern (8) Du har blivit lärare i Grundläggande Programmering på STS-programmet, eftersom Anders har flyttat till ett soligare land, där han är badvakt. Du inser snabbt att du behöver ett program som kan sammanställa en del information om resultaten på tentan, när du har rättat den. Programmet ska fråga efter resultaten för samtliga studenter och en godkänt-gräns. Inmatningen av talen, som får vara ful och klumpig, ska avslutas när ett negativt värde matas in. Programmet behöver inte information om namn, personnummer eller dylikt då det inte är avsett för att sammanställa resultatlistor, utan enbart göra sammanfattande beskrivningar av resultatet. Programmet ska ange antalet inmatade tentamensresultat, ange medelvärdet, det bästa resultatet, det sämsta resultatet, samt hur många % av tentamensresultaten som avser godkända tentor. Det maximala poängantalet är 50 poäng; det maximala antalet studenter som läser kursen (och som tenterar :-D) är 100 stycken. Godkäntgränsen går vid 40 poäng (du är med andra ord mycket hårdare än Anders var Studenterna drömmer om den gamla goda tiden, men Anders trivs i solen). Skriv programmet i en klass. Programmet ska bestå av ett huvudprogram och minst två lämpligt valda metoder. 6. Per Olssons staket (8+2) (Läs hela uppgiften först) Per Olson har en bonnagård. Han söker EU-bidrag för att sätta upp staket runt sina åkrar, som alla är rektangulära. Av årets EU-anvisningar krävs att Per redovisar sina behov i ett Java-program. Per kan inte Java, så har ber om din hjälp. Det program EU vill ha ska innehålla tre eller fler relevant valda klasser, en för åker, en för en stolpe och ett huvudprogram (samt andra klasser som du eventuellt kan uppfatta som väsentliga). En åker representeras som en rektangel (du får dock inte anta att en sådan klass finns), en stolpe har koordinater (x och y).

a) Skriv programmet med klasserna för åker och stolpe (som kan vara mycket enkla), tillsammans med ett huvudprogram (och eventuella andra klasser) som frågar efter sidlängden på en åker och beräknar antalet stolpar som behövs. Tänk på att varje hörn måste ha en stolpe. Stolpavståndet får variera mellan 2 och 3 meter, efter vad du själv avgör. Du får anta att åkrarna är tillräckligt stora för att rymma ett lagom antal kor, vilket innebär att du inte behöver bekymra dig om extremfall. In och utmatningen får göras mycket enkel. b) Du avgör själv om du använder dig arv. Du ska använda arv om arv är lämpligt med tanke på din uppgiftslösning, men får inte använda arv om det inte är motiverat. I denna deluppgift ska du förklara varför du anser att arv är motiverat, eller inte motiverat att använda i den lösning du har presenterat. 7. Idrott (6) I en möjlig idrott, konstskidning (som påminner om konståkning på skridskor), finns det i varje tävling både tävlingsdeltagare och domare. Domarna kan ge mellan 1 och 5 poäng och den tävlingsdeltagande som får högst poäng i snitt vinner. Vid lika antal poäng avgör lotten. För tävlingen finns det en resultattabell, som för varje tävlingsdeltagare innehåller medelvärdet av domarpoängen. Ge förslag på tre klasser som du uppfattar som rimliga, representativa och bra för ett program som kan hantera en konstskidningstävling. För varje klass ska du ange två viktiga instansvariabler och tre viktiga metoder. Du behöver inte koda klasserna. Formen för ditt svar (såsom Java eller svenska, tabeller eller löptext) avgör du själv. Det är en fördel, men inte ett krav, att du skriver förklaringar. Sådana ger i sig inga poäng men kan hjälpa dig om ditt svar i övrigt inrymmer oklarheter. 8. Komplexa frågor (2+2) a) Vad betyder det om en algoritm har komplexitet O(n2)? b) Hur definieras komplexiteten av ett problem?