DM01 DM Obl. Afl. Jacob Christiansen, , D12, Elias 18/ Side 1 af 11

Størrelse: px
Starte visningen fra side:

Download "DM01 DM01. 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 11"

Transkript

1 DM01 DM01 3. Obl. Afl. Jacob Christiansen, , D12, Elias 18/ Side 1 af 11

2 DM01 Indholdsfortegnelse: BILAG: FORMÅL: KLASSER: DILEMMA: METODER: PLAYER: METODER: MEET: METODER: MOFFE42: METODER: UDNYTTE, SAMARBEJDE, INTERAKTIV OG RANDOM: METODER: TEST: SAMARBEJDE: UDNYTTE: RANDOM: MOFFE42: KONKLUSION:...11 Bilag: 1. Dilemma.java 2. Interaktiv.java 3. Meet.java 4. Moffe42.java 5. Player.java 6. Random.java 7. Samarbejde.java 8. Udnytte.java Side 2 af 11

3 DM01 1 Formål: Opgave består i at skrive og afprøve et Java program, som afvikler en Dilemma turnering. Der skal skrives en main klasse og der skal udvikles en strategi, til brug i en stor Dilemma turnering med 50 eller flere deltagere. Lokalt skal man afholde en Dilemma turnering med 6 spillere. Til dette formål skal der laves en Random klasse, en Udnytte klasse og en interaktiv klasse. Sammen med disse klasser skal ens strategi og Edmunds klasse afprøves. Side 3 af 11

4 DM01 2 Klasser: 2.1 Dilemma: Main klasse som bruges til at afvikle en lokal turnering for 6 spillere Metoder: int2string: Metode som konverterer en integer til en streng med tilpas tomme pladser, så sortering er mulig. 2.2 Player: Player klassen implementeres næsten som i opg. 2, dog implementeres den som abstract klasse, da metoden getaction, er forskellig fra strategi til strategi. Dvs. at strategierne nedarver metoder fra Player klassen, men beholder sin unikke getaction metode Metoder: getname: Metode til at kalde en brugers navn getaction: Abstract metode til at kalde en spillers handling clearmemory: Metode til at slette en spiller hukommelse, efter et endt møde savemeet: Metode til at gemme en konfrontation i hukommelsen. Side 4 af 11

5 DM score: Metode til at beregne scoren fra et møde mellem to spillere. Lægger desuden scoret til den totale score, til senere brug gettotal: Metode til at kalde den totale score. 2.3 Meet: Klasse som implementerer konfrontationer. Samme som i opg Metoder: geta og getb: Metoder til at kalde en spillers handling. Gør det muligt at gemme en konfrontation i hukommelsen value: Metode til at beregne værdien af en konfrontation tostring: Metode som gør det muligt at returnerer et møde på formen (s,u). 2.4 Moffe42: Moffe42 er min egen strategi. Da jeg skulle til at lave den, tænkte jeg på hvad er bedst at gøre? Svaret er UDNYTTE, helt klart, men denne strategi har op til flere ulemper. Man vil ikke få point efter 2 konfrontation, da modstanderen, vil have læst det og også bare udnytter, derfor har jeg lavet en strategi, der ved forskellige mønstre af modstanderens træk, vil returnerer en handling. Jeg har sat samarbejde ind steder, så modstanderen narres til også at vælge samarbejde, for derefter at stikke ham i ryggen, for maksimal udbytte Metoder: Side 5 af 11

6 DM getaction: Metode som returnerer en handling på baggrund af hukommelsen. 2.5 Udnytte, Samarbejde, Interaktiv og Random: Klasser som implementerer de obligatoriske strategier, som bruges i opgaven Metoder: getaction: Metode som returnerer en handling i overensstemmelse med klassen. Side 6 af 11

7 DM01 3 Test: Main programmet skal bruges til at teste om de forskellige strategier er korrekt implementeret. Dette gøres ved at kører et antal runder og sammenligne programmets output, men en manuel beregning. Ved første test køres der 10 runder og input fra den interaktive spiller er skiftevis Samarbejde og Udnytte. Herefter kontrollerer vi om de forskellige strategier er korrekt implementeret. Side 7 af 11

8 DM01 Fig. 1 Fig. 2 Side 8 af 11

9 DM01 Fig. 3 Side 9 af 11

10 DM Samarbejde: Ved møde med Udnytte får Samarbejde 10 point, hvilket også var forventet, da Samarbejde taber alle 10 runder. Ved møde med Bruger får Samarbejde 5 point, hvilket også var forventet, da Samarbejde skulle have 2*5 point for de runder Bruger brugte samarbejde og 1*5 point for de runder Bruger brugte udnytte. 3.2 Udnytte: Ved møde med Samarbejde får Udnytte fuld point, 40 point, da Udnytte vinder alle runder. Ved møde med Bruger får Udnytte 20 point, som også var forventet. 5 *4 point for de runder Bruger sagde samarbejde. 3.3 Random: For at kunne kontrollerer om Random fungerer rigtigt, er vi nød til at udfører et antal tests, for at se at Randoms point ved møde med de forskellige strategier, ændre sig, forudsat de andre strategier implementeret rigtigt. Ved at se på de 3 tests, kan vi konkluderer at resultatet er forskelligt hver gang. 3.4 Moffe42: Mod Udnytte forventes der at min strategi får 0 point og det ses at det sker hver gang. Mod Samarbejde forventes det at jeg får 40 point og det sker også. Og mod bruger forventes det at jeg får 12 point og det sker også. Side 10 af 11

11 DM01 4 Konklusion: Ved at se på output fra de forskellige tests, ses det at alle strategier er implementeret rigtigt og at programmet i al almindelighed er implementeret rigtigt. Desuden er der implementeret en personlig strategi, som under vores tests virker godt, dog vil den nok komme til kort mod andre mere raffinerede strategier, da strategien ikke tager højde for mønstre over flere end 2 handlinger. Dette vil vi dog hurtigt se, når den store Dilemma konkurrence. Side 11 af 11

