Tentamen EDA698 Realtidssystem (Helsingborg)
|
|
- Sara Nilsson
- för 8 år sedan
- Visningar:
Transkript
1 LUNDS TEKNISKA HÖGSKOLA 1(10) Institutionen för datavetenskap Tentamen EDA698 Realtidssystem (Helsingborg) , Det är tillåtet att använda Java snabbreferens och miniräknare, samt ordbok. Det går bra att använda både engelska och svenska uttryck för svaren. Den här tentamen består av två delar: teori, frågor 1-5 (24 poäng), och programmering & design, frågor 6 och 7 (16 poäng). För godkänd (betyg 3) krävs sammanlagt ca hälften av alla 40 möjliga poäng samt att det krävs ca en tredjedel av poängen i varje del för sig. För högsta betyg (5) krävs dessutom att en del av poängen uppnås med (del)lösningar till båda uppgifterna i programmering & design (preliminärt). 1. Jämnlöpande exekvering, delade resurser och synkronisering a) I ett flertrådigt system, då minst två trådar ska arbeta med samma data resurs, kan det uppstå ett problem med inkonsistent data. Vad menas med det? Förklara med ett litet konkret exempel! Hur kan man i allmänhet förhindra sådana inkonsistenta tillstånd? Ge ett övergripande begrepp på vad som måste uppnås! b) I kursen diskuterades tre konkreta mekanismer som man kan använda för att få till säker kommunikation och resursdelning mellan flera trådar i ett system. Lista och förklara dessa mekanismer med någon mening var. Är de likvärdiga? Förklara varför! c) Förklara följande diagrammet! Vad är det som diagrammet föreställer, vad är det som händer i de olika delarna? synchronized wait notify < 2 #6./ 3#1 45 #+ #6 # synchronized(.){ * & & wait notify * &# * & & & ()(!!"# "! D (2p + 4p + 3p)
2 2(10) 2. Dödlägesanalys Staden ska få ett litet service järnvägssystem, dels för nöjes skull och dels för att underlätta lite för de som har svårt att gå att ta sig runt stadskärnan. Eftersom man trots allt ska hålla kostnaderna nere, beslutar man att helt enkelt ha ett enkelspårigt ringsystem, där tågen enbart ska serva hållplatserna åt ett håll. Folk får helt enkelt åka runt stadskärnan lite då och då. För att det inte ska bli alltför långa resor tillåter man dock två extra spår, så att man får ett rälssystem som i bilden, med rälsavsnitt A till F (med motsvarande hållplatser), där av säkerhetsskäl enbart ett tåg kan vara på varje avsnitt vid en given tidpunkt, dvs varje avsnitt fungerar som en delad resurs med ömsesidig uteslutning. För att ett tåg ska kunna komma från ett avsnitt till ett annat måste alltså föreliggande avsnittet vara ledigt (signalen slår om till grönt ljus då), dvs ett tåg blockerar (håller) ett avsnitt medan det väntar på ett annat. Tågen ska ha fasta körsträckor som alltid täcker samma sekvens, dvs för att alla hållplatser ska servas måste tågen få olika typer som tillhör körsträckorna. Det finns fyra tågtyper T1, T2, T3, T4, som har följande sträckor: T1 - ABDEA, T2 - ACDFA, T3 - ABDFA och T4 - ACDEA. Det är uppenbart att man måste ha minst två tågtyper för att nå alla hållplatser, antingen T1 och T2 eller T3 och T4. Nu gäller det alltså att optimera antalet och tågtyper så att rälsen utnyttjas maximalt, och trafikanterna inte behöver vänta alltför länge på ett passande tåg, så man börjar testa lite olika lösningar. a) En första belastningsanalys ska göras, där man accepterar att man inte når alla hållplatserna, dvs man räknar enbart med tåg av en typ. Varför är det maximalt tre tåg av samma typ som man kan ha i gång? Förklara med hjälp av en resursallokeringsgraf för tåg av typ T1 (ett tåg motsvarar en tråd och ett rälsavsnitt en delad resurs)! b) Man inser lätt att det går alldeles utmärkt att ha ett tåg T1 och ett tåg T2, som då ser till att man kan åka från och till alla hållplatser. Visa med hjälp av en utökad resursallokeringsgraf, som nu tar hänsyn till två tågtyper T1 och T2, att det skulle fungera! c) Nackdelen av att ha enbart två tåg körandes är att man måste byta tåg ibland, t ex för att åka från B till F, och att det då tar lite tid tills det andra tåget kommer, eftersom det enbart är två tåg som kör. Testfolket bestämmer sig för att prova med två tåg av varje typ, dvs två tåg T1 och två tåg T2. Det går bra en stund, sen hamnar de i ett dödläge. Förklara detta fenomen med hjälp av din resursallokeringsgraf och några meningar. d) Trots detta bakslaget fortsätter man att testa och lyckas till slut hitta ett sätt att ha fyra tåg igång. Vilket sätt är det och fungerar det alltid? (Tips: Ta en ännu mera utökad resursallokeringsgraf som underlag!) 3. Prioriteter D E F C B A (1p + 1p + 2p + 1p) a) Vad är prioritetsinvertering (priority inversion)? Förklara med hjälp av en figur och några meningar. b) Varför får prioritetsinvertering ej förekomma i ett system som ska uppfylla realtidskrav? c) Vad kan man göra för att undvika detta problem? Förklara, motivera ditt svar! (1p + 1p + 1p) 4. Schemaläggning (scheduling) Man kan schemalägga ett flertrådigt system antingen statiskt eller dynamiskt. Förklara dessa två typer av schemaläggning och diskutera för- och nackdelar! (2p)
3 3(10) 5. Schemaläggningsanalys Givet är ett system med trådarna A, B och C, som kommunicerar genom tre monitorer M1, M2 och M3 enligt metodanropen beskrivna i grafen nedan. Annan kommunikation eller synkronisering mellan trådarna förekommer inte. Tabellen nedan visar exekveringstiderna (i värsta fall, WCET) C i och perioderna T i för alla trådar i millisekunder. Schemaläggningen sker dynamiskt enligt RMS och det används dynamiskt prioritetsarv (basic priority inheritance). Formeln för svarstider är: R R k+1 k i = C i + B i + i C T j j hp(i) j Blockeringsgraf för systemet: M1 Trådarnas perioder och exekveringstider: a1(); 30ms A b1(); 50ms B T C A B C a3(); 60ms b2(); 30ms M3 M2 Formeln av Liu & Layland: c3(); 105ms C c2(); 20ms C i T i < n(2 1 n 1) a) Med formeln av Liu & Layland (se ovan) kan man få en första uppskattning om ett tänkt system går att schemalägga. Ange formeln och förklara, varför detta INTE är en lämplig metod för det här givna systemet! Vad måste alltså visas för det givna systemet? b) Beräkna blockeringstiderna B i! c) Analysera systemet med en exakt metod! Är det schemaläggningsbart? 6. Programmering Parkeringshus (2p + 1p + 2p) Stadens parkeringshus ska byggas om så att det äntligen blir en bra reglering av in- och utsläpp av bilar och ingen kör in förgäves när det egentligen inte finns plats. Dessutom vill stadsförvaltningen ha lite bättre statistik över antalet bilar som står parkerade under dygnet. Parkeringshuset är rätt litet och har enbart en in- och utfart med respektive bommar. När man kommer till infarten får man en biljett utskriven som har ankomsttiden sparad. Innan man lämnar parkeringen matar man in biljetten i en kassa-automat som läser av parkeringstiden, tar betalt och sparar betaltidpunkten på biljetten. Man har nu en viss tid på sig att leta upp bilen och köra fram till utfartens bom. Där matar man in biljetten i läsaren och har biljetten betalts samt att inte tidsmarginalen överskridits öppnas bommen och man kan köra ut. Annars kommer biljetten ut igen och ett meddelande visas. Betalningshanteringen fungerar redan bra, den behöver inte tänkas på. Staden har dock följande krav på den nya styrningen av in- och utsläpp: Hantering av in- och utpassage ska vara oberoende av varandra, dvs samtidigt som en bil håller på att checkas in kan andra bilar köra ut.
4 4(10) Om parkeringshuset är fullt, ska ingen biljett skrivas ut till en bilförare som trycker på knappen, man får vänta helt enkelt (eller ge upp). Har det varit fullt och en bil körs ut, måste en eventuellt väntande bilförare trycka på knappen igen, innan en biljett skrivs ut. Efter att bilföraren har tagit biljetten, öppnas bommen. När bilen börjar passera bommen, registreras detta med hjälp av en ljusstråle som bryts. Först när bilen har passerat ljusstrålen, dvs den är inte bruten längre, ska den fysiska bommen stängas. Vid utpassage ska den fysiska bommen öppnas efter att biljetten har kontrollerats och godkänts (betalt och ingen tidsmarginal har överskridits), sen är det samma teknik som för inpassage, dvs en ljusstråle används för att säkerställa att bilen har passerat innan bommen kan stängas igen. Antalet bilar i parkeringshuset ska räknas upp när bilen har passerat infartsbommen efter biljettutskrivning. Antalet bilar i parkeringshuset ska räknas ner när bilen har passerat utfartsbommen efter biljettkontroll. Parkeringshuset är öppet mellan kl 6:00 och kl 24:00. Under den tidsperioden ska antalet parkerade bilar rapporteras varje kvart för statistiken. Öppettiderna ska övervakas av infartshanteringen; den ska stängas först när det blir stängningsdags. Styrsystemet stängs av under natten och initialiseras på nytt varje dag (dock förblir antalet kvarvarande bilar sparade i en fil), så att det blir möjligt att lätt ändra öppettiderna. Uppgift: För att kunna hantera in- och utfart oberoende behövs två klasser (InGate och OutGate) för kommunikationen mellan knapparna (bilföraren), sensorer och bommarna (beskrivna i klassen Gate, som är superklass till just InGate och OutGate), som används av en motsvarande tråd var (InHandler och OutHandler). För att de ska kunna övervaka antalet bilar behövs en monitorklass (ParkingData) och för rapporteringen av antalet bilar med jämna mellanrum behövs en till tråd (Reporter), som läser av data i monitorn och skriver ut rapporten (det går bra till System.out.println). Slutligen måste allt startas upp och initialiseras via en övergripande Styrningskomponent, klassen ParkingControl (given). Det som behövs nu är att programmera klart resterande delar av styrningssystemet med hjälp av kod-skeletten (Appendix A), specifikation (se ovan) och lämpliga Java-metoder (se Appendix B) enligt följande: a) Skriv koden för monitor-metoden carin som räknar upp antalet bilar i parkeringshuset och meddelar att det nu är fullt om det inte var det innan. b) Skriv koden för monitor-metoden carout som räknar ner antalet bilar i parkeringshuset och meddelar att det inte längre är fullt om det var det innan. c) Skriv koden för monitor-metoden checkparkingspace. Den ska blockera så länge parkeringshuset är fullt. d) Skriv koden för monitor-metoden writereport. Den ska skriva ut aktuellt antal bilar i parkeringshuset tillsammans med den aktuella tiden. e) Skriv koden för metoden issueticket i klassen InGate. Den ska blockera tills biljettknappen har tryckts (ticketbuttonpressed == true). Sedan ska den skriva ut en biljett med den aktuella tidsstämpeln (i ms) och dess löpande nummer för dagen (metoden finns redan, men anropet ska du skriva själv). Sedan ska den blockera tills biljetten har tagits från automaten. f) Skriv koden för metoden checkticket i klassen OutGate. Den ska blockera tills en biljett blir inmatad i läsaren (ticketentered == true) och sedan kontrollera att biljetten är betald och tidsmarginalen allowedtime efter betalningstidpunkten inte har överskridits. är det något som är fel, ska biljetten returneras (metoden finns redan, anropet ska du skriva själv) och metoden ska blockera tills biljetten har tagits från läsaren. Är allt i sin ordning, lämnar metoden över tillbaka till anropande tråd efter biljetten kontrollerats.
5 5(10) g) Skriv koden för run-metoden i trådklassen InHandler. Denna ska så länge det inte är stängningsdags och inte parkeringshuset är fullt invänta en knapptryck på biljett-knappen (se InGate, metoden issueticket). Har knappen tryckts ska den vänta på att föraren tagit ut biljetten och öppna bommen. Nu ska den vänta på att passagen av bilen registreras (ljusstråle-avläsning i InGate) och sedan se till att bommen stängs, samt att bilantalet räknas upp i monitorn ParkingData och eventuellt se till att utgångsläget återställs. h) Skriv koden för run-metoden i trådklassen OutHandler. Denna ska invänta en inmatning av en betald biljett (hanteras i OutGate). Är allt ok, ska bommen öppnas, annars ska biljetten returneras (ett felmeddelande visas). Har bommen öppnats, ska den vänta på att passagen av bilen registreras (ljusstråle-avläsning i OutGate) och sedan se till att bommen stängs, samt att bilantalet räknas ner i monitorn ParkingData och eventuellt se till att utgångsläget återställs. Sedan ska den börja om med väntandet. i) Skriv koden för run-metoden i trådklassen Reporter. Den ska med 15 minuters mellanrum se till att det aktuella antalet bilar i parkeringshuset skrivs ut tillsammans med den aktuella tidsstämpeln. (1p + 1p + 1p + 1p + 2p + 2p + 2p + 1p + 1p) 7. Design Parkeringshus med två in-/utfarter och kontrollerat utsläpp Parkeringshuset växer till sig lite och ska få en extra in- och utfart. Dessutom har det upptäckts en miss i planeringen för det ursprungliga systemet: Om någon betalar sin biljett efter kl 23:45 (dvs mindre än en kvart innan parkeringshuset stänger, vilket är tidsmarginalen för utsläpp efter betalningen), kan ju den personen inte utnyttja den kvarten om utfarten stänger kl 24:00 prick. Man bestämmer sig att utfarten ska hållas öppet tills alla biljetter som betalats innan stängning har använts vid någon utfart. Infarterna ska dock stängas som tidigare. Din uppgift är nu att lägga till de delar av systemet som behövs för att hantera dubbla in- och utfarter och den smartare utsläppskontrollen (OBS: du behöver INTE skriva koden, bara göra ett design-förslag), baserad på det befintliga systemet. Beskriv hur DIN lösning skulle kunna se ut. Du kan göra det med en ritning, skriven text, kod-skelett eller en blandning av dessa. Några stödfrågor du kan ställa dig är: Vilka komponenter (trådar, andra klasser) måste läggas till? Får trådklasserna / monitormetoderna extra villkor på sig? Vilka ändringar behövs i hanteringen av insläppet? Hur kan man säkerställa att inte en bilförare vid infart 2 får en biljett utskriven medans sista möjliga bilen håller på att rulla genom infart 1? Hur kan man hantera det nya utsläppsvillkoret? Hur borde man hantera avslutet för trådklassen OutHandler? Vad händer med rapport-tråden, när ska den avslutas? Slut på uppgifterna (Appendix A och B finns på resterande sidor). Lycka till! (4p)
6 6(10) A Koden till uppgift 6 Styrklassen ParkingControl (färdig, inget att ändra) Den här beskrivningen är enbart till för information om hur systemet hänger ihop, här behöver du inte ändra något! Om du behöver, kan du självklart ändra i alla redan skrivna delar, men det borde fungera utan ändringar annat än där du ska skriva koden klart! public class ParkingControl { private InGate in; private OutGate out; private InHandler inhandler; private OutHandler outhandler; private Reporter reporter; private ParkingData parkingdata; private int parkedcars; // Constructor that starts up and closes down the control system. public ParkingControl( long closingtime, long allowedtimeafterpayment, int maxnumofcars, int parkedcars) { this.parkedcars = parkedcars; parkingdata = new ParkingData( maxnumofcars, parkedcars); in = new InGate(); out = new OutGate(); long openingtime = System.currentTimeMillis(); inhandler = new inhandler( openingtime, closingtime, parkingdata, in); outhandler = new OutHandler( allowedtimeafterpayment, parkingdata, out); reporter = new Reporter( parkingdata); inhandler.start(); outhandler.start(); reporter.start(); try { inhandler.join(); // Wait for the handler to terminate itself at closingtime outhandler.interrupt(); reporter.interrupt(); Thread.sleep( 200); // Give them all time to terminate properly catch (InterruptedException exc) { // save the number of cars to be locked in over night // assuming a "getnumber"-method that can be called after the day s run this.parkedcars = parkingdata.getcurrentnumberofcars(); // end of class ParkingControl Monitor-klassen ParkingData (fyra metoder att lägga till) public class ParkingData { private int maxnumcars; private int currentnumcars; private boolean parkingfull; // Add attributes if necessary // Change if necessary
7 7(10) public ParkingData( int maxnumberofcars, int currentnumberofcars) { maxnumcars = maxnumberofcars; currentnumcars = currentnumcars; parkingfull = false; if( currentnumcars >= maxnumcars) parkingfull = true; // end of constructor // Task part a), b), c), and d) // WRITE YOUR METHODS HERE // task part a) // method: carin() // add suitable tags, return value, and parameters! (if needed!) // task part b) // method: carout() // add suitable tags, return value, and parameters! (if needed!) // task part c) // method: checkparkingspace() // add suitable tags, return value, and parameters (if needed!) // task part d) // method: writereport() // add suitable tags, return value, and parameters (if needed!) // end of class ParkingData Hårdvarugränssnittet / klassen Gate (färdig, inget att ändra) public class Gate { //... other attributes, constructor and other stuff for setting / getting values // TRUE, if a car is cutting the light, i.e., the circuit is open private boolean lightcircuitopen; // TRUE, if the gate is open public boolean gateisopen; // opens the physical gate public void opengate() {//... // closes the physical gate public void closegate() {//... //... // end of class Gate Hårdvarugränssnittet / klassen InGate (en metod att lägga till) public class InGate extends Gate { //... other attributes, constructor...
8 8(10) // TRUE, when someone pressed the ticket button // while the keylistener is set to "active" // otherwise FALSE private boolean ticketbuttonpressed; // TRUE, when an issued ticket has been taken out // FALSE, while a printed ticket is waiting in the slot private boolean tickettaken; // sets the hardware key listener active (TRUE) or // inactive (FALSE) public void setkeylistener( boolean active) {//...; // resets the ticket button flag to FALSE public resetticketbuttonflag() {//... // prints a ticket and offers it, sets tickettaken to FALSE public void printticket( int ticketnumber, long timestamp) {//... // Task part e) // task part e) // method: issueticket() // add suitable tags, return value, and parameters (if needed!) // end of class InGate Hårdvarugränssnittet / klassen OutGate (en metod att lägga till) public class OutGate extends Gate { //... other attributes, constructor... // TRUE, when someone feeds in a (paid) ticket private boolean ticketentered; // TRUE, when a rejected ticket has been taken out // FALSE, while a rejected ticket is waiting in the slot private boolean rejectedtickettaken; // returns a ticket and sets rejectedtickettaken to FALSE public void rejectticket() {//... // reads the ticket and returns the time of payment, // or -1 in case it was not paid public long readticket() {//... //resets the ticketentered flag to FALSE after handling the ticket public void resetticketenteredflag() {//... // Task part f) // task part f) // method: checkticket() // add suitable tags, return value, and parameters (if needed!) // end of class OutGate
9 9(10) Trådklassen InHandler (run-metoden måste implementeras) public class InHandler extends Thread { private long openingtime; private long closingtime; private InGate ingate; private ParkingData pdata; public InHandler( long otime, long ctime, InGate in, ParkingData p) { openingtime = otime; closingtime = ctime; pdata = p; ingate = in; // Task part g) public void run() { // WRITE YOUR METHOD HERE // end of class InHandler Trådklassen OutHandler (run-metoden måste implementeras) public class OutHandler extends Thread { private long allowedtime; private OutGate outgate; private ParkingData pdata; public OutHandler( long allowedtimeafterpayment, OutGate out, ParkingData p) { allowedtime = allowedtimeafterpayment; pdata = p; outgate = out; // Task part h) public void run() { // WRITE YOUR METHOD HERE // end of class OutHandler Trådklassen Reporter (run-metoden måste implementeras) public class Reporter extends Thread { private ParkingData pdata; public Reporter( ParkingData p) { pdata = p; // Task part i) public void run() { // WRITE YOUR METHOD HERE // end of class Reporter Slut på koden!
10 10(10) B Kort, specifik Java-referens med eventuellt lämpliga metoder Tidshantering, trådhantering, väntelägen, etc klass System: public static long System.currentTimeMillis(): aktuell systemtid i millisekunder klass Thread: public static void sleep( long t): försätta en tråd i viloläge under t ms public static void yield(): dra tråden tillbaka och sätt i kön för ny schemaläggning public void join(): vänta att tråden dör public void start(): starta upp tråden public void run(): trådens arbete klass Object: public final void wait(): försätta en tråd i vänteläge public final void wait( long t): försätta en tråd i vänteläge under max t ms. Kan väckas i förtid! public final void notify(): meddela nästa tråden i vänte-kön att ett tillstånd har ändrats public final void notifyall(): meddela alla trådar i vänteläge att ett tillstånd har ändrats
Tentamen EDA698 Realtidssystem (Helsingborg)
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen EDA698 Realtidssystem (Helsingborg) 2014 10 28, 14.00 19.00 Det är tillåtet att använda Java snabbreferens och miniräknare, samt ordbok.
Tentamen EDA698 Realtidssystem (Helsingborg)
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen EDA698 Realtidssystem (Helsingborg) LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Det är tillåtet att använda Java snabbreferens
Tentamen Lösningar EDA698 Realtidssystem
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen Lösningar EDA698 Realtidssystem 13 10 22, 14:00 19:00 1. Prioriteter, korrekthet a) Realtidsproblemet kvarstår. Det finns ingen garanti
Exam Concurrent and Real-Time Programming
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Exam Concurrent and Real-Time Programming 2018 08 23, 14.00 19.00 1. Vad är prioritetsinversion? Illustrera med ett enkelt exempel. Redogör
Realtidssystem. - Dödläge - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 5
Realtidssystem - Dödläge - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 5 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar baserad på: Föreläsningsmaterial
Concurrency Saker händer samtidigt. Process En instans av ett program
Concurrency Saker händer samtidigt Hur gör vi flera saker samtidigt på en dator? - Dela på en CPU - Flera CPU Flera processer på en dator. Operativsystemet (OS) tilldelar dem körtid (time slices, prioritet)
Tentamen, EDAA10 Programmering i Java
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen, EDAA10 Programmering i Java 2019 08 21, 08.00 13.00 Anvisningar: Preliminärt ger uppgifterna 25 + 15 + 5 = 45 poäng. För godkänt betyg
Realtidssystem. - Schemaläggning - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6
Realtidssystem - Schemaläggning - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 6 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar baserad på: Föreläsningsmaterial
Tentamen, EDA501 Programmering M L TM W K V
LUNDS TEKNISKA HÖGSKOLA 1(3) Institutionen för datavetenskap Tentamen, EDA501 Programmering M L TM W K V 2010 04 13, 8.00 13.00 Anvisningar: Denna tentamen består av 4 uppgifter. Preliminärt ger uppgifterna
Realtidssystem. - Schemaläggning - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6
Realtidssystem - Schemaläggning - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 6 Stora delar baserad på: Föreläsningsmaterial EDA040 (Klas Nilsson, Mathias Haage) samt EDA698 (Mats Lilja)
Tentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2012 05 28, 8.00 13.00 Del 1 1. Time To Live (TTL) anger hur många routrar ett multicastpaket
Trådar. Aktiva objekt
Föreläsning 11 Trådar 1 Aktiva objekt Det är välkänt från vardagslivet att saker händer samtidigt. Aktiva objekt gör saker på eget initiativ, medan passiva objekt endast gör saker när de blir ombedda.
Tung bakgrundsaktivitet t.ex. Aktiva objekt t.ex. Animering, simulering. DD2385 Programutvecklingsteknik Några bilder till föreläsning 9 6/5 2013
DD2385 Programutvecklingsteknik Några bilder till föreläsning 9 6/5 2013 Innehåll Trådar i Java swing- klassen Timer Klient-Server-program Trådar Tråd = enkel process Ett program kan ha flera trådar, flera
Tentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2014 06 02, 8.00 13.00 Del 1 1. a) TCP (Transmission Control Protocol) och UDP (User Datagram
Objektorienterad Programkonstruktion. Föreläsning 2 2 nov 2016
Objektorienterad Programkonstruktion Föreläsning 2 2 nov 2016 Objekt - klass Namn Fält1 Fält2 Fält3 Metod1 Metod2 Metod3 Metod4 Objekt - klass Objekt - klass Objekt - klass + Objekt - klass public class
Tentamen, EDA501/EDAA20 Programmering M MD W BK L
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen, EDA501/EDAA20 Programmering M MD W BK L 2017 05 31, 8.00 13.00 Anvisningar: Preliminärt ger uppgifterna 9 + 12 + 10 + 9 = 40 poäng.
Realtidssystem. - Semaforer, trådsynkronisering - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 2
Realtidssystem - Semaforer, trådsynkronisering - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 2 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar baserad
Classes och Interfaces, Objects och References, Initialization
Classes och Interfaces, Objects och References, Initialization Objekt-orienterad programmering och design (DIT953) Niklas Broberg/Johannes Åman Pohjola, 2018 Abstract class En abstract class är en class
Javas Exceptions. DD2385 Programutvecklingsteknik Fler bilder till föreläsning 7 23/ Kort om Javas Exceptions Trådar i Java
DD2385 Programutvecklingsteknik Fler bilder till föreläsning 7 23/4 2014 Innehåll Kort om Javas Exceptions Trådar i Java swing- klassen Timer Klient-Server-program Javas Exceptions Checked måste hanteras,
Tentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13
LUNDS TEKNISKA HÖGSKOLA Datavetenskap Nätverksprogrammering 2004 LÖSNINGAR Tentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13 DEL 1 - Frågor av teoretisk, principiell eller utredande
Realtidssystem. - Meddelanden och händelsehantering - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 4
Realtidssystem - Meddelanden och händelsehantering - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 4 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar baserad
Tentamen, EDA501 Programmering M L TM W K V
LUNDS TEKNISKA HÖGSKOLA 1(0) Institutionen för datavetenskap Tentamen, EDA501 Programmering M L TM W K V 2010 05 31, 8.00 13.00 Anvisningar: Denna tentamen består av 4 uppgifter. Preliminärt ger uppgifterna
Tentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2018 03 14, 8.00 13.00 Del 1 1. Applikationslagret levererar data mellan applikationer och till
Lösningsförslag. Programmeringsmetodik, KV: Java och OOP. 17 januari 2004
Lösningsförslag Programmeringsmetodik, KV: Java och OOP 17 januari 2004 Examinator: Johan Karlsson Skrivtid: 9-15 Hjälpmedel: En av följande böcker: Barnes & Kölling: Objects First With Java a practical
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA för SY2 1999-03-17, kl 14.00-18.00 Hjälpmedel: En lärobok i Java programmering Återlämningstillfälle:
Tråd C (ms) T (ms) A 4 16 B 3 10 C 4 25 D 2 12
LUNDS TEKNISKA HÖGSKOLA Datavetenskap Realtidsprogrammering : EDA040 DAT040 Tentamensskrivning - Realtidsprogrammering 2006-06-01, kl 8.00-13.00 Anvisningar: Tillåtna hjälpmedel: inga utöver Java snabbreferens.
Att skriva till och läsa från terminalfönstret
Att skriva till och läsa från terminalfönstret Oftast används grafiska komponenter i Java för att kommunicera med användaren (användargränssnitt), men det finns objekt i standardbiblioteken för de tillfällen
Tentamen i Objektorienterad modellering och design Helsingborg
Lunds Tekniska Högskola Datavetenskap Emelie Engström Tentamen EDAF25 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Helsingborg Tentamen består av en teoridel om totalt 5 poäng
Tentamen, EDA690 Algoritmer och Datastrukturer, Helsingborg
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen, EDA690 Algoritmer och Datastrukturer, Helsingborg 2013 12 19, 8.00 13.00 Anvisningar: Denna tentamen består av 4 uppgifter. Preliminärt
Objektorienterad Programkonstruktion. Föreläsning 11 6 dec 2016
Objektorienterad Programkonstruktion Föreläsning 11 6 dec 2016 Föreläsningen 13/12 Halvtidsrepetition Maila frågor som ni vill att jag tar upp! ccs@kth.se Processer Vad vi i dagligt tal menar när vi pratar
Tentamen, EDAA20/EDA501 Programmering
LUNDS TEKNISKA HÖGSKOLA 1(4) Institutionen för datavetenskap Tentamen, EDAA20/EDA501 Programmering 2011 10 19, 8.00 13.00 Anvisningar: Denna tentamen består av fem uppgifter. Preliminärt ger uppgifterna
Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg 1. a) Figure 1 2015 06 04 GeometryApp GraphicalApp
TENTAMEN OOP
TENTAMEN OOP 2013-08-08 ANVISNINGAR Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv tydligt - oläsbara svar beaktas ej. BETYGSÄTTNING Max antal poäng är 30. För att bli
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 Programmeringsteknik II 2018-10-19 Skrivtid: 8:00 13:00 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer
TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P
UME UNIVERSITET Datavetenskap 981212 TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P Datum : 981212 Tid : 9-15 HjŠlpmedel : Inga Antal uppgifter : 9 TotalpoŠng : 60 (halva pošngtalet kršvs normalt fšr
Tentamen LÖSNINGSFÖRSLAG. c) Tilldelningen C x = new D() ger kompileringsfel eftersom klassen D är abstrakt.
Tentamen 101213 - LÖSNINGSFÖRSLAG Uppgift 1. a) Ger utskriften c( ) in D b) Ger utskriften true c) Tilldelningen C x = new D() ger kompileringsfel eftersom klassen D är abstrakt. d) Ger utskriften b( )
Idag. Exempel, version 2. Exempel, version 3. Ett lite större exempel
Idag Ett exempel Undantag Substitutierbarhet, subtyper, subklasser När val av metod beror av typerna hos två objekt Lite om överlagring Exempel, version 2 Notera: för samtliga figurer gäller: arean av
Tentamen i Programmering
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen i Programmering EDAA65/EDA501/EDAA20 M MD W BK L 2018 05 30, 8.00 13.00 Preliminärt ger uppgifterna 7 + 14 + 6 + 9 + 4 = 40 poäng.
Tentamen. DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl Hjälpmedel: penna, suddgummi, linjal
Tentamen DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl 14.00 17.00 Hjälpmedel: penna, suddgummi, linjal Tentan har två delar om vardera 30 poäng Maximala betygsgränser (gränserna
TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng
TENTAMEN I PROGRAMMERING Ansvarig: Jan Skansholm, tel 7721012 Betygsgränser: Hjälpmedel: Sammanlagt maximalt 60 poäng. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng Skansholm,
Tentamen i Objektorienterad modellering och design
Lunds Tekniska Högskola Datavetenskap Tentamen EDA061 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Vid bedömningen kommer hänsyn att tas till lösningens kvalitet. UML-diagram
Realtidssystem. - Semaforer, trådsynkronisering - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp 2015-09-02
Realtidssystem - Semaforer, trådsynkronisering - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp 2015-09-02 Stora delar baserad på: Föreläsningsmaterial EDA040 (Klas Nilsson, Mathias Haage) samt EDA698
Tentamen ID1004 Objektorienterad programmering May 29, 2012
Omtentamen för ID1004 Objektorienterad programmering HT11, 29 maj 2012, 09-13 Denna tentamen examinerar 3 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av 12 frågor. Varje fråga
Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016
Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Abstract class En abstract class är en class som inte kan skapa några objekt. Syfte:
Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016
Command line argumenter Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 /* Cla. java * Programmet illustrerar
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Felhantering Eclipse Felsökning Command line argumenter
Abstrakt klass. DD2385 Programutvecklingsteknik Några bilder till föreläsning 4 31/ Exempel: Implementation av Schackpjäser.
DD2385 Programutvecklingsteknik Några bilder till föreläsning 4 31/3 2017 Innehåll Abstrakta klasser Klasshierarki och typhierarki Polymorfism och dynamisk bindning Polymorfi-exempel: Schack Klassen Object
Lösningsförslag till tentamen i EDA011, lördagen den 16 december 2006
Lösningsförslag till tentamen i EDA011, lördagen den 16 december 2006 Detta lösningsförslag är skrivet i stor hast, så det är möjligt att det innehåller en del slarvfel jag ber i så fall om ursäkt för
Tentamen, EDAA20/EDA501 Programmering
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen, EDAA20/EDA501 Programmering 2015 08 20, 8.00 13.00 Anvisningar: Denna tentamen består av fyra uppgifter. Preliminärt ger uppgifterna
Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
Tentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2018 04 11, 8.00 13.00 Del 1 1. a) IP-numret identifierar en enskild dator på internet. b) Port-numret
Trådar. Motivering. Många program måste kunna hålla på med flera saker samtidigt, till exempel. fleranvändarsystem.
Motivering Uppsala Universitet 21 april 2005 Många program måste kunna hålla på med flera saker samtidigt, till exempel fleranvändarsystem en webserver som måste kunna leverera flera websidor samtidigt
Tentamen Nätverksprogrammering Lösningsförslag
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen Nätverksprogrammering Lösningsförslag 2016 05 31, 8.00 13.00 Del 1 1. a) Vid multicast skickas ett datagram från en sändande dator
DAT043 Objektorienterad Programmering
DAT043 Objektorienterad Programmering Detta är en exempeltenta som innehåller gamla tentauppgifter av ungefär liknande slag som ni kan förvänta er se på ordinarie tenta i Del 1 respektive Del 2. Dock är
Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2
AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga
TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 6 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 6 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Mer om Interface Generiska klasser Undantag Nästlade klasser 1
OOP Tentamen
DVS SU/KTH 1 (6) OOP OOP Tentamen 2010-01-15 15.00 20.00 Avser kurserna: DSK1:OOP GES:OOP ID1013 Anvisningar Skriv namn och personnummer på varje inlämnat blad. Påbörja varje ny uppgift på nytt blad. Skriv
trafiksimulering Intro OU5 trafiksimulering
Presentation av obligatoriska uppgiften trafiksimulering Ett lite större program med flera klasser Hur man designar ett system Hur man gör simuleringar 1 Valsätr ravägen Korsningen Dag hammarsköldsväg
Föreläsning 12: Exempel och problemlösning
TDA 545: Objektorienterad programmering Föreläsning 12: Exempel och problemlösning Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag Problemlösning, dvs hur man ska tänka för att hitta lösning int mängd/set
OOP Omtenta
Stockholms universitet 1 (6) OOP OOP Omtenta 2011-08-13 10.00 15.00 Avser kurserna: DSK1:OOP GES:OOP ID1013 Anvisningar Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv
TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Interface Generiska klasser Undantag
Support Manual HoistLocatel Electronic Locks
Support Manual HoistLocatel Electronic Locks 1. S70, Create a Terminating Card for Cards Terminating Card 2. Select the card you want to block, look among Card No. Then click on the single arrow pointing
if (n==null) { return null; } else { return new Node(n.data, copy(n.next));
Inledning I bilagor finns ett antal mer eller mindre ofullständiga klasser. Klassen List innehåller några grundläggande komponenter för att skapa och hantera enkellänkade listor av heltal. Listorna hålls
Realtidssystem. - Introduktion, jämlöpande exekvering - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 1
Realtidssystem - Introduktion, jämlöpande exekvering - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp Föreläsning 1 Kursens innehåll motsvarar tidigare omgångar under beteckning EDA698 Stora delar
Tentamen Programmering fortsättningskurs DIT950
Tentamen Programmering fortsättningskurs Datum: 2015-03-17 Tid: 08.30-12.30 Hjälpmedel: Engelskt-Valfritt språk lexikon Betygsgränser: U: -23 G: 24-43 VG: 44-60 (max 60) Lärare:. Någon besöker ca 10.00
OOP Tentamen
DVS SU/KTH 1 (6) OOP OOP Tentamen 2007-12-21 13.00 18.00 Avser kurserna: DSK1:OOP GES:OOP ID1013 GKOOP-distans Anvisningar Skriv namn och personnummer på varje inlämnat blad. Påbörja varje ny uppgift på
Tentamen ID1004 Objektorienterad programmering October 29, 2013
Tentamen för ID1004 Objektorienterad programmering (vilande kurs), 29 oktober 2013, 9-13 Denna tentamen examinerar 3.5 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av tre sektioner.
Tentamensskrivning Nätverksprogrammering (EDA095) , kl 8-13
LUNDS TEKNISKA HÖGSKOLA Datavetenskap Nätverksprogrammering 2006 LÖSNINGAR Tentamensskrivning Nätverksprogrammering (EDA095) 2004-05-27, kl 8-13 DEL 1 - Frågor av teoretisk, principiell eller utredande
Klassdeklaration. Metoddeklaration. Parameteröverföring
Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar
FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl
Högskolan Dalarna sid 1 av 6 DI-institutionen Hans-Edy Mårtensson Sten Sundin FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2001-03-16, kl 14.00-18.00 1. Grunderna i
Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag
Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag Datum: 2009-04-15 Tid: 8-12 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 285607 Jourhavande kommer att besöka skrivsalarna ungefär
Översikt MERA JAVA OCH ECLIPSE. Uttryck och tilldelning. Uttryck och tilldelning. Uttryck och tilldelning. Uttryck och tilldelning
Översikt Uttryck i tilldelningssatser Typer och typomvandling Klasser Metoder Konstanter Eclipse-tips MERA JAVA OCH ECLIPSE Institutionen för datavetenskap Programmering 1 Rita Kovordányi 2 public class
Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin Micael Karlsson
Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin Micael Karlsson TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2000-03-22, kl 14.00-18.00 Hjälpmedel: En lärobok
Tentamen i Algoritmer & Datastrukturer i Java
Tentamen i Algoritmer & Datastrukturer i Java Hjälpmedel: Skrivhjälpmedel, miniräknare. Ort / Datum: Halmstad / 2008-05-27 Skrivtid: 4 timmar Kontakt person: Nicolina Månsson, tel. 035-167487 Poäng / Betyg:
Lösningsförslag till tentamen
till tentamen 1 (5) Kurs Objektorienterad programmering Kursbeteckning DAT042 Program D2, TKDAT Läsår 2012/2013, lp 1 Examinator Uno Holmer Uppgift 1 (10 p) Ingen lösning ges. Se kurslitteraturen. Uppgift
Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Interface Generiska klasser Undantag
Fakulteten för ekonomi, kommunikation och IT. Corba. Datum: Mathias Andersson
Fakulteten för ekonomi, kommunikation och IT Corba Datum: 2007-10-17 Namn: Kurs: Henrik Bäck Mathias Andersson DVGC02 Innehållsförteckning Implementation 3 IDL-fil 3 Server 3 Klient 3 Körning 3 Bilagor
OOP Omtenta 2010-03-06 10.00 15.00
Stockholms universitet 1 (6) OOP OOP Omtenta 2010-03-06 10.00 15.00 Avser kurserna: DSK1:OOP GES:OOP ID1013 Anvisningar Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv
Outline. Objektorienterad Programmering (TDDC77) En frukt har ett namn. Man kan lägga en frukt i en korg... Hashing. Undantag. Ahmed Rezine.
Outline Objektorienterad Programmering (TDDC77) Föreläsning XIV: Undantag, Design Ahmed Rezine IDA, Linköpings Universitet Undantag Design Hösttermin 2017 En frukt har ett namn Man kan lägga en frukt i
Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.
Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java
LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p
UMEÅ UNIVERSITET Datavetenskap 010530 LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p Betygsgränser 3 21,5-27 4 27,5-33,5 5 34-43 Uppgift 1. (4p) Hitta de fel som finns i nedanstående klass (det
/* * * Lösningsförslag tentamen DIT950 * Datum * */ /* * -1 - */ För samtliga gäller,se föreläsningsanteckningar.
* * Lösningsförslag tentamen DIT950 * Datum 150317 * * -1 - För samtliga gäller,se föreläsningsanteckningar. * - 2 - (Diagram visas inte, kontakta mig för ev frågor) // a C c = new A(); // Compile! Sub
Föreläsning 8: Exempel och problemlösning
TDA 545: Objektorienterad programmering Föreläsning 8: Exempel och problemlösning Magnus Myréen Chalmers, läsperiod 1, 2015-2016 De tre senaste föreläsningarna Läsanvisning: kap 2 & 13 meddelanden och
Kurskod D0010E Datum 2012-05-15 Skrivtid 5tim
LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, 491000, 073-820 1700 Resultatet o entliggörs senast: 2012-05-29. Tillåtna
9 Aktiva objekt och trådar
9 Aktiva objekt och trådar Skansholm kap 13 arallella program, processer och trådar Aktiva Swing-komponenter Trådar i Java Synkronisering Trådar och Swing arallella program och processer De flesta operativsystem
OMTENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13: 15
OMTENTAMEN I PROGRAMSPRÅK -- DVG C01 130823 kl. 08:15-13: 15 Ansvarig Lärare: Donald F. Ross Hjälpmedel: Bilaga A: BNF-definition Betygsgräns: Kurs: Max 60p, Med beröm godkänd 50p, Icke utan beröm godkänd
Abstrakt klass. DD2385 Programutvecklingsteknik Några bilder till föreläsning 4 7/ Exempel: Implementation av Schackpjäser.
DD2385 Programutvecklingsteknik Några bilder till föreläsning 4 7/4 2014 Innehåll Abstrakta klasser Klasshierarki och typhierarki Polymorfism och dynamisk bindning Polymorfi-exempel: Schack UML-översikt
TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET
UMEÅ UNIVERSITET Datavetenskap 010824 TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET Datum : 010824 Tid : 9-15 Hjälpmedel : Inga Antal uppgifter : 7 Totalpoäng : 40 (halva poängtalet krävs normalt
Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod
Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer
Tentamen, EDAA10 Programmering i Java
LUNDS TEKNISKA HÖGSKOLA 1(6) Institutionen för datavetenskap Tentamen, EDAA10 Programmering i Java 2017 04 20, 14.00 19.00 Anvisningar: Preliminärt ger uppgifterna 4 + 6 + 13 + 7 + 15 = 45 poäng. För godkänt
Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Skriv ditt idnummer på varje blad (så att vi inte slarvar bort dem).
1 (11) TENTAMEN: Objektorienterade applikationer Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Börja varje uppgift på ett nytt blad. Skriv ditt idnummer på varje blad (så att
Tentamen. 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl 9.00 14.
Tentamen 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl 9.00 14.00, sal D31 Tentan har en teoridel och en problemdel. På teoridelen är inga hjälpmedel
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 Programmeringsteknik I 2017-03-16 Skrivtid: 0800 1300 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer
Lösningsförslag tentamen FYTA11 Java
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 10 Lösningsförslag tentamen FYTA11 Java Måndag 10:e januari 2011, 09:00 13:00 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
Tentamen, EDAA20/EDA501 Programmering
LUNDS TEKNISKA HÖGSKOLA 1(4) Institutionen för datavetenskap Tentamen, EDAA20/EDA501 Programmering 2014 04 29, 8.00 13.00 Anvisningar: Denna tentamen består av tre uppgifter. Preliminärt ger uppgifterna
Föreläsning 3-4 Innehåll
Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå
Tentamen EDA501/EDAA20 M L TM W K V
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Tentamen EDA501/EDAA20 M L TM W K V 2011 01 10, 14.00 19.00 Anvisningar: Denna tentamen består av 5 uppgifter. Preliminärt ger uppgifterna 5
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning XIV: Undantag, Design Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Hashing Undantag Design Outline Hashing Undantag Design En frukt
Objektsamlingar i Java
1 (6) Objektsamlingar i Java Objektorienterad programmering 3 Syfte Att ge träning i att använda objektsamlingar i Java. Mål Efter övningen skall du kunna använda objektsamlingsklasserna ArrayList och
OOP Omtenta 2011-03-05 10.00 15.00
Stockholms universitet 1 (6) OOP OOP Omtenta 2011-03-05 10.00 15.00 Avser kurserna: DSK1:OOP GES:OOP ID1013 Anvisningar Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv