Kursusarbejde 3 Grundlæggende Programmering

Størrelse: px
Starte visningen fra side:

Download "Kursusarbejde 3 Grundlæggende Programmering"

Transkript

1 Kursusarbejde 3 Grundlæggende Programmering Arne Jørgensen, klasse dm032-1a 21. november 2003 Indhold 1. Kode forestillinger.h forestillinger.cc teater.cc Om koden Datafiler forestilling.dat reservationer.dat Afprøvning 9

2 KURSUSARBEJDE 3, ARNE JØRGENSEN 2/10 1. Kode 1.1. forestillinger.h 5 #ifndef FORESTILLINGER_H #define FORESTILLINGER_H #include <string> #include <iostream> const int BORDE = 48; const int PLADSER = 12; const int MAXFORESTILLINGER = 4; 10 class Reservation private: int nr; int antal; 15 public: Reservation(); Reservation(int nr_, int antal_); int Nummer(); 20 int Antal(); ; class Forestilling 25 private: std::string titel; // string klassen i GNU C++ ligger i std namespacet int dato; int tid; int antal_reservationer; 30 Reservation reservationer[borde PLADSER]; int reserverede_pladser(); // Post: returnerer antallet af reserverede pladser til forestillingen 35 public: Forestilling(); // default konstruktør Forestilling(std::string titel_, int dato_, int tid_); 40 // Pre: dato_ indeholder en gyldig dato i formatet ÅÅÅÅMMDD og tid_ et gyldigt klokkeslæt i formatet HHMM // Post: en forestilling oprettes med de ønskede data 45 int antalledige(); // Post: resturnerer antallet af ledige pladser til forstillingen int reserver(int antal); // Pre: antal er det antal pladser der ønskes reserveret // Post: foretager reservationen så fremt reservation er mulig og // returnerer reservationsnummer eller 1 hvis reservation ikke er 50 // muligt (fx ikke nok ledige pladser) std::string Titel(); // Post: returnerer forestillingens titel 55 int Dato(); // Post: returnerer forestillingens spilledato som et heltal på formen ÅÅÅÅMMDD 60 int Tid(); // Post: returnerer forestillingens spilletidpunkt som et heltal på formen HHMM friend bool operator<(const Forestilling& f1, const Forestilling& f2); // Post: er sand hvis forestilling f1 finder sted før forestilling f2 friend bool operator==(const Forestilling& f1, const Forestilling& f2); 65 // Post: er sand hvis forestilling f1 og forestilling f2 finder sted samtidig friend std::ostream& operator<< (std::ostream& str, const Forestilling& forestilling); // Pre: hvis str er en fil er filen åbnet

3 KURSUSARBEJDE 3, ARNE JØRGENSEN 3/10 // Post: udskriver oplysninger om forestilling på streamen med 70 // mellem felterne til nem, senere indlæsning med cin ; class Spilleplan 75 private: Forestilling spilleplan[maxforestillinger]; int antal; public: 80 Spilleplan(); // default kontrsuktør bool tilfoej(const Forestilling& forestilling); // Pre: forestilling indeholder et objekt med alle oplysninger om forestillingen lagt i 85 // Post: returnerer true hvis forestilling er tilfoejet og sorteringen opretholdt bool nedlaeg(const int index); // Post: returnerer true hvis forestilling[i] er fjernet og sorteringen opretholdt 90 int udvaelg(const int dato, const int klokkeslaet); // Pre: dato er på formen ÅÅÅÅMMDD og klokkeslaet på formen HHMM // Post: returnerer indekset på den ønskede forestilling eller 1 hvis den ikke findes void dump(std::ostream& forestilling); 95 // Pre: hvis str er en fil er filen åbnet // Post: udskrivet alle oplysninger om alle forestillinger til str Forestilling& operator[](const int index); // Pre: index skal være et gyldigt indeks ( fundet med udvaelg() ) 100 // Post: returnerer det ønskede forestillingsobjekt ; #endif // FORESTILLINGER_H 1.2. forestillinger.cc #include <fstream> #include "forestillinger.h" Forestilling::Forestilling() 5 titel = ""; dato = 0; tid = 0; antal_reservationer = 0; 10 Forestilling::Forestilling(std::string titel_, int dato_, int tid_) titel = titel_; 15 dato = dato_; tid = tid_; antal_reservationer = 0; 20 std::string Forestilling::Titel() return titel; 25 int Forestilling::Dato() return dato; 30 int Forestilling::Tid() return tid;

4 KURSUSARBEJDE 3, ARNE JØRGENSEN 4/10 35 int Forestilling::reserverede_pladser() int antal = 0; for (int i=0; i < antal_reservationer; i++) antal += reservationer[i].antal(); 40 return antal; int Forestilling::antalledige() 45 return (BORDE PLADSER) reserverede_pladser(); int Forestilling::reserver(int antal) int reservationsnummer = ((((reserverede_pladser()+1)/12)+1) 100) + ((reserverede_pladser()+1)%12); if (antal > antalledige() antal <= 0) return 1; Reservation reservation(reservationsnummer, antal); 60 reservationer[antal_reservationer] = reservation; antal_reservationer++; ofstream reservationsfil("reservationer.dat", ios::app); if (!reservationsfil.fail()) 65 reservationsfil << reservationsnummer << ' ' << dato << ' ' << tid << ' ' << antal << endl; 70 return reservationsnummer; bool operator<(const Forestilling& f1, const Forestilling& f2) 75 return ((f1.dato < f2.dato) ((f1.dato == f2.dato) && (f1.tid < f2.tid))); bool operator==(const Forestilling& f1, const Forestilling& f2) 80 return ((f1.dato == f2.dato) && (f1.tid == f2.tid)); std::ostream& operator<< (std::ostream& str, const Forestilling& forestilling) 85 str << forestilling.dato << ' ' << forestilling.tid << ' ' << forestilling.antal_reservationer << ' ' 90 << forestilling.titel; return str; 95 Reservation::Reservation() nr = 0; antal = 0; 100 Reservation::Reservation(int nr_, int antal_) nr = nr_; antal = antal_; 105 int Reservation::Nummer()

5 KURSUSARBEJDE 3, ARNE JØRGENSEN 5/ return nr; int Reservation::Antal() return antal; 115 Spilleplan::Spilleplan() antal = 0; 120 bool Spilleplan::tilfoej(const Forestilling& forestilling) // er der overhovedet plads til en ny forestilling? 125 if (antal >= MAXFORESTILLINGER) return false; // findes forestillingen allerede? for (int i=0; i < antal; i++) 130 if (forestilling == spilleplan[i]) return false; 135 // sæt foreløbigt forestillingen ind på første ledige plads... spilleplan[antal] = forestilling; //... og bobble den så ned på plads Forestilling temp; for (int i=antal; i > 0; i ) 140 if (spilleplan[i] < spilleplan[i 1]) temp = spilleplan[i]; spilleplan[i] = spilleplan[i 1]; spilleplan[i 1] = temp; 145 antal++; return true; bool Spilleplan::nedlaeg(const int index) if (index < 0 index > antal) return false; for (int i=index; i < antal 1; i++) spilleplan[i] = spilleplan[i+1]; antal ; return true; int Spilleplan::udvaelg(const int dato, const int klokkeslaet) Forestilling temp("", dato, klokkeslaet); for (int i=0; i < antal; i++) if (spilleplan[i] == temp) return i; return 1; 175 void Spilleplan::dump(std::ostream& forestilling) for (int i=0; i < antal; i++) forestilling << spilleplan[i] << endl; 180 Forestilling& Spilleplan::operator[](const int index)

6 KURSUSARBEJDE 3, ARNE JØRGENSEN 6/ if (index < 0 index > antal) exit(1); // der blev forsøgt at løbe udenfor arrayet return spilleplan[index]; 1.3. teater.cc #include <iostream> #include <fstream> #include "forestillinger.h" 5 int menu(); void opretforestilling(spilleplan& spilleplan); void nedlaegforestilling(spilleplan& spilleplan); void reserverpladser(spilleplan& spilleplan); void ledigepladser(spilleplan& spilleplan); int main() Spilleplan spilleplan; 15 int valg; do valg = menu(); 20 switch (valg) case 1: opretforestilling(spilleplan); break; 25 case 2: nedlaegforestilling(spilleplan); break; case 3: reserverpladser(spilleplan); 30 break; case 4: ledigepladser(spilleplan); break; ; 35 while (valg!= 9); std::ofstream forestilling("forestilling.dat", std::ios::app); 40 if (forestilling.fail()) exit(1); // kunne ikke åben forestillinger.dat spilleplan.dump(forestilling); 45 return 0; 50 int menu() int valg; do cout << "\nmenu\n----\n\n"; 55 cout << "1: Opret forestilling\n"; cout << "2: Nedlæg forestilling\n"; cout << "3: Reservér pladser til forestilling\n"; cout << "4: Antal ledige pladser til forestilling\n"; cout << "\n9: Afslut\n"; 60 cout << "\nønske: "; cin >> valg; while (valg!= 1 && valg!= 2 && valg!= 3 && valg!= 4 && valg!= 9); return valg; 65