12 //*********************************************** // // Dilemma main klasse // //*********************************************** import java.util.arrays;//import af klasser public class Dilemma //metode til at formeterer integer til string, så sortering er muligt public static String int2string(int i, int felt) String space10=" "; String s=integer.tostring(i); return space10.substring(0,felt-s.length())+s; public static void main(string[] args) //Try til at fange forkerte argumenter ved program start try int antal=6,runder=integer.parseint(args[0]); //If-løkke ved negativ int i args[0] if(runder<0) System.out.println("Foerste argument skal vaere et positivt heltal, som angiver antal runder der spiles."); System.exit(0); //Initialisering af spillerer og point tabel int[][] tabel = new int[antal][antal]; Player[] deltager=new Player[antal]; deltager[0] = new Samarbejde("Samarb."); deltager[1] = new Udnytte("Udnytte"); deltager[2] = new Edmund("Edmund"); deltager[3] = new Random("Random"); deltager[4] = new Interaktiv("Bruger"); deltager[5] = new Moffe42("moffe42"); //For i og j som gennemløber spillerarray'en for(int i=0;i<antal;i++) Player a = deltager[i]; for(int j=i+1;j<antal;j++) Player b = deltager[j]; //For k som afvikler konfrontationerne for(int k=0;k<runder;k++) Meet spil = new Meet(a.getAction(),b.getAction()); a.savemeet(spil.geta(),spil.getb()); b.savemeet(spil.getb(),spil.geta());

13 //end for k //Score tilfoejes til point tabel tabel[i][j]=a.score(); tabel[j][i]=b.score(); a.clearmemory(); b.clearmemory(); //end for j //end for i //Point og navn tilfoejes til tabel, saa sortering er mulig String s; String[] scores = new String[antal]; for(int i=0;i<antal;i++) s=int2string(deltager[i].gettotal(),8); scores[i]=s+" "+deltager[i].getname(); Arrays.sort(scores); //Simpel Ascii tabel til point System.out.println(); System.out.println(" Runderne: "); System.out.println(); System.out.println(" "); System.out.println(" ********* "+deltager[0].getname()+" "+deltager[1].getname()+" "+deltager[2].getname()+" "+deltager[3].getname()+" "+deltager[4].getname()+" "+deltager[5].getname()+" "); System.out.println(" "); System.out.println(" "+deltager[0].getname()+" ********* "+int2string(tabel[0][1],7)+" "+int2string(tabel[0][2],7)+" "+int2string(tabel[0][3],7)+" "+int2string(tabel[0][4],7)+" "+int2string(tabel[0][5],7)+" "); System.out.println(" "); System.out.println(" "+deltager[1].getname()+" "+int2string(tabel[1][0],7)+" ********* "+int2string(tabel[1][2],7)+" "+int2string(tabel[1][3],7)+" "+int2string(tabel[1][4],7)+" "+int2string(tabel[1][5],7)+" "); System.out.println(" "); System.out.println(" "+deltager[2].getname()+" "+int2string(tabel[2][0],7)+" "+int2string(tabel[2][1],7)+" ********* "+int2string(tabel[2][3],7)+" "+int2string(tabel[2][4],7)+" "+int2string(tabel[2][5],7)+" "); System.out.println(" "); System.out.println(" "+deltager[3].getname()+" "+int2string(tabel[3][0],7)+" "+int2string(tabel[3][1],7)+" "+int2string(tabel[3][2],7)+" ********* "+int2string(tabel[3][4],7)+" "+int2string(tabel[3][5],7)+" ");

14 System.out.println(" "); System.out.println(" "+deltager[4].getname()+" "+int2string(tabel[4][0],7)+" "+int2string(tabel[4][1],7)+" "+int2string(tabel[4][2],7)+" "+int2string(tabel[4][3],7)+" ********* "+int2string(tabel[4][5],7)+" "); System.out.println(" "); System.out.println(" "+deltager[5].getname()+" "+int2string(tabel[5][0],7)+" "+int2string(tabel[5][1],7)+" "+int2string(tabel[5][2],7)+" "+int2string(tabel[5][3],7)+" "+int2string(tabel[5][4],7)+" ********* "); System.out.println(" "); System.out.println(); System.out.println(" Total-score:"); System.out.println(); System.out.println(" "); System.out.println(); System.out.println(scores[5]); System.out.println(scores[4]); System.out.println(scores[3]); System.out.println(scores[2]); System.out.println(scores[1]); System.out.println(scores[0]); catch(arrayindexoutofboundsexception exc) System.out.println("Foerste argument skal vaere et positivt heltal, som angiver antal runder der spiles."); catch(numberformatexception exc) System.out.println("Foerste argument skal vaere et positivt heltal, som angiver antal runder der spiles."); //end main //end class

15 //************************************************************************ // // Interaktiv.java Klasse til spillet Dilemma // // Lavet af: Jacob Christiansen // //************************************************************************ //Import af nødvendige klasser import cs1.keyboard; import java.util.arraylist; public class Interaktiv extends Player //Constructor public Interaktiv(String na) super(na); //Metode til at lave en handling public char getaction() int i = super.memory.size(); do while(true); System.out.print("Vaelg handling: "); String valg=keyboard.readstring(); //Konvaterer strengen til lowercase valg=valg.tolowercase(); //Ser om første bogstav er s eller u if(valg.charat(0)==meet.sam valg.charat(0)==meet.udn) return valg.charat(0);//returnere handlingen i form af s eller u else System.out.println("Fejl i indtastning. Proev igen...");

16 public class Meet public static final char SAM='s', UDN='u'; private char Aaction, Baction; //Constructor public Meet(char a, char b) Aaction=a; Baction=b; public char geta() return Aaction; public char getb() return Baction; public int value() int result = ; // ændres med sikkerhed if (Aaction==SAM && Baction==SAM) result = 2; if (Aaction==SAM && Baction==UDN) result = -1; if (Aaction==UDN && Baction==SAM) result = 4; if (Aaction==UDN && Baction==UDN) result = 0; return result; public String tostring() return "(" + Aaction + "," + Baction + ")";

