Introduktion til programmering. Uge 36 Intro Kap 0 og 2 i Computer science

Størrelse: px
Starte visningen fra side:

Download "Introduktion til programmering. Uge 36 Intro Kap 0 og 2 i Computer science"

Transkript

1 Introduktion til programmering Uge 36 Intro Kap 0 og 2 i Computer science

2 Plan Personer og kompetencer Studieportalen Kususplan Formål Eksamen Computerens historie Computeren som tegnbærer. Maskinarkitektur Python

3 Personer og kompetencer Forelæsninger: Peter Bøgh Andersen Professor i Informationsvidenskab pba@imv.au.dk Kontor: Wiener bygningen, 1 sal Har arbejdet med computeren som medium i 20 år og anvendt mange programmeringssprog (Algol, Simula, Pascal, C++, Hypertalk, Lingo) Startede med Python for et par år siden Arbejder forskningsmæssigt med simuleringer: hvordan kan man buge IT til at gøre folk klogere? Øvelser og terminaltimer Peter B. Vahlstrup Informationsvidenskab Afleverede den bedste multimedieproduktion jeg har set peter@vahlstrup.com

4 AULA Fælles netportal for uddannelser ved Århus Universitet Opret jer som brugere af aula Tilmeld jer til Introduktion til programmering(ito) Adgang til semesterplanen Fra Aula: et link til Direkte: Indeholder en kursusplan Hvad skal læses til hver gang? Pds-filer der kan downloades: Øvrig litteratur Programmer Øvelsesopgaver til onsdag eftermiddag.

5 Kursusplanen Emne Litteratur Øvelser Kan downloades

6 Kursusplan I 3/9 Kursets struktur, IT-teknologiens historie, Modellering, Maskinarkitektur Databaser Python 10/9 Relationelle databaser, ER-diagrammer, normalisering 17/9 SQL databaser 24/9 Python I: værdier, tildelinger og sammenligninger, dynamiske typer, string, list, tupler, filer 1/10 Python II: sætninger, udtryk, sandhedsværdier, kontrolstrukturer, funktioner, kommentarer 8/10 Web-sider. Uge 42: Efterårsferie

7 Kursus plan II Python 22/10 Netværk og operativsystemer 29/10 Algoritmer og datastrukturer, korrekthed, kompleksitet, søgning, iteration, rekursion 5/11 Formelle sprog, historik, procedurale, funktionelle (lambda, apply), objektorienterede og, logiske sprog, grammatik, compilering og fortolkning 12/11 UML 19/11Moduler og objekter i Python Web-programmering 26/11 CGI Slutspurt 3/12 Afslutning

8 Formål I Introducere nogle centrale værktøjer og teknikker i arbejdet med computeren som medie. Specielt vil der være en introduktion til programmering Introducere til analyse og modellering af data.. Basale principper vedr. computerens opbygning og funktion, samt til programmering og databaser. Del-og-hersk metoden. Teknikker og metoder, der vil bringe sammenhæng mellem teori og praksis. De basale principper er den robuste del. Python dør på et tidspunkt. Men Principperne kan ikke forstås uden handson praksis!

9 Opgaver De fleste opgaver behandler dele af det system I skal lave til jul

10 Opgaver 1. ER-diagram. Gruppe. Afleveres 17/9 2. SQL database Gruppe. Afleveres 24/9 3. CPR-nummer.Individuel. Afleveres 1/10 4. CPR-nummer. Individuel 8/10 5. Fremvisning af resultatet af databaseforspørgsler som en html-tabel. Individuel 22/10.6. Brug af netværk og MySQLdb. Individuel 19/10 7. Avancerede sql-kald Individuel 29/10 8. Rekursion Individuel 5/11 9. Klasser, objekter og sql-tabeller. Individuel 19/11 Semesteropgave. Gruppe. Aflevering af samlet system 20/12.

11 Computerens historie Kap 0 i Computer science

12 I store linjer. Computeren som automat og talknuser (1945 ) Computeren som værktøj (1975-) Computeren som medium (1990-) Computeren som omgivelse (2000-) pervasive computing

13 Charles Babbage Konstruerede en general purpose computer i 1830 erne Analytical engine (dampdrevet) Bestod af 5 dele: The store (hukommelsen) The Mill (regneenheden) The Input The output abbage!

14 John von Neumann Von Neumann arkitektur, 1945 Aritmetisk-logisk enhed Kontrolenhed Hukommelse Både data og program In/output Bus, dataveje

15 Allan Turing Udgangspunkt i Hilberts Entschidungsproblem Findes der en metode eller proces, med hvilken det kan afgøres om en given matematisk proces kan bevises? En mekanisk metode En maskine der kunne udføre denne metode - Turingmaskinen

16 Anden verdenskrig Kodebrydning Tyskernes Enigmamaskine (mekanisk) Turing som kodebryder

17 Fra Mainframe til PC Mark I 1944 ENIAC 1950 Electrical Numerical Integrator and Computer Personlig computer 1976 Apple, Steve Jobs & Stephen Wozniak hobbyfolket

18 Computeren som tegnbærer Kap 0 i Computer Science

19 Peirce s tegnbegreb I lettere vulgær udformnin Interpretant Vane eller regel: trafikreglerne Reaktion: kør eller brems Umiddelbart indtryk: farvenuancer Repræsentamen Et trafiklys: grøn, gul, rød Objekt Kør, giv agt, stands