7 KURSUSARBEJDE 3, ARNE JØRGENSEN 7/10 void opretforestilling(spilleplan& spilleplan) 70 string titel; int dato, klokkeslaet; getline(cin, titel); // ryd op på streamen før indlæsning med getline 75 cout << "\nopret forestilling\n \n\n"; cout << "Titel: "; getline(cin, titel); cout << "Dato (ÅÅÅÅMMDD): "; cin >> dato; 80 cout << "Klokkeslæt (HHMM): "; cin >> klokkeslaet; Forestilling forestilling(titel, dato, klokkeslaet); if (spilleplan.tilfoej(forestilling)) 85 cout << '\n' << titel << " er tilføjet spilleplanen,\n"; else cout << '\n' << titel << " kunne ikke tilføjes spilleplanen,\n"; 90 void nedlaegforestilling(spilleplan& spilleplan) 95 int dato, klokkeslaet; cout << "\nnedlæg forestilling\n \n\n"; cout << "Dato (ÅÅÅÅMMDD): "; cin >> dato; cout << "Klokkeslæt (HHMM): "; 100 cin >> klokkeslaet; int udvalgt = spilleplan.udvaelg(dato, klokkeslaet); if (udvalgt!= 1) 105 if (spilleplan.nedlaeg(udvalgt)) cout << "\nforestillingen er nedlagt.\n"; else cout << "\nforestilling kunne ikke nedlægges.\n"; // burde ikke ske 110 else cout << "Ingen forestilling d. " << dato << " klokken " << klokkeslaet << ".\n"; void reserverpladser(spilleplan& spilleplan) 115 int dato, klokkeslaet, antal; 120 cout << "\nreservér pladser til forestilling\n \n\n"; cout << "Dato (ÅÅÅÅMMDD): "; cin >> dato; cout << "Klokkeslæt (HHMM): "; cin >> klokkeslaet; 125 cout << "Antal pladser: "; cin >> antal; int udvalgt = spilleplan.udvaelg(dato, klokkeslaet); if (udvalgt!= 1) 130 int reservationsnummer = spilleplan[udvalgt].reserver(antal); if (reservationsnummer!= 1) cout << "\nreservationsnummer " << reservationsnummer << ":\n"; 135 cout << antal << " pladser til " << spilleplan[udvalgt].titel() << " d. " << dato << " kl. " << klokkeslaet << ".\n"; else

8 KURSUSARBEJDE 3, ARNE JØRGENSEN 8/10 cout << "Kunne ikke reservere " << antal << " pladser til " << spilleplan[udvalgt].titel() << " d. " << dato << " kl. " << klokkeslaet << ".\n" 140 else cout << "\ningen forestilling d. " << dato << " klokken " << klokkeslaet << ".\n"; 145 void ledigepladser(spilleplan& spilleplan) 150 int dato, klokkeslaet; cout << "\nledige pladser til forestilling\n \n\n"; cout << "Dato (ÅÅÅÅMMDD): "; cin >> dato; 155 cout << "Klokkeslæt (HHMM): "; cin >> klokkeslaet; int udvalgt = spilleplan.udvaelg(dato, klokkeslaet); if (udvalgt!= 1) 160 cout << "\nder er " << spilleplan[udvalgt].antalledige() << " ledige pladser"; else cout << "\ningen forestilling d. " << dato << " klokken " << klokkeslaet << ".\n"; Om koden Hovedprogrammet (teater.cc) indeholder en kort main-løkke der kalder frie funktioner afhængig af brugerens valg fra en menu (også fri funktion). De frie funktioner tager sig af indlæsning af oplsyninger fra brugeren og kalder dernæst den(de) rette funktioner på spilleplanen (objekt). Klasserne (reservation, foredrag, spilleplan) er forsøgt holdt på et generelt niveau. Det vil sige de oplysningerne om foredrag mm. er kapslet ind i objekterne og kan kun tilgås gennem funktioner der skjuler den underliggende implementation. Fx var min umiddelbare tanke at implementere foredragsklassen med et 48-array til at repræsentere pladserne ved bordene. Men da vi ikke har brug for særlige oplysninger om det enkelte plads er det kun informationen om hvorvidt pladsen er reserveret eller ej der skal repræsenteres i et sådant array (fx ved en bool). Da pladserne dog fordeles fra bord 1, plads 1 og fremefter kan vi dog nøjes med oplysningen om hvormange pladser der er reserveret (som jeg også gør i denne opgave). Selvom første version af min opgaveløsning indeholdt et 48-arraym kunne klassen programmeres om til den nuværende løsning uden at ændre klassens interface. Spilleplanen er designet så man kan udvælge en enkelt forestilling efter dato og klokkeslæt og herefter udføre operationer på denne forestilling (gennem overload af []). Denne metode er valgt fremfor generelt at sende dato og klokkeslæt gennem et lag i spilleplansklassen. 2. Datafiler 2.1. forestilling.dat Filen indeholder en linje per forestilling med oplysninger: dato, klokkelæt, antal reservationer og titel Dyrene i Hakkebakkeskoven Phantom of the opera Den ugudelige farce Ved at lægge titlen sidst er det muligt at indlæse dataene i filen igen med læsninger fra inputstrømmen med >> og dernæst resten af linjen med string-klassens getline() reservationer.dat

9 KURSUSARBEJDE 3, ARNE JØRGENSEN 9/10 3. Afprøvning Programmet er afprøvet med en række testdata. I figur 1 til 3 på den følgende side ses skærmbilleder fra et par af afprøvningerne Resultatet af et par flere yderligere afprøvninger fremgår af forestilling.dat og reservationer.dat, se afsnit 2.1 til 2.2 på foregående side. Programmets beregninger, konstrolstrukturer, etc., er endvidere under udviklingen afprøvet ved hjælp af diverse driver-programmer. Disse er ikke vedlagt.

10 KURSUSARBEJDE 3, ARNE JØRGENSEN 10/10 Figur 1: En forestilling oprettes i spilleplanen). Figur 2: Et antal pladser reserveres til en forestilling. Figur 3: En forestilling i spilleplanen nedlægges.

Kursusarbejde 2 Grundlæggende Programmering

Kursusarbejde 2 Grundlæggende Programmering Kursusarbejde 2 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 31. oktober 2003 Indhold 1. Kode 2 1.1. hotel.h.................................................... 2 1.2. hotel.cc...................................................

Læs mere

Kursusarbejde 4 Grundlæggende Programmering

Kursusarbejde 4 Grundlæggende Programmering Kursusarbejde 4 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 19. december 2003 Indhold 1. Kode 2 1.1. Header-filer................................................. 2 1.1.1. Queue.h...............................................

Læs mere

Kursusarbejde 1 Grundlæggende Programmering. Arne Jørgensen, 300473-2919 klasse dm032-1a

Kursusarbejde 1 Grundlæggende Programmering. Arne Jørgensen, 300473-2919 klasse dm032-1a Kursusarbejde 1 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 3. oktober 2003 Kode //File Name: kaalhovede.cc //Author: Arne Jørgensen //Email Address: arne@arnested.dk, arnjor@niels.brock.dk

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

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 2 14. september 2009 Kontrolstrukturer Udvælgelse Gentagelse Eksempler Kommentarer Format - scanf og printf 2 / 27 Fra sidst 1 Kontrolstrukturer 2 Udvælgelse 3 Gentagelse 4 Eksempler

Læs mere

Programmering i C. Lektion november 2008

Programmering i C. Lektion november 2008 Programmering i C Lektion 3 18. november 2008 Kontrolstrukturer Udvælgelse Gentagelse Eksempler Fra sidst 1 Kontrolstrukturer 2 Udvælgelse 3 Gentagelse 4 Eksempler Kontrolstrukturer Udvælgelse Gentagelse

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

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

Den forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API.