17 //Import import java.util.arraylist; public class Moffe42 extends Player //Constructor public Moffe42(String na) super(na); public char getaction() int i = super.memory.size(); //Indledende handlinger if(i<2) return 'u'; Meet m1 = ((Meet) super.memory.get(i-1)); Meet m2 = ((Meet) super.memory.get(i-2)); //Handlinger ved bestemte moenstre if(m1.getb()=='s' && m2.getb()=='s') return 'u'; if(m1.getb()=='u' && m2.getb()=='s') return 's'; if(m1.getb()=='s' && m2.getb()=='u') return 'u'; if(m1.getb()=='u') return 'u'; else return 's';

18 import java.util.arraylist; // Klassen definerer en generel spiller. // Den konkrete spiller inkl. strategi defineres i en afledt klasse. abstract public class Player protected String name; protected ArrayList memory; private int total = 0; // her huskes tidligere møder // spillerens totale score public Player(String na) name = na; memory = new ArrayList(); public String getname() return name; abstract public char getaction(); // implementeres i den afledte klasse public void clearmemory() memory.clear(); public void savemeet(char a, char b) memory.add(new Meet(a,b)); // Følgende metode beregner scoren ud fra hukommelsen. // Den skal kaldes præcis 1 gang for hver modspiller // af hensyn til beregning af total score. public int score() int sum=0; for (int i=0; i<memory.size(); i++) sum += ((Meet)memory.get(i)).value(); total += sum; // den totale score return sum; public int gettotal() return total;

19 import java.lang.math.*; public class Random extends Player private double r; //Constructor public Random(String na) super(na); public char getaction() r = (double) (Math.random()); if(r<0.49)//50 % chance for Udnytte return Meet.UDN; else return Meet.SAM;

20 //************************************************************************ // // Samarbejde.java Klasse til spillet Dilemma // // Lavet af: Jacob Christiansen // //************************************************************************ public class Samarbejde extends Player //Constructor public Samarbejde(String na) super(na); public char getaction() return Meet.SAM;

21 public class Udnytte extends Player public Udnytte(String na) super(na); public char getaction() return Meet.UDN;

22 import java.util.arraylist; public class Edmund extends Player public Edmund(String s) super(s); public char getaction() char c = 's'; char c1 = 'u'; int i = super.memory.size(); int j = 0; int k = 0; if(i < 1) return c; if(i < 3) return ((Meet)super.memory.get(i - 1)).getB(); Meet meet = (Meet)super.memory.get(i - 1); Meet meet1 = (Meet)super.memory.get(i - 2); for(int l = 2; l < i; l++) Meet meet2 = (Meet)super.memory.get(l - 1); Meet meet3 = (Meet)super.memory.get(l - 2); if(meet.geta() == meet2.geta() && meet.getb() == meet2.getb() && meet1.geta() == meet3.geta() && meet1.getb() == meet3.getb()) if(((meet)super.memory.get(l)).getb() == c) j++; else k++; if(j >= 5 * k) return c; else return c1;

DM01 DM01. 2. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 9

DM01 DM01. 2. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 9 DM01 2. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 18/3-2003 Side 1 af 9 Indhold 1. Formål... s. 3 2. Klasser... s. 3 2.1. Player... s. 3 2.1.1. Metoder... s. 3 2.1.1.1.

Læs mere

DM34-1. Obligatorisk opgave Dilemma spillet. Jacob Aae Mikkelsen 191076 kok04

DM34-1. Obligatorisk opgave Dilemma spillet. Jacob Aae Mikkelsen 191076 kok04 DM34-1. Obligatorisk opgave Dilemma spillet Jacob Aae Mikkelsen 191076 kok04 April 2005 Kapitel 1 Resumé Denne rapport dokumenterer udviklingsforløbet og afprøvningen af et spil Dilemma. Spillet går ud

Læs mere

Eksempel: Skat i år 2000

Eksempel: Skat i år 2000 Kursus 02199: Programmering afsnit 2.1-2.7 Anne Haxthausen IMM, DTU 1. Værdier og typer (bl.a. char, boolean, int, double) (afsnit 2.4) 2. Variable og konstanter (afsnit 2.3) 3. Sætninger (bl.a. assignments)

Læs mere

Civilingeniøreksamen 49104 12. januar 2001. Skriftelig prøve den 12. januar 2001 Kursusnummer 49104

Civilingeniøreksamen 49104 12. januar 2001. Skriftelig prøve den 12. januar 2001 Kursusnummer 49104 Skriftelig prøve den 12. januar 2001 Kursusnummer 49104 Kursusnavn: Programmering. Tilladte hjælpemidler: Alle skriftlige hjælpemidler Opgavesættet består af fire opgaver, der har følgende vægtning: Opgave

Læs mere

DM01 DM01. 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 13/5-2003. Side 1 af 7

DM01 DM01. 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 13/5-2003. Side 1 af 7 DM01 DM01 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 13/5-2003 Side 1 af 7 DM01 Indholdsfortegnelse: BILAG:...2 1 FORMÅL:...3 2 KLASSER:...4 2.1 DNA2:...4 2.1.1 METODER:...4

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2 DM502 Forelæsning 2 Repetition Kompilere og køre Java program javac HelloWorld.java java HeloWorld.java Debugge Java program javac -g HelloWorld.java jswat Det basale Java program public class HelloWorld

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3 DM502 Forelæsning 3 Indlæsning fra tastatur Udskrift til skærm Repetition Beregning af middelværdi Gentagelse med stop-betingelse (while) Heltalsdivision Division med nul Type-casting ( (double) ) Betinget

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4 DM502 Forelæsning 4 Flere kontrolstrukturer for-løkke switch-case Metoder Indhold Arrays og sortering af arrays String-funktioner for-løkke Ofte har man brug for at udføre det samme kode, for en sekvens

Læs mere

Videregående Programmering Obligatorisk opgave - 3. semester, efterår 2004

