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

Relevanta dokument
Metodanrop, parametrar och

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

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) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); S

Klasser & klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler

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

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

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

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

Tentamen i Programmeringsteknik I

Tentamen. Lösningsförslag

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

Föreläsning 3-4 Innehåll

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.

DD1342 Programkonstruktion för F1,

Tentamen OOP

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

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

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

Tentamen i Programmeringsteknik I

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

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

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

2D1342 Programkonstruktion för F1, ht 2006

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

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

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

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ 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.

Föreläsning 5-6 Innehåll

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

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

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

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

TENTAMEN OOP

Malmö högskola 2008/2009 CTS

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

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

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

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

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

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

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 tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

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

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 2 Objektorienterad programmering DD1332. Typomvandling

Laboration 1 - Grunderna för OOP i Java

Tentamen i Programmeringsteknik I, ES,

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

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

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

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

Objekt och referenser

Föreläsning REPETITION & EXTENTA

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

Tentamen i Programmeringsteknik I,, KandMa/Fy,

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

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

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

JAVA Mer om klasser och objektorientering

Tentamen i Objektorienterad programmering

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

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

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

Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här:

2D1339 Programkonstruktion för F1, ht 2003

Del A (obligatorisk för alla)

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

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

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

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

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Tentamen i Programmeringsteknik I

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

LÖSNINGSFÖRSLAG TENTAMEN

TENTAMEN OOP

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

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.

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

PROGRAMMERINGSTEKNIK TIN212

Tentamen i Grundläggande programmering STS, åk

Objektorienterad programmering i Java

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

TENTAMEN OOP

Java, klasser, objekt (Skansholm: Kapitel 2)

Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin

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 PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P

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

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

Transkript:

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B2 och V1 (1p) 28 oktober 2000 Hjälpmedel: En Javabok. För betyget godkänt krävs att a- eller b-delen (eller c-delen då en sån finns) 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 B-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 Island int antal = 2; ForFader far = new ForFader("Gunnar Benediktsson"); ForFader son = new ForFader("Peter Gunnarsson"); foo(far, son, antal); System.out.println(far.namn + " : " + son.namn + " : " + antal); static public void foo(forfader a, ForFader b, int c) c=4; a=b; a.namn="jonas Gunnarsson"; System.out.println(a.namn + " : " + b.namn + " : " + c); //class Island class ForFader String namn; ForFader(String namn) this.namn=namn; //class ForFader Utskrift i metoden foo: Utskrift i metoden main:

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!"); static boolean färdig(haj h, int d, double s) //beräknar om hajen är färdig att ätas Här finns kod som inte visas på tentan //class Mat class Haj int vikt; Haj(int vikt) this.vikt = vikt; //class Haj En delikatess på Island är haj som man grävt ner i sanden och låtit jäsa. Det gäller att gräva upp den i rätt tid för att den ska smaka rätt. Programmet här beräknar om det är dags att gräva upp fisken. När delikatessbutiken Haj-deli använder programmet märker de att det är något fel i metoden färdig(). För att lättare hitta felet skriver Haj-deli ut värdena både före och efter anropet till färdig(). Ange för följande variabler om utskriften kan ha ändrats efter anropet till metoden färdig(). Variabel Kan ha Motivering ändrats (j/n) mumsbit.vikt tid sälta

Namn: Personnr: 3 Uppgift 2: Metodanrop Fågelforskaren Lisa Lundi är på Island och ringmärker och väger lunnefåglar. För att hålla koll på alla märkta fåglar har hon ett program. Följande deklarationer av variabler och metoder är redan gjorda och inga andra får användas för att lösa uppgiften. class Fagelskadning static public void main(string[] args) Fagel pippi = new Fagel(1200,"200X45" ); // Koden i a- och b-delen hamnar här. //class Fagelskadning class Fagel static public int antal=0; public double vikt; public String märkning; public Fagel(double vikt, String märkning) //Initierar instansvariablerna public void ändravikt(double vikt) //Ändrar fågelns vikt public double gevikt() //Returnerar fåglens vikt public String gemärkning() //Returnerar fågelns märkning //class Fagel 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 String s = pippi.gemärkning(); pippi.ändravikt(); char c = Fagel.antal; Fagel f = new Fagel(200X46); b) Skriv kod som skriver ut all information om pippi(dvs pippis vikt och märkning).