20 Computerbaserede tegn Interfacetegn: angiver hvad man har gjort, kan gøre, og ikke kan gøre Modalitet: er tilfældet, er muligt, er umuligt Repræsentamen + Kant, +farver, - kant, + farver - kant, - farver Interpretant Vane eller regel: interfacestandard Reaktion: klik eller ikke klik Umiddelbart indtryk: farvenuancerne Objekt: operationen er Valgt Kan vælges Kan ikke vælges

21 Menneskelig tegndannelse Interpretant Anvendelsesområdet (brugen) Interpretant Registrere salg og indkøb Repræsentamen systemet Objekt problemområdet Repræsentamen Lagerstyringssystem Objekt Lager

22 Maskinel tegndannelse Interpretant udførelse >>> def helloworld(): print 'hello world' >>> helloworld <function helloworld at 0x016F2530> Repræsentamen Navne i Python Objekt dataobjekt Interpretant Print Hello World >>> helloworld() hello world helloworld() s interpretant er at udføre det objekt navnet helloworld repræsenterer () betyder at Python skal fortolke objektet som en proces og udføre den Repræsentamen helloworld Objekt 0x00F46230 >>> x = 1 >>> x 1 X s interpretant er at fremfinde det objekt X repræsenterer

23 Maskinel tegndannelse Opsummering: Python-navne repræsenterer altid objekter Interpretanten består i at udføre objektet hvis det er udførbart; ellers i at fremfinde objektet

24 Databaser firstname lastname address city gender phone insurance hasfather hasmother hasdoctor Jeppe Boegh Lotte Boegh Andersen Andersen Thorsgade 20 Thorsgade 20 Stine Jacobsen Thorsgade dreng Baltica pige Baltica pige baltica

25 OO modellering Repræsenterer En klassifikation af ting i problemområdet En definition af handlinger i problemområdet Forskel på menneskelig og maskinenel interpretant Et hospitalssystem Mennesket: en patient overføres fra medicinsk til kirurgisk afdeling Systemet: en patient udskrives fra medicinsk og indlægges på kirurgisk afdeling

26 OO modellering class Person: def init (self,name,address, cpr): self.name = name self.address = address self.cpr = cpr def changename(self, newname): self.name = newname def changeaddress(self,newcpr): self.cpr = newcpr def printperson(self): print 'cpr = '+ self.cpr print 'name = '+ self.name print 'address = '+ self.address class Patient(Person): def init (self,name,address,cpr): Person. init (self,name,address, cpr) self.ward = '' self.hospital = '' def admit(self,ward, hospital): if self.ward == '': self.ward = ward self.hospital = hospital else: print self.name + ' is already admitted' def discharge(self): if self.ward!= '': self.ward = '' self.hospital = '' else: print self.name + ' is not admitted yet' def printpatient(self): self.printperson() print 'ward = ' + self.ward print 'hospital = ' + self.hospital

27 OO Modellering >>> from semiotik import * >>> patient = Patient('Karl','Vestergade 10',' ') >>> patient.admit('p5','skejby') >>> patient.printpatient() cpr = name = Karl address = Vestergade 10 ward = P5 hospital = Skejby >>> patient.admit('p6','skejby') Karl is already admitted >>> patient.discharge() >>> patient.admit('p6','skejby') >>> patient.printpatient() cpr = name = Karl address = Vestergade 10 ward = P6 hospital = Skejby

28 OO Modellering Interpretant Holde systemet ajour med problemområdet Repræsentamen Patient Admit Ward Objekt En patient Indskrive patient Den afdeling der har ansvaret for patienten

29 Konsekvenser af synspunktet IT-systemer er fortolkninger af virkeligheden De anlægger et bestemt perspektiv Kode har altid tre interpretanter: Hvad maskinen skal gøre når den eksekverer koden Hvad udvikleren har til hensigt koden skal repræsentere i problemområdet Den måde brugeren fortolker en udførelse på. Det gælder om at de tre fortolkninger ikke er i modstrid men det er svært

30 Algoritmer Programmørens opfattelse En algoritme er en sekvens af entydige udførbare trin som definerer en proces der ender med et resultat Et program kan være et tegn der repræsenterer en algoritme. En algoritme kan repræsenteres af mange forskellige programmer Et program realiseres i mange forskellige typer af materiale Elektronisk: en file eller RAM Papir: en brugsanvisning Lyd: en mundtlig instruktion

31 Muslingetilberedning for mennesker Så længe der er muslinger i spanden: Tag en musling op af spanden Hvis muslingen er lukket så: Smid den i gryden Ellers: Smid den i affaldsposen Kog muslingerne i 5 min Så længe der er muslinger i gryden Tag en musling op af gryden Hvis muslingen er åben så: Læg den på fadet Ellers: Smid den i skraldespanden

32 Muslingetilberedning for maskiner (Python) # Spanden indeholder muslinger. 0 betyder lukket, 1 betyder åben spand = [1,0,0,1,0,1,0,0] # gryde og affaldspose er tomme i starten gryde = [] affaldspose = [] # sålænge der er muslinger i spanden while spand <> []: # tag en musling op enmusling = spand[0] del spand[0] # hvis muslingen er lukket if enmusling == 0: #så smide den i gryden gryde.append(enmusling ) # ellers else: #smid den i affaldsposen affaldspose.append(enmusling ) Kommentarer til menneskelig fortolkning

33 Tegndannelses Maskinens handlinger og tilstande repræsenterer virkelige handlinger og tilstande i problemområdet for brugerne og programmøren Repræsentation [1,0,0,1,0,1,0,0] [] spand <> []: enmusling = spand[0] del spand[0] Virkeligt Objekt En spand med muslinger En tom gryde Spanden er ikke tom Tag en musling op af spanden