Videregående Programmering Obligatorisk opgave - 3. semester, efterår 2004 Overvågningssystem Beskrivelse Bagagesorteringssystemet består af et antal skranker (check-in) til modtagelse og registrering af bagage, et automatiseret sorteringsanlæg samt et antal terminaler (gates),

Læs mere

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 Opgavebesvarelsen skal afleveres som enten en printerudskrift eller som et passende dokument sendt via email til fjj@noea.dk. Besvarelsen skal

Læs mere

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne.

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne. Exercise 1: Opgave 9.1 på CodeJudge. a) Lav klasserne Cirkel, Rektangel og Kvadrat, som implementerer vedhæftede interface From.java (se CodeJudge). Lav Rektangel før du laver Kvadrat. Kan du bruge nedarvning

Læs mere

Kursus navn: Indledende programmering Kursus nr. 02101

Kursus navn: Indledende programmering Kursus nr. 02101 Danmarks Tekniske Universitet Side 1 af 8 sider Skriftlig prøve, den 15. december 2007 Kursus navn: Indledende programmering Kursus nr. 02101 Tilladte hjælpemidler: Alle skriftlige hjælpemidler Vægtning

Læs mere

DANMARKS TEKNISKE UNIVERSITET

DANMARKS TEKNISKE UNIVERSITET DANMARKS TEKNISKE UNIVERSITET Skriftlig prøve, 14. december 2018, 4 timer Side 1 af 18 Kursus navn: 02101 Indledende Programmering Kursus : 02101 Tilladte hjælpemidler: Ikke-digitale skriftlige hjælpemidler

Læs mere

Kursus i OOP og Java. Kursus i Objektorienteret programmering i Java

Kursus i OOP og Java. Kursus i Objektorienteret programmering i Java Kursus i OOP og Java Kursus i Objektorienteret programmering i Java Åben Dokumentlicens Dette foredragsmateriale er under Åben Dokumentlicens (ÅDL) Du har derfor lov til frit at kopiere dette værk Bruger

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2

Læs mere

University of Southern Denmark Syddansk Universitet. DM503 Forelæsning 11

University of Southern Denmark Syddansk Universitet. DM503 Forelæsning 11 DM503 Forelæsning 11 Generics Pakker Exceptions Indhold Generics Nedarvning og Generics Generics Nedarvning og Generics Husk Box fra sidst Generics public class Box {! private T object;! public void

Læs mere

Bilag 1 Rige billeder Ordremodtagelse

Bilag 1 Rige billeder Ordremodtagelse Bilag1 Rigebilleder Ordremodtagelse Tværfagligtprojektpå2.Semester Bilag afchristian,kennetogmartin 71 Overordnet Tværfagligtprojektpå2.Semester Bilag afchristian,kennetogmartin 72 Produktionsgulvet Tværfagligtprojektpå2.Semester

Læs mere

Jacob Christiansen, Institut for MAtematik og DAtalogi, Syddansk Universitet, Odense

Jacob Christiansen, Institut for MAtematik og DAtalogi, Syddansk Universitet, Odense 7 DM -. Obligatoriske Opgave Løsning af ligningssystem vha. fipunktmetoden Jacob Christiansen, 8 moffe@imada.sdu.dk Institut for MAtematik og DAtalogi, Syddansk Universitet, Odense. Opgaven Der skal implementeres

Læs mere

Ugeseddel 4 1. marts - 8. marts

Ugeseddel 4 1. marts - 8. marts Ugeseddel 4 1. marts - 8. marts Læs følgende sider i kapitel 6 i lærebogen: s. 233 258 og s. 291 317 (afsnit 6.3 overspringes). Begynd at overveje, hvad afleveringsopgaven skal omhandle. Læs vejledningen,

Læs mere

Abstrakte datatyper C#-version

Abstrakte datatyper C#-version Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype

Læs mere

BRP 6.9.2006 Kursusintroduktion og Java-oversigt

BRP 6.9.2006 Kursusintroduktion og Java-oversigt BRP 6.9.2006 Kursusintroduktion og Java-oversigt 1. Kursusintroduktion 2. Java-oversigt (A): Opgave P4.4 3. Java-oversigt (B): Ny omvendings -opgave 4. Introduktion til næste kursusgang Kursusintroduktion:

Læs mere

PROGRAM. using System; using System.Collections.Generic; using System.Text; using System.Collections;

PROGRAM. using System; using System.Collections.Generic; using System.Text; using System.Collections; PROGRAM using System; using System.Collections.Generic; using System.Text; using System.Collections; namespace EventManager class Program static void Main(string[] args) string hovedmenu = ""; string svar;

Læs mere

//Udskriver System.out.println("Hej " + ditfornavn + " " + ditefternavn + "."); System.out.println("Du er " + dinalder + " aar gammel!

//Udskriver System.out.println(Hej  + ditfornavn +   + ditefternavn + .); System.out.println(Du er  + dinalder +  aar gammel! Denne guide er oprindeligt udgivet på Eksperten.dk Brugerinput i Java Denne her artikel gennemgår diverse ting ved brug af brugerinput i Java. Den starter med det simple og fortæller derefter skridt for

Læs mere

Klienten. import java.util.*;

Klienten. import java.util.*; Klienten import java.util.*; * Aktiviteter er et model element, som indeholder blandt andet psimetiks beskrivleser. * @author rling public class Aktivitet extends Beholder implements HarEOgA, HarTilknytning,

Læs mere

Java Programmering. En bog for begyndere. Skrevet af Henrik Kressner

Java Programmering. En bog for begyndere. Skrevet af Henrik Kressner Java Programmering En bog for begyndere Skrevet af Henrik Kressner Indholdsfortegnelse Introduktion...3 1 Introduktion til Java...4 1.1 Javakoden...4 1.2 Det første program...6 1.2 Skriv til skærmen...6

Læs mere

dintprog Manual Revision: 1241 August 24, 2010 I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4

dintprog Manual Revision: 1241 August 24, 2010 I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4 dintprog Manual Revision: 1241 August 24, 2010 Indhold I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4 3 Grundbegreber om modellering 4 III Sprogkonstruktioner 5 4 Klasser

Læs mere

Tree klassen fra sidste forelæsning

Tree klassen fra sidste forelæsning Programmering 1999 Forelæsning 12, fredag 8. oktober 1999 Oversigt Abstrakte klasser. Grænseflader. Programmering 1999 KVL Side 12-1 Tree klassen fra sidste forelæsning class Tree { int age; // in years

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 6

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 6 DM502 Forelæsning 6 Klasser og objekter Introduktion Math-klassen Indhold Klasser vs. objekter Først et tænkt eksempel: Vi vil lave en bil i Java 1. spørgsmål: Hvad karakteriserer en bil? Model År Farve...

Læs mere

Java Klasse nedarvninger

Java Klasse nedarvninger Denne guide er oprindeligt udgivet på Eksperten.dk Java Klasse nedarvninger Et let lille overblik i hvordan klasse nedarvning virker i java Skrevet den 07. dec 2011 af mochners I kategorien Programmering

Læs mere

Videregående programmering i Java

Videregående programmering i Java Videregående programmering i Java Dag 9 Andre designmønstre Andre designmønstre: Uforanderlig, Fluevægt, Lagdelt Initialisering, Komposit/Rekursiv Komposition, Kommando/Ændring Fremlæggelse af programmering/status

Læs mere

DM502. Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/

DM502. Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/ DM502 Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/ 1 DM502 Bog, ugesedler og noter De første øvelser Let for nogen, svært for andre Kom til øvelserne! Lav opgaverne!

Læs mere

Forelæsning Uge 4 Torsdag

Forelæsning Uge 4 Torsdag Forelæsning Uge 4 Torsdag Klassevariabler og klassemetoder Levetid for variabler og parametre Virkefeltsregler Projektopgave Kaninjagt Lommeregner (for MAT studerende) Klassevariabler og klassemetoder

Læs mere

Vejledende løsninger

Vejledende løsninger Roskilde Universitetscenter side 1 af 8 sider Vejledende løsninger Opgave 1 Spørgsmål 1.1 a = b - a; b = b - a; a = b + a; Opgaven har flere løsninger. En anden løsning er: a = b + a; b = a - b; a = a

Læs mere

Løsning af skyline-problemet

Løsning af skyline-problemet Løsning af skyline-problemet Keld Helsgaun RUC, oktober 1999 Efter at have overvejet problemet en stund er min første indskydelse, at jeg kan opnå en løsning ved at tilføje en bygning til den aktuelle

Læs mere

Mere om tilfældige tal

Mere om tilfældige tal Denne guide er oprindeligt udgivet på Eksperten.dk Mere om tilfældige tal Denne artikel bygger oven på den forrige artikel om tilfældige tal. Den forudsætter at man har læst den forrige artikel og har

Læs mere

class subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree.

class subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree. Programmering 1999 Forelæsning 11, tirsdag 5. oktober 1999 Oversigt Klasse-hierarkier: superklasser og subklasser Nedarvning Polymorfi Programmering 1999 KVL Side 11-1 Hierarkier En klasse repræsenterer

Læs mere

Datalogi OB, Efterår 2002 OH er, forelæsning 3/9-2002 - forstå datastrukturer og algoritmer (teoretisk forståelse og intuition)

Datalogi OB, Efterår 2002 OH er, forelæsning 3/9-2002 - forstå datastrukturer og algoritmer (teoretisk forståelse og intuition) Datalogi OB, Efterår 2002 OH er, forelæsning 3/9-2002 Datastrukturer og algoritmer Henning Christiansen henning@ruc.dk http://www.ruc.dk/~henning Formål: at kunne - forstå datastrukturer og algoritmer

Læs mere

Det er muligt at chekce følgende opg. i CodeJudge: og

Det er muligt at chekce følgende opg. i CodeJudge: og Det er muligt at chekce følgende opg. i CodeJudge:.1.7 og.1.14 Exercise 1: Skriv en forløkke, som producerer følgende output: 1 4 9 16 5 36 Bonusopgave: Modificer dit program, så det ikke benytter multiplikation.

Læs mere

class Time { int hours, min; } } Time t1; // Erklær variabel af type Time class Time1 { public static void main(string[] args) { Time t1; t1.

class Time { int hours, min; } } Time t1; // Erklær variabel af type Time class Time1 { public static void main(string[] args) { Time t1; t1. Programmering 1999 Forelæsning 4, fredag 10. september 1999 Klasser og objekter Felter, konstruktorer, this Eksempler på klasser: Time, Appointment Eksempler på metoder i Time og Appointment Klassefelter:

Læs mere

Hashing og hashtabeller

Hashing og hashtabeller Datastrukturer & Algoritmer, Datalogi C Forelæsning 16/11-2004 Hashing og hashtabeller Teknik til at repræsentere mængder Konstant tid for finde og indsætte men ingen sortering af elementerne Specielt

Læs mere

A Profile for Safety Critical Java

A Profile for Safety Critical Java A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren

Læs mere

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering Skriftlig eksamen i Grundlæggende Programmering ITU, 20. januar 2000 Alle hjælpemidler tilladt, dog ikke datamat. Eksamen er skriftlig, fire timer, og bedømmes efter 13-skalaen. Opgavesættet består af

Læs mere

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med

Læs mere

Programmering 1999 KVL Side 5-4. Klassen Time: metoder. Metoder i objektet giver mulighed for at ændre tilstanden, eller kigge på tilstanden.

Programmering 1999 KVL Side 5-4. Klassen Time: metoder. Metoder i objektet giver mulighed for at ændre tilstanden, eller kigge på tilstanden. Programmering 1999 Forelæsning 5, tirsdag 14. september 1999 Oversigt Mere om klasser og objekter Klassefelter: static Konstante felter: final Indkapsling og synlighed: private og public Overlæsning af

Læs mere

Virkefeltsregler i Java

Virkefeltsregler i Java Virkefeltsregler i Java int i; int k; Sequence s; int j; What s in a name? Brian spillede blændende i søndags! Skolen ligger i Viby Ring til Kirsten og sig at... Et navn fortolkes i en kontekst og konteksten

Læs mere

Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik

Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik Datalogi C, RUC Forelæsning 22. november 2004 Henning Christiansen Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik Dagens program Hvad

Læs mere

Tilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge.

Tilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Denne guide er oprindeligt udgivet på Eksperten.dk Tilfældige tal Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Den forudsætter

Læs mere

Forelæsning Uge 3 Torsdag

Forelæsning Uge 3 Torsdag Forelæsning Uge 3 Torsdag Billedredigering (bl.a. brug af for-løkker) Gråtonebilleder (som er lidt simplere end farvebilleder) Arrays Kan "opbevare" et antal objekter (som ArrayList) Fast (på forhånd kendt)

Læs mere

import java.awt.event.*; import java.awt.*; Container <- Panel <- Applet Component <- Button <- Checkbox <- ScrollPane <- Label

import java.awt.event.*; import java.awt.*; Container <- Panel <- Applet Component <- Button <- Checkbox <- ScrollPane <- Label Programmering 1999 Forelæsning 13, tirsdag 12. oktober 1999 Oversigt Grafiske brugergrænseflader. Komponenter: Knapper, tekstfelter, checkbokse... Vinduer (containere). Hændelser, hændelsesstyret programmering.

Læs mere

Forelæsning Uge 4 Mandag

Forelæsning Uge 4 Mandag Forelæsning Uge 4 Mandag Algoritmeskabeloner findone, findall, findnoof, findsumof Primitive typer (forfremmelse og begrænsning) Identitet versus lighed (for objekter, herunder strenge) Opfølgning på Skildpadde

Læs mere

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning Datalogi OB, Efterår 2002 OH er, forelæsning 10/9-2002 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Eftermiddagens opgave:

Læs mere

Løsning af møntproblemet

Løsning af møntproblemet Løsning af møntproblemet Keld Helsgaun RUC, oktober 1999 Antag at tilstandene i problemet (stillingerne) er repræsenteret ved objekter af klassen State. Vi kan da finde en kortest mulig løsning af problemet

Læs mere

Databaseadgang fra Java