Den forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API. Denne guide er oprindeligt udgivet på Eksperten.dk Brug af MySQL i C++ Denne artikel bygger ovenpå artiklen "MySQL C API" og forklarer hvordan man kan programmere mere objekt orienteret. Den forudsætter

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

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

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

Spil Master Mind. Indledning.

Spil Master Mind. Indledning. side 1 af 16 Indledning. Spillet som denne rapport beskriver, indgår i et større program, der er lavet som projekt i valgfaget programmering C på HTX i perioden 9/11-98 til 12/1-99. Spillet skal give de

Læs mere

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 1 8. september 2009 Målgruppe Motivation Indhold Form Materiale 2 / 47 Kursusintroduktion 1 Målgruppe 2 Motivation 3 Indhold 4 Form 5 Materiale Målgruppe Motivation Indhold Form

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

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

LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) { int wmid, wmevent; programmering med

LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) { int wmid, wmevent; programmering med LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) int wmid, wmevent; PAINTSTRUCT Introduktion ps; til HDC hdc; programmering med switch (message) case WM_COMMAND: wmid = LOWORD(wParam);

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

Programmering i C. Lektion oktober 2008

Programmering i C. Lektion oktober 2008 Programmering i C Lektion 2 20 oktober 2008 Historie Processen At kompilere 2 / 23 Fra sidst 1 Historie 2 Processen 3 At kompilere Historie Processen At kompilere 3 / 23 ALGOL 60 1963 CPL 1966 BCPL 1969

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

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

//--------------------------------- Definition af porte og funktioner -------------------------

//--------------------------------- Definition af porte og funktioner ------------------------- Temeraturmåler (C-program).txt // Initialiserings-sekvens #include #pragma model=medium #pragma code=0x0000 #pragma xdata=0x4000 #pragma asm=on #pragma parameters=register //#define display P4

Læs mere

Rekursion C#-version

Rekursion C#-version Note til Programmeringsteknologi Akademiuddannn i Informationsteknologi Rekursion C#-version Finn Nordbjerg 1 Rekursion Rekursionsbegrebet bygger på, at man beskriver noget ved "sig selv". Fx. kan tallet

Læs mere

Eksempel: et ordresystem note 5 Lagdeling s. 1

Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordre-system NiceHair er et firma, som sælger udstyr, inventar og frisørartikler til frisørsaloner over hele landet. Det er ejet af et ægtepar

Læs mere

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen...

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen... Modul 2 Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen... 6 Opgave... 6 POST/GET og formular... 6 Opgaver...

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

Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version

Algoritmeskabeloner: 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 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

Forelæsning Uge 2 Mandag

Forelæ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 mere

Hvis du synes at det ligner græsk så fortvivl ikke, inden artiklen er omme vil du synes at det er logik for begyndere.

Hvis du synes at det ligner græsk så fortvivl ikke, inden artiklen er omme vil du synes at det er logik for begyndere. Afsnit 1 Med denne tutorial vil du kunne lære at programmere i C++, du kan af naturlige grunde ikke lære alt om C++ i en så kort artikel, men nok til at komme i gang. De programmer du vil lære er standard

Læs mere

Hvilket sprog er hurtigst

Hvilket sprog er hurtigst Denne guide er oprindeligt udgivet på Eksperten.dk Hvilket sprog er hurtigst Denne artikel forsøger at aflive forskellige myter om hvilke sprog der er hurtigst. Den forudsætter ikke noget særligt. Skrevet

Læs mere

DM507 Algoritmer og datastrukturer

DM507 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 mere

Lige siden den elektroniske computers opfindelse i slutningen af 1940, har det været muligt at få en computer til at beregne ting.

Lige siden den elektroniske computers opfindelse i slutningen af 1940, har det været muligt at få en computer til at beregne ting. Denne guide er oprindeligt udgivet på Eksperten.dk C++ Historie og Programmering - Del 1 Denne guide er til dig der altid har undret dig over hvordan du får en computer til at udføre specifikke opgaver.

Læs mere

Kursus 02199: Programmering. Kontrol af programudførelsen. afsnit 3.1-3.5. if (indkomst > 267000) topskat = (indkomst-267000) * 0.