34 Sammenligning Samme algoritme, forskellige programmer Menneskelig versus maskinel fortolker Computerprogrammer skal læses af både mennesker og maskiner Kommentarer Interpretanten er under forhandling ved menneskelige fortolkere, ikke ved maskinelle Alle laver fejl når de programmerer. Lær at læse en fejlmeddelelse og at finde fejlen. Naturlige sprog udvikler sig kontinuerligt Computersprog er stabile i perioder og udvikler sig i versioner (Python 2.4) Abstraktion Indkapsling Muslinger er repræsenteret ved én egenskab: lukket eller åben En muslingesorteringsautomat kan arbejde selv og vi behøver ikke forstå hvordan den bærer sig ad, kun hvordan den skal betjenes

35 Fejlmeddelser >>> def findaarstal(cpr): return cpr[0:6] >>> findaarstal(' ') '311245' >>> findaarstal( ) Traceback (most recent call last): File "<pyshell#16>", line 1, in <module> findaarstal( ) File "<pyshell#14>", line 2, in findaarstal return cpr[0:6] TypeError: 'long' object is unsubscriptable

36 Hvad betyder det? Et program kan repræsentere Det område programmet handler om ( problemområdet ) Men også Et andet program En del af den fysiske computer Muslingeprogrammet repræsenterer problemområdet, dets genstande og begivenheder. Repræsentamen Muslingeprogrammerne Interpretant 1. Python 2. Tolkningsregler Objekt Problemområdet (muslinger, beholdere, tage op, lægge i)

37 Hvad betyder det? Databaser repræsenterer hændelser, tilstande, personer, ting og strukturer i organisationen. Forbindelse til organisationsanalyse

38 Maskinarkitektur Kap 2 i Computer Science

39 Computerens opbygning Gemme operation

40 Binær kode Maskinens sprog som den reagerer fysisk på

41 Binærkode Load R1 C1 Kopier indholdet af celle C1 ind i register R1 Load R1 B Kopier bitmønstret B ind i register R1 Store R1 C1 Gem indeholdet af R1 i celle C1 Add R1 R2 R3 Adder indeholdet af registre R2 og R3 og gem resultatet i R1 Jump R1 C1 Hvis indholdet af R1 er 0, så hop til den instruktion som er gemt i celle C1, dvs sæt programtælleren til at referere til denne celle. Ellers fortsæt med næste instruktion.

42 Repræsentationer 1, 4. Programtælleren repræsenter den celle hvor næste instruktion ligger 2-3. Man kan referere til en værdi ved at referere til den celle der indeholder værdien. 00 repræsenterer da værdien Men man kan også gøre det indirekte ved at referere til en celle der refererer til den celle der indeholder værdien. 00 repræsenterer da værdien 45

43 Maskinel tegndannelse Et program kan referere til sig selv Selv-reference er hemmeligheden bag ITteknologien Interpretant Udførelse af en flytning af data fra C1 til R1 eller dele af den fysiske maskine Repræsentamen Load R1 C1 Objekt Indholdet af celle C1 Registret R1 Flytning af data

44 Pythons referencer Hvordan refererer Python? a = [1,2,3,4] b = a Direkte? I så fald burde b ikke påvirkes hvis vi ændrer på a

45 Pythons referencer a = [1,2,3,4] b = a Indirekte? I så fald burde b ændre sig hvis a gør det.

46 Python refererer indirekte Python refererer til objekter >>> a = [1,2,3,4] >>> b = a >>> del a[2] >>> a [1, 2, 4] >>> b [1, 2, 4]

47 Maskincyclussen Gentag indtil stop Hent næste instruktion fra lageret, læg det i instruktionsregistret og forøg programtælleren Dekod bitmønstret i instruktionsregistret Udfør handlingen som instruktionsregistret repræsenterer

48 Assembler Samme som maskinsprog, men med mnemotekniske forkortelser LD R5, Pris LD R6, Skat ADD R0, R5, R6 ST R0, Ialt HLT Problem: programmet handler om maskinens fysiske dele: Store R1 C1 eller om programmet selv: Jump R1 C1 Det er svært at tolke programmet som en repræsentation af problemområdet

49 Problemet Maskinkode er svær at tolke som andet end fysiske processer i maskinen Men vi er interesserede i om den repræsenterer hændelser i problemområdet korrekt!

50 Høj-niveausprog Alle programmeringssprog med et højere abstraktionsniveau end assembler kaldes højniveausprog. Algol, Simula, Pascal, C++, Java, Basic, Smalltalk, Lingo. Python Disse sprog er lettere at tolke som udsagn om problemområdet Nemmere at finde fejl Nemmere at forstå hvad programmet gør

51 Muslingeprogrammet igen Muslingeprogrammet kan tolkes som udsagn om hvordan man tillaver muslinger givet bestemte tolkningsregler spand = [1,0,0,1,0,1,0,0] #spand = en spand med muslinger gryde = [] #den gryde vi vil kode muslingerne i affaldspose = [] #den affaldspose vi smider de dårlige muslinger i while spand <> []: # spanden er ikke tom enmusling = spand[0] # tag en musling op del spand[0] if enmusling == 0: #muslingen er lukket gryde.append(enmusling ) #læg den i gryden else: affaldspose.append(enmusling ) #læg den i affaldspose

52 Muslingeprogrammet igen igen Tolkningsregler En liste tolkes som en kontainer EN tom liste tolkes som en tom kontainer 0,1 tolkes som muslinger i en bestemt tilstand Enmusling tolkes som den musling jeg har i hånden Slettelse af et element fra en liste tolkes som det at tage noget op af en kontainer Tilføjelse af et element til en liste tolkes som det at lægge noget ned i kontaineren. Interpretant Sprogets semantik + tolkningsregler Repræsentamen Høj-niveausprog Objekt Objekter og hændelser i anvendelsesområdet

