Forelæsning Uge 3 Torsdag
|
|
- Minna Johannsen
- 6 år siden
- Visninger:
Transkript
1 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: Raflebæger 3 (DieCup 3)
2 Om programmering Programmering Anderledes Svær tankegang Faser Motivation Begejstring Tvivl? Frustration Eksistentiel krise Heureka! Fascination Indsigt Magt over teknologien Begejstring Tid 2
3 Billedredigering Lysere Mørkere Inverteret Uskarpt 3
4 Billedrepræsentation 0 0 x width Gråtoneværdi: Pixel (x,y) [0..255] hvor 0 ~ sort og 255 ~ hvid y height 4
5 Billedredigering Vi bruger to klasser Image repræsenterer et billede og har metoder som arbejder på billedet, bl.a. brighten, darken, invert og blur Pixel repræsenterer en pixel og har metoder til at aflæse og sætte pixlens gråtoneværdi Image * Pixel public class Pixel { én-til-mange relation // Returnerer gråtonen for denne pixel public int getvalue() // Opdaterer gråtonen for denne pixel public void setvalue(int value) 5
6 Interface for Image klassen (signaturer) public class Image { // Returnerer billedets højde public int getheight(); // Returnerer billedets bredde public int getwidth(); // Returnerer pixlen på position (x,y) public Pixel getpixel(int x, int y); // Returnerer en liste med samtlige pixels i billedet public ArrayList<Pixel> getpixels(); // Returnerer de op til ni naboer til (x,y) (inklusiv (x,y)) public ArrayList<Pixel> getneighbours(int x, int y); // Gentegner billedet public void pixelsupdated();... 6
7 Skabelon for simpel billedbehandling image Vi bruger en for-each løkke til at gennemløbe samtlige pixels og opdatere dem en efter en Rækkefølgen er ligegyldig for os Pixel Arrayliste med alle Pixels for ( Pixel p : image.getpixels() ) { int oldvalue = p.getvalue(); int newvalue =???; find værdien af p p.setvalue(newvalue); p opdater p's værdi beregn ny værdi ud fra den gamle 7
8 Brighten newvalue = oldvalue ~ sort, 255 ~hvid 8
9 Brighten, Javakode image for ( Pixel p : image.getpixels() ) { int oldvalue = p.getvalue(); int newvalue = oldvalue + 30 ; p.setvalue(newvalue); for ( Pixel p : image.getpixels() ) { p.setvalue(p.getvalue() + 30); p Kan I se et potentielt problem? 9
10 Invert newvalue = oldvalue 10
11 Invert, Javakode image for ( Pixel p : image.getpixels() ) { int oldvalue = p.getvalue(); int newvalue = 255 oldvalue ; p.setvalue(newvalue); for ( Pixel p : image.getpixels() ) { p.setvalue(255 - p.getvalue()); p 11
12 Eksempler på billedoperationer brighten darken invert blur mirror flip rotate resize Gør billedet lidt lysere Gør billedet lidt mørkere Inverterer hver gråtone Erstatter hver pixel med gennemsnittet af naboerne Spejler billedet om den vertikale midterakse Spejler billedet om den horisontale midterakse Roterer billedet 90 grader mod uret Skalerer billedet, så størrelsen ændres I den anden afleveringsopgave i uge 4 skal I implementere disse operationer 12
13 Arrays Arrays har et fast (på forhånd kendt) antal elementer Ligner Collections, men er bygget direkte ind i Java sproget Findes også i mange andre programmeringssprog 1. Erklæring (som feltvariabel) private int[] hourcounts; 2. Initialisering (ofte i konstruktør) hourcounts = new int[24]; Skal ikke importeres Kan også bruges på primitive typer Antal af elementer kan defineres via et udtryk Eksempler på brug count = hourtcounts[hour]; hourcounts[hour]++; Udtrykket i [ ] skal evaluere til et heltal i intervallet [0,23] Antal elementer i { bestemmer størrelsen Erklæring og initialisering med værdier kan slås sammen private int[] monthlength = {31,28,31,30,,30,31; 13
14 To metoder, der bruger et array // Analyserer antal events indtruffet i hver klokketime public void analyzehourlydata() { while (reader.hasmoreentries()) { LogEntry entry = reader.nextentry(); int hour = entry.gethour(); hourcounts[hour]++; // Udskriver antal events indtruffet i hver klokketime public void printhourlycounts() { System.out.println("Hr: Count"); for (int hour = 0; hour < hourcounts.length; hour++) { System.out.println(hour + ": " + hourcounts[hour]); 14
15 For løkker brugt på arrays Javas for-each løkke kan også bruges på arrays private String url; private String[] urls; for (String url : urls) { System.out.println(url); For-løkken giver adgang til at bruge indexet for (int hour = 0; hour < hourcounts.length; hour++) { System.out.println( hour + ": " + hourcounts[hour]); Det gør for-each løkken ikke for (int value : hourcounts) { System.out.println(???? + ": " + value); 15
16 Forskelle på arrays og arraylister Arrays har et fast (på forhånd kendt) antal elementer Simplere syntax for erklæring private int[] hourcounts; i stedet for private ArrayList<Integer> hourcounts; Arrays kan bruges på primitive typer (uden brug af wrapper klasse) Simplere syntax for initialisering hourcounts = new int[24]; i stedet for hourcounts = new ArrayList<Integer>(); Simplere syntax for kald hourcounts[13]; i stedet for hourcounts.get(13); Meget nemmere at håndtere flerdimensionale strukturer minutecounts = new int[24][60]; secondcounts = new int[24][60][60]; Arrays er indbygget i Java sproget Giver mere effektiv implementering (hurtigere kode) og simplere syntax Kendt fra mange andre programmeringssprog Arrays er ikke en Collection type 16
17 Adressebog med personer Et String objekt er implementeret ved et array: char [ ] Arraylisten er implementeret ved hjælp af et array: Object [ ] 17
18 Eksempler på brug af arrays En arrayliste er en liste af objekter implementeret ved hjælp af et array Der er ubrugte elementer i arrayet, således at man kan indsætte nye elementer i arraylisten Når alle elementer er brugt udskiftes arrayet med et nyt (og større) En textstreng (objekt af typen String) er en liste af tegn (primitiv type char) implementeret ved hjælp af et array Kan I tænke på andre situationer, hvor det vil være hensigtsmæssigt at bruge arrays? 18
19 Billedrepræsentation via arrays 0 0 j width Gråtoneværdi: Pixel (x,y) [0..255] hvor 0 ~ sort og 255 ~ hvid i To dimensionalt array private int[][] pixels = new int[width][height]; height Elementtypen er int Størrelsen er width x height 19
20 Skab et billede public class Image // Feltvariabler private int width, height; private String title; private int[][] pixels;... 2-dimensionalt array // Konstruktør public Image(int width, int height, String title){ this.width = width; this.height = height; 0 0 j width this.title = title; pixels = new int[width][height]; // Lav alle pixels sorte for(int i=0; i < height; i++) { i for(int j=0; j < width; j++) { pixels[i][j] = 0;... Sort height 20
21 Afleveringsopgave: Raflebæger 3 (DieCup 3) Vi skal endnu en gang arbejde videre med vores Raflebæger I skal lave noget mere aftestning Sammenligne slag fra to raflebægere, der har hhv. 3 og 4 terninger Generalisere terningen, så den kan have et vilkårligt antal sider Gammel Ny Raflebæger 2 // skaber terning med 6 sider Die(){ ; // skaber terning med n sider Die(int n){; // skaber bæger med 2 terninger DieCup(){ ; // skaber bæger med n terninger DieCup(int n){ ; Forskellige konstruktører for Die Overloadning Hedder det samme Forskellige parametre Forskellige konstruktører for DieCup // skaber bæger hvor terninger har det antal sider som arraylistens elementer angiver DieCup(ArrayList<Integer> sides){ ; [6,8,5,6] 21
22 Opsummering Billedredigering Forberedelse til afleveringsopgave i Uge 4 Arrays Fast (på forhånd kendt) antal elementer Bygget direkte ind i Java Giver mere effektiv adgang til de enkelte elementer Simplere syntax (uden brug af de normale metode kald) Afleveringsopgave: Raflebæger 3 (DieCup 3) I den anden afleveringsopgaver i uge 4 skal I arbejde med billedredigering I arbejder med arraylister Men "bagved kulisserne" er billederne repræsenteret i 2-dimensionale arrays 22
23 Det var alt for nu.. spørgsmål 23
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 mereForelæsning Uge 3 Torsdag
Forelæsning Uge 3 Torsdag Billedredigering Gråtonebilleder (som er lidt simplere end farvebilleder) Rekursive metoder Metoder der kalder sig selv Giver ofte meget elegante og simple løsninger på komplekse
Læs mereForelæsning Uge 3 Torsdag
Forelæsning Uge 3 Torsdag Billedredigering Gråtonebilleder (som er lidt simplere end farvebilleder) Rekursive metoder Metoder der kalder sig selv Giver ofte meget elegante og simple løsninger på komplekse
Læs mereBilledbehandling. Processering af digitale billeder
Billedbehandling Processering af digitale billeder Billedbehandling Lighten Blur Darken Invert Billedrepræsentation 0 0 x width Pixel (x, y) [0..255] 0 ~ sort, 255 ~hvid x [0..width[, y [0..heigth[ y height
Læs mereForelæsning Uge 3 Torsdag
Forelæsning Uge 3 Torsdag Billedredigering Gråtonebilleder (som er lidt simplere end farvebilleder) Rekursive metoder Metoder der kalder sig selv Giver ofte meget elegante og simple løsninger på komplekse
Læs mereForelæ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 mereForelæsning Uge 9 Mandag
Forelæsning Uge 9 Mandag Arrays Objektsamlinger med et fast (på forhånd kendt) antal elementer Velkendt fra mange andre programmeringssprog Principper for design af klasser Undgå f.eks. at have den samme
Læs mereForelæ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 mereBILLEDREDIGERING (IMAGES)
BILLEDREDIGERING (IMAGES) I dette projekt skal I redigere gråtonebilleder ved hjælp af nogle af de teknikker, der blev beskrevet i en forelæsning. Hent BlueJ-projektet Image (zip) og husk at pakke det
Læs mereForelæsning Uge 9 Mandag
Forelæsning Uge 9 Mandag Arrays Objektsamlinger med et fast (på forhånd kendt) antal elementer Velkendt fra mange andre programmeringssprog Principper for design af klasser Undgå f.eks. at have den samme
Læs mereObjektsamlinger med et fast (på forhånd kendt) antal elementer Velkendt fra mange andre programmeringssprog
Forelæsning Uge 9 Arrays Objektsamlinger med et fast (på forhånd kendt) antal elementer Velkendt fra mange andre programmeringssprog Principper for design af klasser Undgå f.eks. at have den samme kode
Læs mereObjektsamlinger med et fast (på forhånd kendt) antal elementer Velkendt fra mange andre programmeringssprog
Forelæsning Uge 9 Arrays Objektsamlinger med et fast (på forhånd kendt) antal elementer Velkendt fra mange andre programmeringssprog Principper for design af klasser Undgå f.eks. at have den samme kode
Læs mereForelæ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 mereForelæsning Uge 3 Mandag
Forelæsning Uge 3 Mandag ArrayList Collection med variabelt antal elementer Der er mange andre Collection typer (se Collection interfacet i JavaDoc) MusicOrganizer projektet Eksempel på brug af ArrayList
Læs mereForelæ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 mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgave:
Læs mereForelæsning Uge 4 Torsdag
Forelæsning Uge 4 Torsdag Algoritmeskabeloner findone, findall, findnoof, findsumof (sidste mandag) findbest Levetid for variabler og parametre Virkefeltsregler Hvor kan man bruge de forskellige variabler?
Læs mereForelæ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 mereForelæ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 mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgave:
Læs mereForelæsning Uge 2 Torsdag
Forelæsning Uge 2 Torsdag Java syntax og style guide Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Brug
Læs mereForelæ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 mereForelæ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 mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgaver
Læs mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgaver
Læs mereForelæ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 mereForelæ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 mereOpfølgning på Dygtig Skildpadde (Michael) To algoritmeskabeloner
Forelæsning 4.1 Opfølgning på Dygtig Skildpadde (Michael) To algoritmeskabeloner finden findalle Primitive typer (forfremmelse og begrænsning) Identitet versus lighed (for objekter, herunder strenge) Afleveringsopgave
Læs mereUniversity 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 mereForelæ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 mereUniversity 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 mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Objekters tilstand og opførsel BlueJ og Greenfoot Java Skabelse af objekter (via new-operatoren) Iteration (gentagelser) og parametrisering Forskellige slags variabler Afleveringsopgave:
Læs meredintprog 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 mereForelæ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 mereForelæsning Uge 1 Torsdag
Forelæsning Uge 1 Torsdag Objekters tilstand og opførsel Java og BlueJ Skabelse af objekter (via new-operatoren) Iteration (gentagelser) og parametrisering Java's for løkke Parametre i metoder Forskellige
Læs mereHar kun én enkelt abstract metode De steder, hvor man skal bruge et objekt, hvis type er et funktionelt interface, kan man i stedet bruge en lambda
Forelæsning Uge 12 Abstrakte klasser og interfaces En abstrakt klasse er en klasse, som man ikke kan lave instanser af En abstrakt klasse kan indeholde abstrakte metoder, hvor kun hovedet er angivet, mens
Læs mereForelæsning Uge 1 Torsdag
Forelæsning Uge 1 Torsdag Objekters tilstand og opførsel Java og BlueJ Skabelse af objekter (via new-operatoren) Iteration (gentagelser) og parametrisering Java's for løkke Parametre i metoder Forskellige
Læs mereDatalogi 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 mereKlasser 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 mereDANMARKS 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 mereKlasser og objekter. (Afsnit i manualen)
Klasser og objekter (Afsnit 4 + 5 i manualen) Grundbegreber Klasser og objekter beskrivelse oprettelse Attributter og metoder tilstand opførsel Indkapsling afskærmning datarepræsentationsuafhængighed Klasser
Læs mereForelæ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 mereclass 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 mereVideregående programmering i Java
Videregående programmering i Java Dag 6 Komponenter (og lidt Swing og MVC) Læsning: VP 4, evt. VP 6 Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html Grafiske komponenter
Læs mereHar kun én enkelt abstract metode De steder, hvor man skal bruge et objekt, hvis type er et funktionelt interface, kan man i stedet bruge en lambda
Forelæsning Uge 12 Protected access Alternativ til public og private Abstrakte klasser og interfaces En abstrakt klasse er en klasse, som man ikke kan lave instanser af En abstrakt klasse kan indeholde
Læs meredintprog Manual Revision: 731 September 30, 2009 1 Introduktion 3 1.1 Notation... 3 I Begreber 4 2 Grundbegreber om programmering 4
dintprog Manual Revision: 731 September 30, 2009 Indhold 1 Introduktion 3 1.1 Notation................................. 3 I Begreber 4 2 Grundbegreber om programmering 4 3 Grundbegreber om modellering
Læs mereUgeseddel 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 mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereAAU, 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 mereAbstrakte 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 mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereForelæsning Uge 5 Mandag
Forelæsning Uge 5 Mandag Sortering ved hjælp af klassen Collections Ved hjælp af interfacet Comparable Ved hjælp af interfacet Comparator findbest som sorteringsproblem Køreprøven i uge 7 Form Forberedelse
Læs mereKursus 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 mereProgrammering 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 mereHvad er Objekter - Programmering
Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som
Læs mereLø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 mereAlgoritmeskabeloner: Sweep- og søgealgoritmer C#-version
Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version Finn Nordbjerg 1/9 Indledning I det følgende introduceres et par abstrakte
Læs mereForelæsning Uge 5 Mandag
Forelæsning Uge 5 Mandag Sortering ved hjælp af klassen Collections Ved hjælp af interfacet Comparable Ved hjælp af interfacet Comparator findbest som sorteringsproblem Information om køreprøven i uge
Læs mereDRONNINGER (QUEENS) Opgave 1
DRONNINGER (QUEENS) I denne opgave vil vi beskæftige os med det såkaldte 8-dronningeproblem, hvor man skal placerede 8 dronninger på et 8 x 8 skakbræt, således at ingen af dronningerne kan slå hinanden.
Læs mereb) 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 mereTabelbegrebet. 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 mereIntroduktion til ActionScript
Introduktion til ActionScript Kaspar Rosengreen Nielsen kaspar@interactivespaces.net i n t e r a c t i v e s p a c e s. n e t Kaspar Nielsen, kaspar@interactivespaces.net 1 Dagens program Opsamling på
Læs mereVirkefeltsregler 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 mereTree 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 mereDM507 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 mereclass 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 mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2013 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 5. marts, 2013 Dette projekt udleveres i to dele. Hver del har sin deadline, således
Læs mereForelæ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 mereBilag 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 mereKursus 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 mereForelæsning Uge 12 Mandag
Forelæsning Uge 12 Mandag 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 mereDM01 DM01. 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 11
DM01 DM01 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 18/3-2003 Side 1 af 11 DM01 Indholdsfortegnelse: BILAG:...2 1 FORMÅL:...3 2 KLASSER:...4 2.1 DILEMMA:...4 2.1.1 METODER:...4
Læs mereCivilingeniø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 mereTabeller (I) Tabeller
Tabeller (I) Klassediagrammer (III) Tabeller og qualified associations Michael R. Hansen mrh@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark En tabel fra en mængde A til
Læs mereSoftware Construction 1 semester (SWC) Spørgsmål 1
Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /
Læs mereSkriftlig eksamen i Datalogi
Roskilde Universitetscenter Skriftlig eksamen i Datalogi Modul 1 Sommer 1999 Opgavesættet består af 5 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 15% Opgave 2 15% Opgave 3 8% Opgave
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2015 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 3. marts, 2015 Dette projekt udleveres i to dele. Hver del har sin deadline, således
Læs mereEksempel: 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 mereForelæsning Uge 6 Mandag
Forelæsning Uge 6 Mandag Funktionel programmering i Java (Kapitel 5) Forskellen på imperative og funktionelle programmeringssprog Lambda'er (kodestumper, der kan bruges som parametre i et metodekald) Streams
Læs mereForelæsning Uge 5 Mandag
Forelæsning Uge 5 Mandag Sortering ved hjælp af klassen Collections Ved hjælp af interfacet Comparable Ved hjælp af interfacet Comparator findbest som sorteringsproblem Information om køreprøven i uge
Læs mereDM507 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 mereIndledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen.
Indledning...2 Variabler...13 Eksempel: 1...13 Eksempel 2:...13 Eksempel 3:...15 Eksempel 4:...16 Metoder...17 Metode (intet ind og intet ud)...17 Metode (tekst ind)...18 Metode (tekst ind og tekst ud)...19
Læs mereDatalogi 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 mereForelæsning Uge 10. Opremsningstyper. Forskellige teknikker til test og debugging. Afleveringsopgave: Debugging + Test.
Forelæsning Uge 10 Opremsningstyper Enumerated types Forskellige teknikker til test og debugging Når man tester undersøger man, om opførslen (semantikken) er den ønskede Når man debugger (afluser), forsøger
Læs mereBRP Tal. Om computer-repræsentation og -manipulation. Logaritmer
BRP 13.9.2006 Tal. Om computer-repræsentation og -manipulation. Logaritmer 1. Opgaverne til i dag dækker det meste af stoffet 2. Resten af stoffet logaritmer binære træer 3. Øvelse ny programmeringsopgave
Læs mereForelæsning Uge 6 Mandag
Forelæsning Uge 6 Mandag Funktionel programmering i Java (Kapitel 5) Forskellen på imperative og funktionelle programmeringssprog Lambda'er (kodestumper, der kan bruges som parametre i et metodekald) Streams
Læs mereOnline billede filtrering
Online billede filtrering Eksamensprojekt 2014 Andreas Lorentzen, klasse 3.4 Roskilde Tekniske Gymnasium Programmering C 09-05-2014 I dette projekt vil jeg demonstrerer en af de mange ting moderne browsere
Læs mereUniversity 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 mereFundamentale sprogbegreber
Fundamentale sprogbegreber Sætninger og udtryk Niveauer af programbeskrivelse (statisk versus dynamisk syn) Oversigt Sætninger simple sætninger (assignment, metodekald) sammensatte sætninger (selektion,
Læs mereKursusarbejde 3 Grundlæggende Programmering
Kursusarbejde 3 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 21. november 2003 Indhold 1. Kode 2 1.1. forestillinger.h............................................. 2 1.2. forestillinger.cc.............................................
Læs mereModern Concurrency Abstractions for C#
Modern Concurrency Abstractions for C# Nick Benton Luca Cardelli Cédric Fournet Presenter: Henrik Kragh-Hansen September 27, 2007 Motivation for concurrency Forbedring af concurrency Baggrundsinformation
Læs mereUniversity 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 mereIntroduktion til ActionScript, fortsat
Introduktion til ActionScript, fortsat Kaspar Rosengreen Nielsen kaspar@interactivespaces.net i n t e r a c t i v e s p a c e s. n e t Kaspar Nielsen, kaspar@interactivespaces.net 1 Dagens program Opsamling
Læs mereRekursion 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 mereCOMPUTERSPIL 1. Opgave 1. Opgave 2
COMPUTERSPIL 1 I løbet af de kommende fem uger skal I programmere et computerspil, hvor spillerne rejser rundt mellem byer i forskellige lande og indsamler point. Der er en delaflevering hver uge, hvor
Læs mereSkriftlig eksamen i Datalogi
Roskilde Universitetscenter side 1 af 11 sider Skriftlig eksamen i Datalogi Modul 1 Sommer 2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 10% Opgave 2 10%
Læs mereGrundlæ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 mereMålet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.
Merging og hashing Mål Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer (2. semester). Mål
Læs mereTest af It-komponent
Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side
Læs mereForelæsning Uge 6 torsdag repetition
Forelæsning Uge 6 torsdag repetition Java style guide Niveauer af programbeskrivelser Arraylister (én-til-mange relation) For-løkker (almindelig og udvidet) Primitive typer (forfremmelse og begrænsning)
Læs mere