Kursus 02199: Programmering. Kontrol af programudførelsen. afsnit 3.1-3.5. if (indkomst > 267000) topskat = (indkomst-267000) * 0. Kursus 02199: Programmering afsnit 3.1-3.5 Anne Haxthausen IMM, DTU 1. Kontrol af programudførn (afsnit 3.1) 2. Valg-sætninger (if og switch) (afsnit 3.2 og 3.3) 3. Bloksætninger (afsnit 3.2) 4. Logiske

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

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

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

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 4 18. september 2009 Pointers Referenceparametre 2 / 19 Pointers 1 Pointers 2 Referenceparametre Pointers Referenceparametre 3 / 19 Husk: En variabel er en navngiven plads i computerens

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

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

Start på Arduino og programmering

Start på Arduino og programmering Programmering for begyndere Brug af Arduino Start på Arduino og programmering EDR Hillerød Knud Krogsgaard Jensen / OZ1QK 1 Start på Arduino og programmering Sidste gang (Introduktion) Programmeringssproget

Læs mere

At klippe en streng over på det mest hensigtsmæssige sted

At klippe en streng over på det mest hensigtsmæssige sted Denne guide er oprindeligt udgivet på Eksperten.dk At klippe en streng over på det mest hensigtsmæssige sted Formålet med denne artikel er at kaste lidt lys over, hvordan man klipper en streng over på

Læs mere

Programmering og Problemløsning, 2017

Programmering og Problemløsning, 2017 Programmering og Problemløsning, 2017 Martin Elsman Department of Computer Science University of Copenhagen DIKU September 27, 2017 Martin Elsman (DIKU) Programmering og Problemløsning, 2017 September

Læs mere

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Må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 mere

Skriftlig eksamen i Datalogi

Skriftlig 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 mere

Tredjepart webservices

Tredjepart webservices Tredjepart webservices 4. juni 2015 USS Dok. Klik her for at angive tekst. 1/12 Indholdsfortegnelse Introduktion... 3 Miljøer... 3 Adgang... 3 API kald... 4 GET: /authorizations... 4 Input 4 Output 4 Output

Læs mere

Boost Concept Check Library

Boost Concept Check Library Boost Concept Check Library Kasper Egdø and Konstantin Barkaia Department of Computer Science University of Copenhagen Boost Concept Check Library p.1/19 Eksempel #include #include int

Læs mere

Python programmering. Per Tøfting. MacFest

Python programmering. Per Tøfting. MacFest Python programmering MacFest 2005 Per Tøfting http://pertoefting.dk/macfest/ Indhold Måder at afvikle Python program på Variabler Data typer Tal Sekvenser Strenge Tupler Lister Dictionaries Kontrolstrukturer

Læs mere

Jeg har i forbindelse med it og programmering designet og udviklet et it-produkt, som kan beregne rødder i en anden gradsligning.

Jeg har i forbindelse med it og programmering designet og udviklet et it-produkt, som kan beregne rødder i en anden gradsligning. Indhold Beregn rødder... 2 Beskrivelse af kærneproblemet... 2 Plan for brugerfladen for programmet... 3 Operationer på inddata... 4 Output - Beskrivelse af uddata... 4 Flowchart - programmets logiske opbygning/struktur...

Læs mere

Introduktion til ActionScript, fortsat

Introduktion 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 mere

Kapitel 3 Betinget logik i C#

Kapitel 3 Betinget logik i C# Kapitel 3 i C# er udelukkende et spørgsmål om ordet IF. Det er faktisk umuligt at programmere effektivt uden at gøre brug af IF. Du kan skrive små simple programmer. Men når det bliver mere kompliceret

Læs mere

Specifikation Abstrakt OO OS-API Rev. 1.7. Specifikation. Abstrakt, objektorienteret operativsystem-api

Specifikation Abstrakt OO OS-API Rev. 1.7. Specifikation. Abstrakt, objektorienteret operativsystem-api Specifikation Abstrakt, objektorienteret operativsystem-api Indhold 1 Indledning... 3 1.1 Introduktion... 3 1.2 Formål... 3 1.3 Overordnede krav... 3 2 Ressourcer i OS-API et... 4 2.1 Tråde... 4 2.2 Timere...

Læs mere

Forelæsning Uge 2 Mandag

Forelæ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 mere

Lær Python dag 1 - modul 1