53 Tolkning er central Maskinen tolker et program som instruktioner om at skifte tilstand Programmøren tolker et program som Instruktioner til maskinen om at skifte tilstand En beskrivelse af genstande og hændelser i problemområdet Brugeren tolker en programudførelse som en beskrivelse af genstande og hændelser i problemområdet

54 Kompilering En compiler er et program der læser et andet program og producerer assembler kode Udnytter at program og data er af samme slags (von Neumann) Assemblerkode oversættes til maskinkode og sættes sammen med forskellige hjælpefiler (linkning) til objektkode. Objektkoden kan tolkes og udføres af den mikrokodede processor.

55 Kompilering De forskellige interpretanter (af regeltypen) udgøres selv af udførbare programmer Interpretant, repræsentamen og objekt kan alle være programmer Analogi: Jeg køber et samlesæt med en fransk brugsanvisning (text) Jeg køber en fransk-dansk ordbog (text) Jeg oversætter brugsanvisningen (text) til dansk ved hjælp af den franske ordbog (text) Jeg oversætter den danske version til handlinger ved hjælp af mit kendskab til dansk Interpretant: Compilerens regler Interpretant: Linkerens regler Interpretant Processorens regler Repræsentamen Objekt Repræsentamen Objekt Repræsentamen Objekt Program Assembler Objektkode Databehandlingsprocesser

56 Programmer der laver programmer def lavprogram(navn): return 'def hello():\n\tprint "' + navn + '"\n' + 'hello() etprogram = lavprogram('peter') print etprogram def hello(): print "Peter" hello() exec etprogram Peter

57 Pjat? Eksemplet kan forekomme pjattet. Men: Hele IT-teknologien hviler på denne tryllekunst Eksempel: dynamiske web-sider som I selv kommer til at lave.

58 En symbolbehandlende maskine Tekster der repræsenterer tekster ved hjælp af tekster!!! Web-programmering

59 En python tekst der laver en html-tekst def makestart(): return '' <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>untitled Document</title> <meta http-equiv="content-type" content="text/html; charset=iso "> </head> <body>\n''' def makeending(): return '' </body> </html>'''

60 Dele af den producerede htmlkode <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>untitled Document</title> <meta http-equiv="content-type" content="text/html; charset=iso "> </head> <body> <table width="75%" border="1"> <tr> <td>cpr</td> <td>firstname</td> <td>lastname</td> <td>address</td> <td>city</td> <td>gender</td> <td> </td> <td>phone</td> <td>insurance</td> <td>hasfather</td> <td>hasmother</td> <td>hasdoctor</td> </tr> <tr>. <tr> <td> </td> <td>stine</td> <td>jacobsen </td> <td>thorsgade 20</td> <td>8410</td> <td>pige</td> <td></td> <td> </td> <td>baltica</td> <td></td> <td> </td> <td> </td> </tr> </table> </body> </html>

61 Html-koden repræsenterer en webside når den fortolkes af en browser

62 Tekster der refererer til tekster

63 Fortolkning Fortolkere er programmer der læser højniveauprogrogrammer og udfører dem (oversætter dem evt. til objektkode, kaldet JIT, just in time) Skriptsprog som Python, Hypercard, Lingo, LISP. Interpretant: Fortolker Repræsentamen Program Objekt Databehandlingsprocesser

64 Python Python er et fortolket sprog der kan afvikles på (næsten) alle maskiner Windows, Mac, UNIX, Palm, etc Udbredt som scriptsprog til fremstilling af hjemmesider, men er et komplet programmeringssprog til alle typer af udvikling Google er skrevet i Python

65 Databaser Første øvelsestime bruges til en introduktion til en SQL-server. Fakultetets server er desværre ustabil. Derfor vil Peter installere en sql-server på jeres maskiner. Hvis fakultetsserveren er oppe: hvordan man opretter sig. Prøve at lave nogle simple tabeller til næste uge.

Introduktion til programmering. Intro

Introduktion til programmering. Intro Introduktion til programmering Intro Plan Personer og kompetencer Studieportalen Kususplan Formål Eksamen Computerens historie Computeren som tegnbærer. Maskinarkitektur Python Personer og kompetencer

Læs mere

Uge 36 Intro Kap 0 og 2 i Computer science

Uge 36 Intro Kap 0 og 2 i Computer science Uge 36 Intro Kap 0 og 2 i Computer science Plan Personer og kompetencer Aula Kususplan Formål Eksamen Computerens historie Computeren som tegnbærer Algoritmer hvad består et program af Maskinarkitektur

Læs mere

Introduktion til programmering. Afslutning

Introduktion til programmering. Afslutning Introduktion til programmering Afslutning Hovedideen Peirce s tegnbegreb Repræsentamen, objekt og interpretant Computerbaserede tegn Interfacetegn: angiver hvad man har gjort, kan gøre, og ikke kan gøre

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

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16,

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, Klasser og Objekter i Python Uge 46 Learning Python: kap 15-16, 19-22. Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. En kage form Klassens

Læs mere

Introduktion til programmering. Uge 38.1 Python 2 Learning Python, kap 8-12.

Introduktion til programmering. Uge 38.1 Python 2 Learning Python, kap 8-12. Introduktion til programmering Uge 38.1 Python 2 Learning Python, kap 8-12. Opsummering Store dele af Python kan forstås gennem følgende simple model: En repræsentation/udtryk står for et objekt/en værdi

Læs mere

Programmeringscamp Opbygning og specialisering af klassehierarki. Simulering af en kasselinje

Programmeringscamp Opbygning og specialisering af klassehierarki. Simulering af en kasselinje Programmeringscamp Opgave 9 var helt tydeligt for svær det var imponerende at 7 faktisk afleverede! Vi bruger uge 48 til at gå lidt grundigere igennem objektorienteret programmering, specielt teknikken

Læs mere

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Øvelse 9. Klasser, objekter og sql-tabeller insert code here Øvelse 9. Klasser, objekter og sql-tabeller Denne opgave handler om hvordan man opbevarer data fra databasekald på en struktureret måde. Den skal samtidig give jer erfaringer med objekter, der kommer til

Læs mere

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, 19-22.

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, 19-22. Klasser og Objekter i Python Uge 46 Learning Python: kap 15-16, 19-22. Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. En kage form Klassens

Læs mere

Programmering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen

Programmering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen Programmering Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen Oversigt Undervisningen Hvad er programmering Hvordan er et program organiseret? Programmering og fysik Nobelprisen

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

Computerarkitektur. - en introduktion til computerarkitektur med LINDA

Computerarkitektur. - en introduktion til computerarkitektur med LINDA Computerarkitektur - en introduktion til computerarkitektur med LINDA faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig

Læs mere

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output...

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... Indhold Maskinstruktur... 3 Kapitel 1. Assemblersprog...3 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... 9 Kapitel 2. Maskinkode... 13 2.1 Den fysiske maskine... 13 2.2 Assemblerens

Læs mere

Rolf Fagerberg. Forår 2015

Rolf Fagerberg. Forår 2015 Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software

Læs mere

Introduktion til DM507

Introduktion til DM507 Introduktion til DM507 Rolf Fagerberg Forår 2017 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA Forskningsområde: algoritmer og datastrukturer 2 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA

Læs mere

Rolf Fagerberg. Forår 2013

Rolf Fagerberg. Forår 2013 Forår 2013 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM536 og DM537 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM536 og DM537 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

PHP guide af Daniel Pedersen

PHP guide af Daniel Pedersen PHP guide af Daniel Pedersen Side 1 af 12 Indholdsfortegnelse PHP guide af Daniel Pedersen Side 2 af 12 Indledning I dette hæfte finder du forklaringer til PHP funktioner, løkker, variabler samt en række

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Introduktion til kurset Rolf Fagerberg Forår 2019 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, Institut for Matematik og Datalogi (IMADA) Forskningsområde: algoritmer

Læs mere

Aptana editor til MAC og Windows

Aptana editor til MAC og Windows 1 Aptana editor til MAC og Windows http://aptana.com/products/studio3/download For at downloade Mac versionen skal du klikke på : Customize Your Download og der efter klikke på MAC OS X. Indtast navn og

Læs mere

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database Øvelse 10. Dynamiske web-sider og cgi-modulet I denne opgave skal vi bygge de foregående opgaver sammen til en mini-udgave af det samlede system I skal aflevere til vintereksamen. klient Forespørgsel/

Læs mere

Rolf Fagerberg. Forår 2015

Rolf Fagerberg. Forår 2015 Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software Engineering BA i Matematik-Økonomi BA i Anvendt Matematik BA

Læs mere

Introduktion til programmering

Introduktion til programmering Introduktion til programmering Databaser Uge 37 Computer Science, kap 9. Hugh Darwen: what a database really is, G. Riccardi: Princples of database systems, kap 2., kompendium. Plan Oprette jer på IMV

Læs mere

Rolf Fagerberg. Forår 2012

Rolf Fagerberg. Forår 2012 Forår 2012 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM502 og DM503 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM502 og DM503 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

It og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen. Beregning på computer

It og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen. Beregning på computer It og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen Beregning på computer Begrebet data Universel computer Højere programmeringssprog Python Dialogdrift Fejl (syntaksf., udførelsesf.,

Læs mere

Lærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen

Lærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Lærevejledning - en introduktion til maskinarkitektur faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig Basisuddannelse

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

Rolf Fagerberg. Forår 2014

Rolf Fagerberg. Forår 2014 Forår 2014 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: Format: Programmering og Diskret matematik I (forelæsninger), TE (øvelser), S (arbejde selv og i studiegrupper) Eksamenform: Skriftlig

Læs mere

Introduktion til programmering. Uge 37 Python I Learning Python, kap 4-7.

Introduktion til programmering. Uge 37 Python I Learning Python, kap 4-7. Introduktion til programmering Uge 37 Python I Learning Python, kap 4-7. Plan Sidste gang Hvad er et Python program Udtryk Værdier og Datatyper Filer Første obligatoriske øvelse Sidste gang Computerens

Læs mere

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database Øvelse 12. Dynamiske web-sider og cgi-modulet Teori: CGI Øvelse: anvendelse af cgi-modulet. I denne opgave skal vi bygge de foregående opgaver sammen til en mini-udgave af det samlede system I skal aflevere

Læs mere

PHP Crash course. Databaser

PHP Crash course. Databaser PHP Crash course Databaser PHP Intro PHP er et server scripting sprog der kan bruges til at lave aktivt indhold på hjemme sider. Der er to betingelser som skal opfyldes for at serveren fortolker PHP koden.

Læs mere

Programmering I Java/C#

Programmering I Java/C# Programmering I Java/C# Dit første projekt Datatekniker Intro to C# C# (C Sharp) Et enkelt, moderne, generelt anvendeligt, objektorienteret programmeringssprog Udviklet af Microsoft, ledet af danskeren

Læs mere

Bits DM534. Rolf Fagerberg, 2012

Bits DM534. Rolf Fagerberg, 2012 Bits DM534 Rolf Fagerberg, 2012 Resume af sidst Overblik over kursus Introduktion. Tre pointer: Datalogi er menneskeskabt og dynamisk. Tidslinie over fremskridt mht. ideer og hardware. Algoritme er et

Læs mere

Introduktion til C programmering

Introduktion til C programmering Introduktion til C programmering Rasmus Erik Voel Jensen Uge 17 voel@math.ku.dk Dagens forelæsning Formalia Indledende programmering, main, include, printf, variable, scanf, if-else, statements, eksempler

Læs mere

Maskinarkitektur. Lars Kristensen kris@daimi.au.dk. Christian Storm cstorm@daimi.au.dk. dmasark 1

Maskinarkitektur. Lars Kristensen kris@daimi.au.dk. Christian Storm cstorm@daimi.au.dk. dmasark 1 Maskinarkitektur Lars Kristensen kris@daimi.au.dk Christian Storm cstorm@daimi.au.dk dmasark 1 Praktiske oplysninger http://www.daimi.au.dk/dmasark dmasark 2 Forelæsninger Tirsdag 12.15-14.00, Store Aud,

Læs mere

2. Husk at give execute-tilladelser. I Filezilla højreklikker I på den overførte file, så vælger I fileattributes og sætter kryds i execute.

2. Husk at give execute-tilladelser. I Filezilla højreklikker I på den overførte file, så vælger I fileattributes og sætter kryds i execute. Øvelse 10. Dynamiske web-sider og cgi-modulet I denne opgave skal vi bygge de foregående opgaver sammen til en mini-udgave af det samlede system I skal aflevere til vintereksamen. I får udleveret et lille

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

Test af It-komponent

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

Web 2.0. World Wide Web (www)

Web 2.0. World Wide Web (www) Web 2.0 World Wide Web (www) I marts 1989 skrev Tim Berners-Lee et information udveksling program kaldt ENQUIRE. Da han arbejde i CERN, var han ikke tilfreds med kommunikationen, derfor videreudviklede

Læs mere

Dat 2/BAIT6/SW4: Syntaks og semantik En manual for studerende

Dat 2/BAIT6/SW4: Syntaks og semantik En manual for studerende Dat 2/BAIT6/SW4: Syntaks og semantik En manual for studerende Hans Hüttel Foråret 2011 Indhold Indhold 1 1 Kurset er lavet om! 1 2 Kursets indhold 2 2.1 Kursets emner................................ 2

Læs mere

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

PHP 3 UGERS FORLØB PHP, MYSQL & SQL PHP 3 UGERS FORLØB PHP, MYSQL & SQL Uge 1 & 2 Det basale: Det primære mål efter uge 1 og 2, er at få forståelse for hvordan AMP miljøet fungerer i praksis, og hvordan man bruger PHP kodesproget til at

Læs mere

Klasser og Objekter i Python. Uge 11

Klasser og Objekter i Python. Uge 11 Klasser og Objekter i Python Uge 11 Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. Klassens objekter er instanser af klassen. En programudførelse

Læs mere

Kom godt i gang med Fable-robotten

Kom godt i gang med Fable-robotten Kom godt i gang med Fable-robotten 1. Først skal du installere programmet på din computer. Gå ind på shaperobotics.com og under support vælger du download: Her vælger du, under PC App om du kører Windows

Læs mere

Programmeringscamp. Implementer funktionerne én for én og test hele tiden.

Programmeringscamp. Implementer funktionerne én for én og test hele tiden. Programmeringscamp De to opgaver træner begge i at lave moduler som tilbyder services der kan bruges af andre, samt i at implementere services efter en abstrakt forskrift. Opgave 1 beder jer om at implementere

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

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

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

Start på programmering (IT-hæfter fra Libris)

Start på programmering (IT-hæfter fra Libris) Start på programmering (IT-hæfter fra Libris) Greg Perry Pris Bøger: Start på programmering (IT-hæfter fra Libris) pdf - (KR 0.00); Start på programmering (IT-hæfter fra Libris) fb2 - (KR 0.00); Start

Læs mere

Programmering i C. Kursusintroduktion. Lektion september Målgruppe 2 Indhold 3 Form 4 Materiale. Målgruppe Indhold Form Materiale

Programmering i C. Kursusintroduktion. Lektion september Målgruppe 2 Indhold 3 Form 4 Materiale. Målgruppe Indhold Form Materiale Programmering i C Lektion 1 16. september 2008 Målgruppe Indhold Form Materiale Kursusintroduktion 1 Målgruppe 2 Indhold 3 Form 4 Materiale 2 / 21 Målgruppe Indhold Form Materiale Folk der har styr på

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

Fable Kom godt i gang

Fable Kom godt i gang Fable Kom godt i gang Opdateret: 26-03-2018 Indholdsfortegnelse 1. Først skal du installere programmet på din computer 3 2. Når programmet er installeret er du klar til at pakke robotten ud 4 3. Nu er

Læs mere

JSP, Tomcat. Tutorial lavet af Jákup W. Hansen TSU semester 10.october 2007

JSP, Tomcat. Tutorial lavet af Jákup W. Hansen TSU semester 10.october 2007 JSP, Tomcat Tutorial lavet af Jákup W. Hansen TSU 2006 3.semester 10.october 2007 Hvad er JSP(Java Server Pages): Det er en teknik som er bygget ovenover Servlets teknikken, men fidusen er at det skal

Læs mere

Introduktion til programmering. UML, Uge 45 Computer science, kap 7, særl. 7.4 og 7.5. Martin Fowler: UML distilled, kap. 3. Addision-Wesley, 2004.

Introduktion til programmering. UML, Uge 45 Computer science, kap 7, særl. 7.4 og 7.5. Martin Fowler: UML distilled, kap. 3. Addision-Wesley, 2004. Introduktion til programmering UML, Uge 45 Computer science, kap 7, særl. 7.4 og 7.5. Martin Fowler: UML distilled, kap. 3. Addision-Wesley, 2004. Diagrammer Diagrammer er visuelle fremstillinger af beskrivelser

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

Curriculum Vitae for Per Odderskov.

Curriculum Vitae for Per Odderskov. Curriculum Vitae for Per Odderskov. Demografiske data Navn: Per Odderskov Bopæl: Nedergårds Alle 5, 8200 Århus N Født: 1957 Civil stand: Gift Nationalitet: Dansk Resume Jeg har en mangeårig baggrund som

Læs mere

Perspektiverende Datalogikursus

Perspektiverende Datalogikursus Perspektiverende Datalogikursus Algoritmer og kompleksitet Gerth Stølting Brodal 1 Perspektiverende kursus Formål: Vise bredden af Datalogi. Vise fagets anvendelighed. Vise konkrete eksempler på hvad datalogi

Læs mere

Introduktion til programmering. Uge 38 Python 2 Learning Python, kap 8-12.

Introduktion til programmering. Uge 38 Python 2 Learning Python, kap 8-12. Introduktion til programmering Uge 38 Python 2 Learning Python, kap 8-12. Plan Sidste gang Sætninger og udtryk Kontrolstrukturer Selektion If : Gentagelse While : For : Funktioner Dokumentation Anden obligatoriske

Læs mere

JavaScript. nedarvning.

JavaScript. nedarvning. JavaScript er et sprog, der kan give en hjemmeside mere funktionalitet og gøre den interaktiv, så den reagerer på læsernes handlinger. CGI (Common Gateway Interface) har hidtil været de protokoller, man

Læs mere

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004 Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen torsdag den 3. juni 2004 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes

Læs mere

Introduktion til programmering. Programmeringssprog Uge 44 Computer Science, kap 6. Learning Python: kap 13, 14.

Introduktion til programmering. Programmeringssprog Uge 44 Computer Science, kap 6. Learning Python: kap 13, 14. Introduktion til programmering Programmeringssprog Uge 44 Computer Science, kap 6. Learning Python: kap 13, 14. Plan Programmeringsparadigmer Funktionel programmering i Python Pause Scope: referencekonteksten

Læs mere

Perspektiverende Datalogikursus

Perspektiverende Datalogikursus Perspektiverende Datalogikursus Algoritmer og kompleksitet Gerth Stølting Brodal 1 Perspektiverende kursus Formål: Vise bredden af Datalogi. Vise fagets anvendelighed. Vise konkrete eksempler på hvad datalogi

Læs mere

Tech College Aalborg. ASP.NET Hjemmeside. Projekt Smart Zenior Home - Guide til ASP.NET hjemmeside med Visual Studio

Tech College Aalborg. ASP.NET Hjemmeside. Projekt Smart Zenior Home - Guide til ASP.NET hjemmeside med Visual Studio Tech College Aalborg ASP.NET Hjemmeside Projekt Smart Zenior Home - Guide til ASP.NET hjemmeside med Visual Studio Isabella Sihm Ziersen Indhold ASP.Net hjemmeside... 2 Visual Studio... 2 Brug af templates

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Termin Juni 2019 Institution Uddannelse Fag og niveau Lærer Hold Erhvervsgymnasiet Grindsted HHx Informatik C Jan Søndergaard (JS) (til jul), grundforløbshold HHxgf18a John Hansen

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

Programmering i C Intro og grundlæggende C 5. marts 2007

Programmering i C Intro og grundlæggende C 5. marts 2007 Programmering i C Intro og grundlæggende C 5. marts 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan for kurset Ma. 5/3: Ma. 19/3: Ma. 2/4: To. 12/4: Formål, intro, grundlæggende Videre, sprogkonstruktioner

Læs mere

Arduino Programmering

Arduino Programmering Microcontroller, Arduino I teknologi skal vi lære at lave programmer til uc for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal vi have set mulighederne, og forstået

Læs mere

Dokumentering af umbraco artikeleksport:

Dokumentering af umbraco artikeleksport: Dokumentering af umbraco artikeleksport: Lav en artikel side 2-3. Installationsguide side 3-5. Opsættelse af databasen og web.config side 5-8. Umbraco: templates side 8. Umbraco: borger.dk tab side 8.

Læs mere

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Onsdag den 0. juni 009, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)