4 Uppgift 3: Matriser, arrayer och vektorer Isländska energimyndigheten vill ta hålla koll på vattenflödet i vattenfallen. Hjälp dem skriva ett program för att göra detta. De har gjort följande deklarationer, inga andra får användas för att lösa uppgiften. class VattenKraft int num=150; int i, totflöde, maxflöde; int[] fall = new int[num]; //vattenflödet i vattenfallen Vector v = new Vector(); Vattenfall ettfall; // Koden i a-, b- och c-delen hamnar här. //class VattenKraft class Vattenfall int flöde; String namn; public Vattenfall(int flöde, String namn) this.flöde = flöde; this.namn = namn; //class Vattenfall a) Skriv kod som summerar alla vattenflöden (dvs alla värden i fall).

Namn: Personnr: 5 b) Skriv kod som skriver ut alla flöden i omvänd ordning (dvs det sista flödet i fall ska skrivas ut först). c) Anta att flera element (avtypen Vattenfall) lagts in i vektorn v. Skriv kod som skriver ut namnet på Vattenfallet på den första positionen i vektorn. Uppgift 4: Klasser Fårägaren Frej Fårskalle har en enorm fårhage (hagen) med massor av får. Han har börjar skriva på ett program för att hålla reda på sina får. Hjälp honom att skriva koden i metoderna! class Faarskallen FaarHage hagen = new FaarHage(200); if (hagen.klipp(40)) System.out.println("Klipp fåren!!!"); //class Faarskallen class FaarHage public Faar[] bä; private int antal; public FaarHage(int n) /*konstruktor som ger värden till instansvariablerna och som läser in information från en fil om fåren och fyller bä med får*/

6 double medelulllängd() /* Metod som beräknar medelullängden på alla fåren i hagen*/ boolean klipp(int gräns) /*metod som jämför medelullängden med gräns och returnerar true om fåren ska klippas. Om medellängen överstiger gränsvärdet ska fåren klippas.*/ //class FaarHage class Faar double ullängd; int födelseår; Faar(double ullängd, int år) /* Konstruktor som ger instansvariablerna värden*/ //class Faar a) Skriv den kod som saknas i konstruktorn i klassen Faar. b) Skriv den kod som saknas i metoden klipp().

Namn: Personnr: 7 Uppgift 5: Minnesbilder Betrakta följade program. class Fem Vulkan krafla = new Vulkan(true, 1984, 97.3); krafla.snartutbrott(); //class Fem class Vulkan public static final double GRÄNSVÄRDE = 103; public static int numaktiv = 0; //antal aktiva registrerade vulkaner boolean aktiv; int utbrottsår; //årtal för senaste utbrott double tryck; //inre tryck i vulkanen public Vulkan(boolean aktiv, int utbrottsår, double tryck) this.aktiv = aktiv; this.utbrottsår=utbrottsår; this.tryck = tryck; if (aktiv) numaktiv++; //a public void snartutbrott() double kvot = tryck/gränsvärde; if (kvot>1) System.out.println("Vulkanen har ett utbrott NU!!"); else if (kvot>0.7) System.out.println("Troligtvis utbrott snart"); else System.out.println("Ta det LUNGT..."); //b //class Vulkan

8 I uppgifterna nedan skall du rita bilder av minnet vid två tillfällen under exekveringen. Bilderna skall innehålla samtliga klasser med tillhörande klassvariabler, samtliga metodanrop med lokala variabler (glöm inte this) och samtliga objekt med instansvariabler. Alla variablers värden skall framgå av bilden. Objekt som är kandidater för skräpsamling skall markeras. a) Rita en bild av minnet vid läge (a) i programmet. Klasser och klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler b) Rita en bild av minnet vid läge (b) i programmet. Klasser och klassvariabler Metodanrop och lokala variabler Objekt och instansvariabler

Namn: Personnr: 9 5c) Betrakta följade program. class FemC // c) //class FemC class Hast int mankhöjd; public Hast(int mankhöjd) this.mankhöjd = mankhöjd; public void skrivmankhöjd() System.out.println("Mankhöjden är " + mankhöjd); //class Hast Klasser och klassvariabler FemC Hast Metodanrop, parametrar och lokala variabler main(...) String[] args? islandshäst dalahäst Hast Hast Objekt/Instanser och instansvariabler Hast-objekt int mankhöjd 120 Hast-objekt int mankhöjd 15 Skriv de satser som ska invidc) i main för att det ska seutsomovan i minnet.