Databaseadgang fra Java Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser Klassevariabler og klassemetoder Variabler og metoder der et tilknyttet klassen (i stedet for at være tilknyttet

Læs mere

Singleton pattern i C#

Singleton pattern i C# Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i C# Denne artikel beskriver Singleton pattern og implementation i C#. Den forudsætter kendskab til C# men ikke til Singleton. Der er

Læs mere

Martin Olsen. DM507 Projekt Del I. 19. marts 2012 FOTO: Colourbox

Martin Olsen. DM507 Projekt Del I. 19. marts 2012 FOTO: Colourbox Martin Olsen DM0 Projekt 0 Del I. marts 0 FOTO: Colourbox Indhold Indledning... Opgave... Opgave... Opgave... Opgave... Opgave... Opgave... Opgave... Kildekode til SimpleInv.java... Kildekode til MergeSort.java...

Læs mere

9.8 Kildekode. side 88. Pakke Klasse Sidenummer. fortsætter..

9.8 Kildekode. side 88. Pakke Klasse Sidenummer. fortsætter.. 9.8 Kildekode Pakke Klasse Sidenummer db Aktivitetstype 91 Behandler 91 ConnectDB 92 DagensKommentar 93 Helligdag 94 IkkePrimaerTid 94 Patient 96 Patientaftale 96 PatientAktivitet 97 Patientgruppe 98 PatientgruppeItem

Læs mere

Forelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999

Forelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999 sammenligninger, hvor Programmering 1999 Forelæsning 17, tirsdag 2 november 1999 Søgning efter en given værdi i en tabel Lineær søgning og binær søgning Effektivitet: maskinuafhængig vurdering af køretid

Læs mere

Forelæsning Uge 3 Mandag

Forelæsning Uge 3 Mandag Forelæsning Uge 3 Mandag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser ArrayList Collection med variabelt antal elementer Der er mange andre Collection typer (se Collection interfacet

Læs mere

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Denne guide er oprindeligt udgivet på Eksperten.dk Prepared Statements Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Skrevet den 18. Feb 2010

Læs mere

Forelæsning Uge 4 Mandag

Forelæsning Uge 4 Mandag Forelæsning Uge 4 Mandag Algoritmeskabeloner Kan (ved simple tilretningerne) bruges til at implementere metoder, der gennemsøger en arrayliste (eller anden objektsamling) og finder objekter, der opfylder

Læs mere

public Set(int size) { this.listelement = new LinkedList<Integer>(); }

public Set(int size) { this.listelement = new LinkedList<Integer>(); } // Henri AYCARD import java.util.linkedlist; public class Set { private LinkedList listelement; public Set(int size) { this.listelement = new LinkedList(); public boolean contains(int

Læs mere

14.1 Internationale programmer

14.1 Internationale programmer 14.1 Internationale programmer Når et program skal anvendes af flere kulturer og sprog opstår behov for at programtekster, beløb og datoangivelser afhænger af landet og sproget, og man må i gang med at

Læs mere

Programmering i C. Lektion 4. 5. december 2008

Programmering i C. Lektion 4. 5. december 2008 Programmering i C Lektion 4 5. december 2008 Funktioner Eksempel Fra sidst 1 Funktioner 2 Eksempel Funktioner Eksempel Eksempel: 1 / f u n k t i o n s p r o t o t y p e r / i n t i n d l a e s ( void )

Læs mere

Anvendelse af metoder - Programmering

Anvendelse af metoder - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Anvendelse af metoder - Programmering En forhåbentlig rigtig god forklaring på hvad metoder er og hvordan de anvendes. Lidt om private og public, retur

Læs mere

Forelæsning Uge 3 Mandag

Forelæsning Uge 3 Mandag Forelæsning Uge 3 Mandag ArrayList Collection (samling af objekter) med variabelt antal elementer Der er mange andre Collection typer (se Collection interfacet i JavaDoc) MusicOrganizer projektet Eksempel

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser Klassevariabler og klassemetoder Variabler og metoder der et tilknyttet klassen (i stedet for at være tilknyttet

Læs mere

I profil-feltet kan imastra-kunder vælge om upload skal ske ligesom filerne var indsendt til mailboksen eller

I profil-feltet kan imastra-kunder vælge om upload skal ske ligesom filerne var indsendt til mailboksen eller Upload fil Upload fil skal ses som et alternativ til at indsende tællefiler vedhæftet til mails Upload fil kan være en hurtigere og mere håndholdt måde at få data ind i Mastra på. Man starter med via Gennemse

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser Klassevariabler og klassemetoder Variabler og metoder der et tilknyttet klassen (i stedet for at være tilknyttet

Læs mere

MM4. Algoritmiske grundprincipper. Lister, stakke og køer. Hash-tabeller og Træer. Sortering. Søgning.

MM4. Algoritmiske grundprincipper. Lister, stakke og køer. Hash-tabeller og Træer. Sortering. Søgning. MM Algoritmiske grundprincipper. Lister, stakke og køer. Hash-tabeller og Træer. Sortering. Søgning. MM MM MM MM MM Sortering Sorteringsalgoritmer : Virkemåde og anvendelser Kompleksitet Algoritmen Sorteringsalgoritmer

Læs mere

Klasser og nedarvning

Klasser og nedarvning Datalogi C, Efterår 2004 OH er, forelæsning 21/9-2004 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Opgaven til senere: Generalisere

Læs mere

ELEKTRONISK INDBERETNING POST 23/8 2007 VERSION 1.13

ELEKTRONISK INDBERETNING POST 23/8 2007 VERSION 1.13 ELEKTRONISK INDBERETNING POST 23/8 2007 VERSION 1.13 Indhold Indhold... 2 Introduktion... 3 dk.hob.ei.general.plugin... 4 Metoder... 4 GetPrivateMail... 4 GetPrivateMailNext... 7 DeletePrivateMailEx...

Læs mere

Videregående Programmering for Diplom-E Noter

Videregående Programmering for Diplom-E Noter Videregående Programmering for Diplom-E Noter 1. Uddelegering Ét af de væsentlige principper i objektorienteret programmering er, at enhver klasse selv skal kunne "klare ærterne". Enhver klasse skal altså

Læs mere

Voms Rev. 1.1. Knægt, Toqu. Konge, Voms 8

Voms Rev. 1.1. Knægt, Toqu. Konge, Voms 8 Generel rang: slår slår slår 3 Slår alt, men værdiløs i udspil. Knægt, Toqu, Giver to lus, når den slår Voms. Må ikke spilles ud før Voms en. Med mindre man har Voms. Konge, Voms, Giver én lus for et stik,

Læs mere

Sekvensafstand DM34 - Eksamensopgave. Jacob Aae Mikkelsen

Sekvensafstand DM34 - Eksamensopgave. Jacob Aae Mikkelsen Sekvensafstand DM34 - Eksamensopgave Jacob Aae Mikkelsen 19 10 76 kokken@grydeske.dk 27. maj 2005 Resumé Rapporten her beskriver tre forskellige rekursive metoder til at sammenligne tekst strenge med.

Læs mere

Nye features i Java 1.5/5.0

Nye features i Java 1.5/5.0 Denne guide er oprindeligt udgivet på Eksperten.dk Nye features i Java 1.5/5.0 Denne artikel beskriver nye features i Java 1.5/5.0, som lige er kommet i final (ikke-beta) udgave. Den forudsætter et vist

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 29. februar, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

MySQL i Java. Tutorial lavet af Jákup W. Hansen TSU 2006 2.semester 05.januar 2007

MySQL i Java. Tutorial lavet af Jákup W. Hansen TSU 2006 2.semester 05.januar 2007 MySQL i Java Tutorial lavet af Jákup W. Hansen TSU 2006 2.semester 05.januar 2007 Hvad er MySQL? Det er et database system, som er gratis for os at bruge. Det er lidt mere besværligt i starten at bruge

Læs mere

Rekursion og dynamisk programmering

Rekursion og dynamisk programmering Rekursion og dynamisk programmering Datastrukturer & Algoritmer, Dat C Forelæsning 12/10-2004 Henning Christiansen Rekursion: at en procedure kalder sig selv eller et antal metoder kalder hinanden gensidigt.

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter Skriftlig eksamen i Datalogi Modul 1 Vinter 1998/99 Opgavesættet består af 5 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 16% Opgave 2 12% Opgave 3 10% Opgave

Læs mere

Opgave: FIL File Paths

Opgave: FIL File Paths Opgave: FIL File Paths danish BOI 2015, dag 2. Tilgængelig hukommelse: 256 MB. 1.05.2015 Byteasar kan godt lide at leve på kanten. Han løber med sakse, indsender besvarelser til konkurrenceproblemer uden

Læs mere

Parallelle algoritmer

Parallelle algoritmer Parallelle algoritmer Von Neumann s model John von Neumann 1903-57 Von Neumanns model: Instruktioner og data er lagret i samme lager, og én processor henter instruktioner fra lageret og udfører dem én

Læs mere

RMI avanceret. Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer.

RMI avanceret. Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer. Denne guide er oprindeligt udgivet på Eksperten.dk RMI avanceret Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer. Den forudsætter

Læs mere

Forelæsning Uge 3 Mandag

Forelæsning Uge 3 Mandag Forelæsning Uge 3 Mandag ArrayList klassen Gør det let at lave en objektsamling (collection) med et variabelt antal elementer Der er mange andre slags objektsamlinger (se Collection interfacet i JavaDoc)

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2019 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 27. februar, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Forelæsning Uge 12 Torsdag

Forelæsning Uge 12 Torsdag Forelæsning Uge 12 Torsdag Protected access Alternativ til public og private Abstrakte klasser og interfaces En abstrakt klasse er en klasse, som man ikke kan lave instanser (objekter) af En abstrakt klasse

Læs mere

Systemkald DM14. 1. Obligatoriske opgave. Antal sider: 7 inkl. 2 bilag Afleveret: d. 18/3-2004 Afleveret af: Jacob Christiansen, 130282-2111

Systemkald DM14. 1. Obligatoriske opgave. Antal sider: 7 inkl. 2 bilag Afleveret: d. 18/3-2004 Afleveret af: Jacob Christiansen, 130282-2111 DM14 1. Obligatoriske opgave Systemkald Antal sider: 7 inkl. 2 bilag Afleveret: d. 18/3-2004 Afleveret af: Jacob Christiansen, 130282-2111 Side 1 af 5 Intro: Formålet med opgaven at et lave en system kald

Læs mere

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen Studiepraktik Thomas Bøgholm boegholm@cs.aau.dk Mikkel Hansen mhan@cs.aau.dk Jacob Elefsen jelefs12@student.aau.dk 1 Studiepraktik -- program Program onsdag 10.00 10.15 Registrering af fremmøde og gennemgang

Læs mere

Noter og opgaver. Programmering A IMADA. Niels Kjeldsen & Jacob Aae Mikkelsen. Med grundig korrektur og rettelser af Edmund Christiansen

Noter og opgaver. Programmering A IMADA. Niels Kjeldsen & Jacob Aae Mikkelsen. Med grundig korrektur og rettelser af Edmund Christiansen Programmering A IMADA Noter og opgaver Niels Kjeldsen & Jacob Aae Mikkelsen Med grundig korrektur og rettelser af Edmund Christiansen Noter til Programmering A INDHOLD Indhold 1 Indledning 3 2 Kom i gang

Læs mere

Dag 10 Flertrådet programmering

Dag 10 Flertrådet programmering Videregående programmering i Java Dag 10 Flertrådet programmering Fremlæggelse af programmering/status for projekter Dokumentation med javadoc Flertrådede designmønstre: Arbejdstråd, Producent Konsument,

Læs mere

Forelæsning Uge 6 Mandag

Forelæsning Uge 6 Mandag Forelæsning Uge 6 Mandag Tingene i denne forelæsning er ikke eksamenspensum Forelæsningen afrunder kurset, og forklarer nogle af de begreber, som I har mødt under kurset uden at få detaljeret forklaring

Læs mere

Forelæsning Uge 5 Mandag

Forelæsning Uge 5 Mandag Forelæsning Uge 5 Mandag Algoritmeskabeloner findone, findall, findnoof, findsumof (sidste mandag) findbest Brug af klassen Collections og interfacet Comparable BlueJ s Debugger Nyttig til at inspicere

Læs mere

Forelæsning Uge 3 Torsdag

Forelæsning Uge 3 Torsdag Forelæsning Uge 3 Torsdag Billedredigering Gråtonebilleder (som er lidt simplere end farvebilleder) Arrays Kan "opbevare" et antal objekter (som ArrayList) Fast (på forhånd kendt) antal elementer Afleveringsopgave:

Læs mere

DGI TRÆNERGUIDEN DGI TRÆNERGUIDEN DGI TRÆNERGUIDEN DGI TRÆNERGUIDEN. Badmintonregler. Nik til bolden kamp SJOVE KAMPLEGE SJOVE KAMPLEGE

DGI TRÆNERGUIDEN DGI TRÆNERGUIDEN DGI TRÆNERGUIDEN DGI TRÆNERGUIDEN. Badmintonregler. Nik til bolden kamp SJOVE KAMPLEGE SJOVE KAMPLEGE Nr.6653 Nr.6651 Badmintonregler lov til at serve og får et point. Bordtennisbold og bat Nik til bolden kamp Der kan spilles med kun 3 jongleringer før bolden skal returneres. Kan spilles som double, hvor

Læs mere

Webserverprogrammering

Webserverprogrammering Webserverprogrammering WSP fortsat - dag 11 Behandling af XML (StAX) Syndikering og RSS med XML JAXB - XML Java-objekter Projekthjælp Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html

Læs mere

Tabelbegrebet. Klassediagrammer (III) Oversigt. Anvendelse af Tabeller. Tabeller og qualified associations

Tabelbegrebet. Klassediagrammer (III) Oversigt. Anvendelse af Tabeller. Tabeller og qualified associations Tabelbegrebet Klassediagrammer (III) Tabeller og qualified associations originally by Michael R. Hansen modified/extended by Anne E. Haxthausen Informatics and Mathematical Modelling Technical University

Læs mere

Forelæsning Uge 4 Torsdag

Forelæsning Uge 4 Torsdag Forelæsning Uge 4 Torsdag Algoritmeskabeloner findone, findall, findnoof, findsumof (i mandags) findbest Levetid for variabler og parametre Virkefeltsregler Hvor kan man bruge de forskellige variabler?

Læs mere

Forelæsning Uge 4 Mandag

Forelæsning Uge 4 Mandag Forelæsning Uge 4 Mandag Algoritmeskabeloner Kan (ved simple tilretningerne) bruges til at implementere metoder, der gennemsøger en arrayliste (eller anden objektsamling) og finder objekter, der opfylder

Læs mere

Singleton pattern i Java

Singleton pattern i Java Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i Java Denne artikel beskriver Singleton pattern og implementation i Java. Den forudsætter kendskab til Java men ikke til Singleton.

Læs mere

Worms Rev. 3.0. Knægt, Toqu. Konge, Worms

Worms Rev. 3.0. Knægt, Toqu. Konge, Worms Generel rang: slår slår slår 3 Knægt, Toqu, Konge, Worms, 8 9'erne Es'erne Knægt ene 6'erne 5'erne 8'erne (bortset fra 8) Damerne Konge Konge, Ataata + Konge Slår alt, men værdiløs i udspil. Giver to lus,

Læs mere