Læs mere

Forelæsning Uge 2 Torsdag

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

CPUer og maskinkode DM534. Rolf Fagerberg

CPUer og maskinkode DM534. Rolf Fagerberg CPUer og maskinkode DM534 Rolf Fagerberg CPUers opbygning En CPU er bygget op af elektriske kredsløb (jvf. sidste forelæsning), som kan manipulere bits. En CPU manipulerer flere bits ad gangen, deres antal

Læs mere

Perspektiverende Datalogikursus

Perspektiverende Datalogikursus Perspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet Gerth Stølting Brodal 25. august 2004 1 Perspektiverende kursus Formål: Vise fagets bredde. Vise fagets anvendelighed. Vise konkrete eksempler

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

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

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06.

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06. Ordbøgerne.dk Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06 Side 1 af 35 Indholdsfortegnelse Indledning:...3 Design...4 Visuelt design:...4

Læs mere

It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen. Tilfældige tal. Statistisk test. Sæt og associationslister.

It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen. Tilfældige tal. Statistisk test. Sæt og associationslister. It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen Tilfældige tal. Statistisk test. Sæt og associationslister. Tilfældige tal Statistik Sæt Associationslister Downey, Elkner & Meyers:

Læs mere

It og informationssøgning Forelæsning december 2006 Jakob Grue Simonsen. Diverse emner af almen interesse

It og informationssøgning Forelæsning december 2006 Jakob Grue Simonsen. Diverse emner af almen interesse It og informationssøgning Forelæsning 12 6. december 2006 Jakob Grue Simonsen Diverse emner af almen interesse 1 Gemme objekter til filer I python skal en fil på disken åbnes, før man kan læse eller skrive

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Maj-juni 2018 Institution Erhvervsgymnasiet Grindsted Uddannelse Fag og niveau Lærer(e) Hold HHx Informatik

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

Perspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet

Perspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet Perspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet Gerth Stølting Brodal 30. august 2006 ½ Perspektiverende kursus Formål: Vise bredden af Datalogi. Vise fagets anvendelighed. Vise konkrete

Læs mere

Kreativ programmering

Kreativ programmering Kreativ programmering Mads Remvig Lærer og digital læringsvejleder Beder skole - Aarhus Underviser i matematik, fysik/kemi, håndværk og design Frivillig i Coding Pirates i Århus Kodeklub Master i It, Kommunikation

Læs mere

DATALOGI 1E. Skriftlig eksamen fredag den 7. juni 2002

DATALOGI 1E. Skriftlig eksamen fredag den 7. juni 2002 Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen fredag den 7. juni 2002 Opgaverne vægtes i forhold til tidsangivelsen, og hver opgaves besvarelse bedømmes som en helhed.

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Juni 2016 Institution CampusVejle Uddannelse Fag og niveau Lærer(e) Hold Hhx Informationsteknologi C Peter

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Skoleå ret 2019/2020 Institution Uddannelse Fag og niveau Lærer(e) Hold Erhvervsgymnåsiet Grindsted HTx Progråmmering

Læs mere

Undervisningsbeskrivelse Informationsteknologi B. Undervisningsbeskrivelse Informationsteknologi B

Undervisningsbeskrivelse Informationsteknologi B. Undervisningsbeskrivelse Informationsteknologi B Undervisningsbeskrivelse Informationsteknologi B Termin August 2017 Juni 2018 Institution Next - Ballerup Uddannelse Fag og niveau Lærer(e) Eksamen Materialer EUX Merkantil Studieforberedende år Informationsteknologi

Læs mere

PHP Quick Teknisk Ordbog

PHP Quick Teknisk Ordbog PHP Quick Teknisk Ordbog Af Daniel Pedersen PHP Quick Teknisk Ordbog 1 Indhold De mest brugte tekniske udtryk benyttet inden for web udvikling. Du vil kunne slå de enkelte ord op og læse om hvad de betyder,

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

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

Programmering, algoritmik og matematik en nødvendig sammenblanding?

Programmering, algoritmik og matematik en nødvendig sammenblanding? Programmering, algoritmik og matematik en nødvendig sammenblanding? Oplæg til IDA møde, 29. november 2004 Martin Zachariasen DIKU 1 Egen baggrund B.Sc. i datalogi 1989; Kandidat i datalogi 1995; Ph.D.

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

Fable Kom godt i gang

Fable Kom godt i gang Fable Kom godt i gang Vers. 1.3.1 Opdateret: 29-08-2018 Indholdsfortegnelse 1. Installer programmet 3 2. Pak robotten ud 5 3. I gang med at programmere 6 4. Programmér Fable til at køre fra 90 til -90

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

HTML5 fortsat: Underside, links og tekstelementer på din hjemmeside

HTML5 fortsat: Underside, links og tekstelementer på din hjemmeside Webdesign og webkommunikation, formiddagshold (hold 1), IT Universitetet, forår 2012. Øvelse 2, individuel øvelse HTML5 fortsat: Underside, links og tekstelementer på din hjemmeside 1. Lidt om hvad du

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

Grundlæggende Algoritmer og Datastrukturer

Grundlæggende Algoritmer og Datastrukturer Grundlæggende Algoritmer og Datastrukturer Om kurset Grundlæggende Algoritmer og Datastrukturer Undervisningsformer Forelæsninger: 4 timer/uge (2+2). Øvelser: 3 timer/uge. Café. Obligatorisk program 13

Læs mere

DATALOGI 1E. Skriftlig eksamen mandag den 23. juni 2003

DATALOGI 1E. Skriftlig eksamen mandag den 23. juni 2003 Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen mandag den 23. juni 2003 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes

Læs mere

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0 Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS

Læs mere

Indledning. MIO er optimeret til Internet Explorer. Læs endvidere under Ofte stillede spørgsmål.

Indledning. MIO er optimeret til Internet Explorer. Læs endvidere under Ofte stillede spørgsmål. Indhold Indledning... 3 Søgefunktioner... 4 Søgning fra forsiden... 5 Søgning under menupunktet Instrument... 6 Sådan får man vist instrumenterne i en bestemt afdeling... 7 Sådan ændrer man status på et

Læs mere

Web sider. Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det?

Web sider. Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det? Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det? I dag skal du lære at lave hjemmesider, så du også kan bidrage til at opbygge

Læs mere

Fremstilling af en hjemmeside

Fremstilling af en hjemmeside Fremstilling af en hjemmeside Du kan vise en hjemmeside på to måder. Enten ved at lade din computer virke som en server, eller ved at købe dig et såkaldt webhotel. Dette er en nem måde, og det er ikke

Læs mere