Lær Python dag 1 - modul 1 Lær Python dag 1 - modul 1 Introduktion, basis python Steffen Berg Klenow Jonas Bamse Andersen Syddansk Universitet Indhold 1. Velkommen 2. Programmering i python 3. Typer, variabler og udtryk 1 Velkommen

Læs mere

Kom godt igang med Inventar registrering

Kom godt igang med Inventar registrering Kom godt igang med Inventar registrering (InventoryDB) (Med stregkodesupport) programmet fra PetriSoft Introduktion... 1 Inventar registrering... 2 Værktøjsudleje... 3 Service database til reperationer

Læs mere

Scripting. Opslag til (Vol. D. Dahlerup. Bemærk. Anvendte bøger: "Sams. og proteiner.

Scripting. Opslag til (Vol. D. Dahlerup. Bemærk. Anvendte bøger: Sams. og proteiner. Bioinformatisk C++ Scripting i Xubuntu Vol. 2 Opslag til Dybdegående Bioinformatisk Scripting i Xubuntu 12.10 (Vol. 2) Henrik D. Dahlerup, Maj 2015 kontakt: henrik@ddahlerup.com Anvendte bøger: "Sams Publishing"-books.

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

DM507 Algoritmer og datastrukturer

DM507 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 mere

Introduktion til ActionScript

Introduktion 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 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

DDD Runde 2, 2015 Facitliste

DDD Runde 2, 2015 Facitliste DDD Runde 2, 2015 Facitliste Søren Dahlgaard og Mathias Bæk Tejs Knudsen Opgaver og løsninger til 2. runde af DDD 2015. 1 4. 19. februar, 2015 linetest DK v1.0 Line Test Sigurd er begyndt i gymnasiet og

Læs mere

SWC eksamens-spørgsmål. Oversigt

SWC eksamens-spørgsmål. Oversigt SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition

Læs mere

Eneste krav til C5 applikationen er således et frit udviklingslag. Se i øvrigt Tips og Tricks sidst i dokumentet.

Eneste krav til C5 applikationen er således et frit udviklingslag. Se i øvrigt Tips og Tricks sidst i dokumentet. Ver. 06.18 Standard versionen af C5 integrationen leveres i en udviklingslag BUS. Integrationen benytter sig IKKE af specielle tabeller, da integrationen udelukkende benytter standard C5 tabeller. Integrationen

Læs mere

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 5 28. september 2009 Indhold Programmer Variable Datatyper Kontrol strukturer Udtryk Assignments Operatorer I/O Eksempel Processen A 2 / 81 1 Introduktion og Kontrolstrukturer

Læs mere

DM507 Algoritmer og datastrukturer

DM507 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 mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Skoleåret 2016/17 Institution Hansenberg Gymnasium Uddannelse Fag og niveau Lærer Hold htx Programmering,

Læs mere

Forelæsning Uge 2 Mandag

Forelæ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 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

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003 Side 1 af 8 Dato: 14-05-2003 Til Sigurd Som aftalt vil jeg her fremsende vores program til vores 80C535 kit og display. Det gik jo ud på at vi skulle starte med at få den til at intialiserer displayet,

Læs mere

Objektorienteret Programmering

Objektorienteret Programmering Objektorienteret Programmering Struktureret Systemudvikling Jan Bendtsen Automation and Control Indhold Lidt om programmeringssprog Klasser i Java Klasser i C++ Oversættelse og kørsel af kode Et eksempel:

Læs mere

Programmering for begyndere Lektion 2. Opsamling mm

Programmering for begyndere Lektion 2. Opsamling mm Lektion 2 Opsamling mm God tone Der er indlagt spørge sessioner Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger

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

BRP Tal. Om computer-repræsentation og -manipulation. Logaritmer

BRP 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 mere

Integer.parseInt(args[0]) konverterer tegnstreng (f.eks. "10") til heltal (10). if (udtryk) else

Integer.parseInt(args[0]) konverterer tegnstreng (f.eks. 10) til heltal (10). if (udtryk) else Programmering 1999 Forelæsning 2, fredag 3. september 1999 Betingede ordrer: if-, if Indlejrede betingede ordrer Løkker med begrænset iteration: for Løkker med ubegrænset iteration: while Betingede ordrer,

Læs mere

Udvikling af DOTNET applikationer til MicroStation i C#

Udvikling af DOTNET applikationer til MicroStation i C# Udvikling af DOTNET applikationer til MicroStation i C# Praktiske tips for at komme i gang. Gunnar Jul Jensen, Cowi Hvorfor nu det? Mdl og Vba kan det hele Fordelene er : udviklingsmiljøet er eksternt

Læs mere

Noter til C# Programmering Selektion

Noter til C# Programmering Selektion Noter til C# Programmering Selektion Sætninger Alle sætninger i C# slutter med et semikolon. En sætning kontrollerer sekvensen i programafviklingen, evaluerer et udtryk eller gør ingenting Blanktegn Mellemrum,

Læs mere

DM507 Algoritmer og datastrukturer

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

Læs mere

Hanne Niels Edith Harald Carsten Jørgen Henrik.

Hanne Niels Edith Harald Carsten Jørgen Henrik. Programmering 1999 Forelæsning 18, fredag 5 november 1999 Anvendelse af udvalgssortering Quicksort Rapportopgave Programmering 1999 KVL Side 18-1 Eksempel 2 på anvendelse af udvalgssortering Sortering

Læs mere

DM507 Algoritmer og datastrukturer

DM507 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 mere

Integrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere

Integrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere Integrationsmanual Anvendelse af webservice til kursusoversigt i Campus Brugervejledning til udviklere Moderniseringsstyrelsen Webservice manual til udviklere 2016 1 1. Indholdsfortegnelse Nyt kapitel

Læs mere

Undtagelseshåndtering i C#

Undtagelseshåndtering i C# Denne guide er oprindeligt udgivet på Eksperten.dk Undtagelseshåndtering i C# I modsætning til C++ kan man i C# ikke skrive et program uden undtagelseshåndtering, så derfor har jeg skrevet denne guide

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

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

Forelæsning Uge 2 Mandag

Forelæ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 mere

Noter til C# Programmering Iteration

Noter til C# Programmering Iteration Noter til C# Programmering Iteration Programflow Programmer udfører det meste af deres arbejde vha. forgrening og løkker. Løkker Mange programmeringsproblemer kan løses ved at gentage en handling på de

Læs mere

Indledning. 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. 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 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

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

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

Aftenskole i programmering sæson Flere registreringer. Sæson 2 - Lektion 8

Aftenskole i programmering sæson Flere registreringer. Sæson 2 - Lektion 8 Flere registreringer Sæson 2 - Lektion 8 I sidste uge Vi så hvordan vi kan navigere med en UINavigationController Vi så hvordan vi lavede nogle hjælpe klasser med funktioner vi skulle bruge flere steder

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

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),

Læs mere

DM507 Algoritmer og datastrukturer

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

Læs mere

Kapitel 4 Løkker i C#

Kapitel 4 Løkker i C# Kapitel 4 Løkker i C# Løkker en vigtig del af alle programmeringssprog, og C# er ikke andeles. En løkke er en måde at udføre en del af koden gentagne gange. Ideen er at du fortsætter med at udføre en 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

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2017 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 6. april, 2017 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Lær Python - Dag 4, modul 2 Objektorienteret programmering

Lær Python - Dag 4, modul 2 Objektorienteret programmering Lær Python - Dag 4, modul 2 Objektorienteret programmering Simon J. Larsen 28. oktober 2017 Institut for Matematik og Datalogi Metoder Metoder Indtil videre har vi kun brugt objekter til at gemme værdier.

Læs mere

Sekvenser af længde mellem 1 og 4 ord repræsenteres ved en klasse Segment, som uden grundlæggende ser således ud:

Sekvenser af længde mellem 1 og 4 ord repræsenteres ved en klasse Segment, som uden grundlæggende ser således ud: Besvarelse af opgave til formuleret til øvelserne 10. september 2002 Datastrukturer og algoritmer Henning Christiansen 22/9-2002 Følgende er ikke en eksakt besvarelse af opgaven, idet den benytter hashtabeller

Læs mere

Plugin-arkitektur med.net

Plugin-arkitektur med.net Denne guide er oprindeligt udgivet på Eksperten.dk Plugin-arkitektur med.net Denne artikel viser hvordan du kan lave en plugin-arkitektur i dit program. Gør det muligt for andre at skrive udvidelser til

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2012 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 15. marts, 2012 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere