It og informationssøgning Forelæsning oktober 2006 Nils Andersen

Størrelse: px
Starte visningen fra side:

Download "It og informationssøgning Forelæsning oktober 2006 Nils Andersen"

Transkript

1 It og informationssøgning Forelæsning oktober 2006 Nils Andersen Formatstyret udskrivning. Undtagelser. Løkkestyring med break og continue. Tekstfiler. Højereordensfunktioner. Formattekster og %-operatoren Løkkeskip (continue) og løkkeudhop (break) Undtagelser Kast af undtagelse (raise...) Gribning (try... except...) Tekstfiler Skrivning til fil Læsning fra fil Højereordensfunktioner Funktion som argument; biblioteksfunktionerne map, filter og reduce Anonym funktion (lambda) Funktion som værdi; sekventialiseret funktion af flere argumenter Downey, Elkner & Meyers: Chapt. 11 Andersen & Simonsen: kap. 6 1

2 Formatstyret udskrivning Man kan få værdier indsat i en fast tekstskabelon (en såkaldt formattekst) med formen formattekst % sæt af værdier Værdierne i sættet skal, i rækkefølge fra venstre mod højre, svare til pladsholdersymboler %d, %s, osv. (se nedenfor) i formatteksten. >>> beholdning \ = [(50,3), (475,12), (650,1), (700,2)] >>> formattekst = %2d frimærker a %3d øre >>> for v,n in beholdning: print formattekst % (n,v) 3 frimærker a 50 øre 12 frimærker a 475 øre 1 frimærker a 650 øre 2 frimærker a 700 øre 2

3 Pladsholdersymboler i formattekster %d heltal %nd heltal højrestillet i et felt af bredde n %-nd heltal venstrestillet i et felt af bredde n %f brudent tal (skrevet med 6 decimaler) %nf brudent tal, skrevet med 6 decimaler og højrestillet i et felt af bredde n %n.df brudent tal med d decimaler højrestillet i et felt af bredde n %-nf brudent tal, skrevet med 6 decimaler og venstrestillet i et felt af bredde n %-n.df brudent tal med d decimaler venstrestillet i et felt af bredde n %s tekst %ns tekst højrestillet i et felt af bredde n %-ns tekst venstrestillet i et felt af bredde n 3

4 Løkkestyring Med break kan man bryde ud af en while- eller for-løkke: stikord = Det engelske navneord while True: indord = raw input(stikord) if indord = exit : break print hedder, flertalsform(indord), \ i flertal Med continue kan man fortsætte direkte med den næste iteration af en while- eller for-løkke (og skippe resten af den igangværende iteration): makstal = talliste[0] for tal in talliste[1:]: if tal <= makstal: continue makstal = tal 4

5 Undtagelser Med raise kan man selv kaste en undtagelse (på samme måde som når en systemfunktion reagerer på fejl): if antaldele < 0: raise Fordelingsfejl, negativt delantal Sådan gribes undtagelser: I konstruktionen try: krop K except: alternativ krop K 1 forsøges kroppen K udført, men hvis det kaster en undtagelse, udføres K 1 derefter i stedet. Efter except kan man angive specifikke undtagelser, hvis kun de skal gribes. Med mindre en undtagelse gribes undervejs, vil den forplante sig ud gennem programmets niveauer og afbryde udførelsen med undtagelsen som fejlmelding. 5

6 Skrivning til tekstfil >>> filnavn = open( kat/fil.txt, w ) Herved knyttes programmets filnavn til den fil, som (i det katalog, python er kaldt fra) for operativsystemet hedder kat/fil.txt. Findes filen allerede, slettes det tidligere indhold, og ellers bliver den oprettet. Med a (append) i stedet for w (write) udbygges en eksisterende fil. Med metodekald af form >>> filnavn.write( Første del af en linje ) >>> filnavn.write( resten af linjen\n ) lægges indhold ud i filen, og med >>> filnavn.close() tømmes og frigives lagerbufferen, forbindelsen til operativsystemets fil afbrydes, og filnavn er ledigt til anden anvendelse. Den dannede fil vil derefter kunne læses med et andet Pythonprogram eller med et tekstbehandlingsprogram (f.eks. notepad). 6

7 Læsning fra tekstfil >>> filnavn = open( kat/fil.txt ) (Eller alternativt: open( kat/fil.txt, r ).) Herved knyttes programmets filnavn til den allerede eksisterende fil med operativsystemnavnet kat/fil.txt. Som argument til metoden read kan man angive antallet af tegn (oktetter), der (højst) skal læses. Kaldt uden argument hentes hele (resten af) filen: >>> tekst = filnavn.read(12) >>> print tekst, +, filnavn.read() Første del a + f en linje resten af linjen >>> Metoderne filnavn.readline() og filnavn.readlines() vil henholdsvis hente næste linje, frem til og med \n, og en liste indeholdende de resterende linjer. Filens slutning er derfor nået, når read eller readline returnerer en tom tekst eller readlines en tom liste. Lagerbufferen frigives, forbindelsen til operativsystemets fil afbrydes, og filnavn bliver ledigt til anden anvendelse efter >>> filnavn.close() 7

8 Optælling af ord fra tekstfil import string bogstav \ = unicode(string.lowercase + æøå + string.uppercase + ÆØÅ, latin1 ) fil = open( Snedronningen.txt ) samling = {} while True: linje = unicode(fil.readline(), latin1 ) if linje == : break i = 0 while True: while linje[i] not in bogstav + \n : i = i + 1 if linje[i] == \n : break ord = while linje[i] in bogstav: ord = ord + linje[i] i = i + 1 samling[ord] = samling.get(ord,0) + 1 fil.close() 8

9 Optælling fortsat: statistik = samling.items() def forud for((ord1,antal1),(ord2,antal2)): if antal1 > antal2: return -1 # par 1 før 2 if antal1 < antal2: return 1 # par 1 efter 2 return ord1. cmp (ord2) statistik.sort(forud for) fil = open( resultat.txt, w ) for ordant in statistik: tekst = %15s forekommer %3d gange % ordant fil.write(tekst.encode( latin1 )) fil.close() Bagefter vil resultat.txt indeholde: og forekommer 557 gange den forekommer 265 gange det forekommer 255 gange. Sneedronningen forekommer. 18 gange Saa forekommer 3 gange Sal forekommer 3 gange See forekommer. 3 gange ømme forekommer 1 gange ønskede forekommer 1 gange øverst forekommer 1 gange 9

10 Parametrisering Beregninger med store fælles dele bør gøres til selvstændige abstraktioner. I stedet for fast del K varierende del u og fast del K varierende del v defineres >>> def fkt(x): fast del K varierende del x og de to ovenstående beregninger kan da opnås via henholdsvis fkt(u) og fkt(v). Hidtil har x været en simpel eller struktureret værdi, men x kunne også være en funktion! 10

11 Funktionsløft med map Begge disse eksempler gennemløber en liste og danner en ny lige så lang liste: >>> cifferudtaler \ = [ ling, yi, er, san, si, wu, liu, qi, ba, jiu ] >>> udtale = [] >>> for c in cifferliste: udtale.append(cifferudtaler[c]) >>> kvartaler \ = [ januar, april, juli, oktober ] >>> kvtnavne = [] >>> for k in kvartaler: kvtnavne.append( %-9s % k) Kaldet map(f,xr) vil returnere en ny liste af samme længde som xr, dannet ved anvendelse af f på hvert element af sekvensen xr. 11

12 map fortsat map er en biblioteksfunktion, men den kunne have været defineret med >>> def map(f,xr): yr = [] for x in xr: yr.append(f(x)) return yr De to foregående eksempler kan derfor også skrives >>> def cifudt(c): return cifferudtaler[c] >>> udtale = map(cifudt,cifferliste) og >>> def vstrstil9(m): return %-9s % m >>> kvtnavne = map(vstrstil9,kvartaler) 12

13 Listeudvalg med filter filter er en biblioteksfunktion. Kaldet filter(p,xr) vil returnere en sekvens (af samme art som xr) bestående af de elementer x fra xr, for hvilke p(x). >>> def indeholderr(ord): return r in ord >>> print filter(indeholderr,kvartaler) [ januar, april, oktober ] 13

14 Foldning med reduce Biblioteksfunktionen reduce opbygger en værdi ved at tage en ikke tom listes elementer i betragtning fra venstre et ad gangen. Kaldet reduce(f,[x 1,x 2,x 3,x 4 ]) vil returnere f(f(f(x 1, x 2 ), x 3 ), x 4 ). >>> def saml(v,c): return v * 10 + c >>> print reduce(saml,[1,9,6,3]) 1963 Med et ekstra argument kan reduce også bruges på en tom liste. Kaldet reduce(f,[x 1,x 2,x 3,x 4 ],x 0 ) vil returnere f(f(f(f(x 0, x 1 ), x 2 ), x 3 ), x 4 ). >>> print reduce(saml,[],0) 0 >>> print reduce(saml,[2,1,5],0)

15 Anonym funktion med lambda Definerer man en funktion >>> def fktnavn(parametre): return udtryk for derefter kun at kalde den et enkelt sted fra (så det kan ikke være en rekursiv funktion), kan man undgå overhovedet at give den et navn! Erstat funktionskaldet fktnavn med lambda parametre: udtryk De foregående eksempler kunne have været skrevet >>> print filter \ (lambda ord: r in ord,kvartaler) og >>> print reduce(lambda v,c: v*10+c,[2,1,5],0) 15

16 Funktion som funktionsværdi: sekventialisering Et funktionskald kan have en funktion som sit resultat! Defineres >>> def adder(a): return lambda b: b + a bliver for eksempel adder(2) den funktion, som lægger 2 til, og (adder(2))(18) (som også blot kan skrives adder(2)(18)) får værdien 20. Sekventialisering (på engelsk currying) er nyttig, hvor en funktion af to eller flere argumenter ikke får alle sine argumenter på samme tid. For at kunne variere feltbredden kunne et af de foregående eksempler udbygges til: >>> def vstrstil(bredde): return lambda m: m + *(bredde-len(m)) >>> print map(vstrstil(7),kvartaler) [ januar, april, juli, oktober ] 16

It og informationssøgning Forelæsning september 2006 Nils Andersen. Gentagelser og tekster

It og informationssøgning Forelæsning september 2006 Nils Andersen. Gentagelser og tekster It og informationssøgning Forelæsning 3 20. september 2006 Nils Andersen Gentagelser og tekster Dokumentationstekster Iteration (gentagelse) - med while - med for En- og todimensionale tabeller Typen af

Læs mere

It og informationssøgning Forelæsning september 2006 Nils Andersen. Underprogrammer og betingelser. Standardfunktioner, typeomsætning

It og informationssøgning Forelæsning september 2006 Nils Andersen. Underprogrammer og betingelser. Standardfunktioner, typeomsætning It og informationssøgning Forelæsning 2 13. september 2006 Nils Andersen Underprogrammer og betingelser Standardfunktioner, typeomsætning Funktionskald Moduler, lange navne Brugerdefinerede funktioner

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

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

It og informationssøgning Forelæsning november 2006 Nils Andersen. Regulære udtryk og formelle sprog

It og informationssøgning Forelæsning november 2006 Nils Andersen. Regulære udtryk og formelle sprog It og informationssøgning Forelæsning 11 22. november 2006 Nils Andersen Regulære udtryk og formelle sprog Regulært udtryk Forening, sammenstilling og Kleene-gentagelse Andre notationer og operatorer Modulet

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 oktober 2006 Jakob Grue Simonsen. Klasser

It og informationssøgning Forelæsning oktober 2006 Jakob Grue Simonsen. Klasser It og informationssøgning Forelæsning 7 25. oktober 2006 Jakob Grue Simonsen Klasser Downey, Elkner & Meyers: Chapt. 12-14 Andersen & Simonsen: kap. 7 Vi har tidligere set, at Python tilbyder en række

Læs mere

Lær Python - Dag 3, modul 1 Læse og skrive filer

Lær Python - Dag 3, modul 1 Læse og skrive filer Lær Python - Dag 3, modul 1 Læse og skrive filer Simon J. Larsen 15. oktober 2017 Institut for Matematik og Datalogi Læse og skrive filer Persistens Vi har ofte brug for at gemme data på disken som ikke

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

It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen. Indlejring og Nedarvning

It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen. Indlejring og Nedarvning It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen Indlejring og Nedarvning Downey, Elkner & Meyers: Chapt. 15-16 Andersen & Simonsen: kap. 8 Vi har tidligere set løkker af forskellig

Læs mere

Datalogi 0 GA Forelæsning september 2003 Nils Andersen. Tegn og tekster. Listefunktionalen map. Naïv sortering

Datalogi 0 GA Forelæsning september 2003 Nils Andersen. Tegn og tekster. Listefunktionalen map. Naïv sortering Datalogi 0 GA Forelæsning 11 12 18. september 2003 Nils Andersen Tegn og tekster. Listefunktionalen map. Naïv sortering Typen char af tegn Typen string af tekster Eksempler Højereordensfunktionen map Sortering

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

It og informationssøgning Forelæsning december 2006 Nils Andersen. Indkøring, afprøvning og dokumentation af programmer

It og informationssøgning Forelæsning december 2006 Nils Andersen. Indkøring, afprøvning og dokumentation af programmer It og informationssøgning Forelæsning 14 13. december 2006 Nils Andersen Indkøring, afprøvning og dokumentation af programmer Indkøring Syntaksfejl Køretidsfejl Semantiske fejl Dokumentation Sammenfatning

Læs mere

Sproget Six. Til brug i rapportopgaven på kurset Oversættere. Vinter 2006. Abstract

Sproget Six. Til brug i rapportopgaven på kurset Oversættere. Vinter 2006. Abstract Sproget Six Til brug i rapportopgaven på kurset Oversættere Vinter 2006 Abstract Six er baseret på det sprog, der vises i figur 6.2 og 6.4 i Basics of Compiler Design. Den herværende tekst beskriver basissproget

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

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

Datalogi 0 GA Forelæsning oktober 2003 Nils Andersen. Undtagelser. Kombinatorisk søgning

Datalogi 0 GA Forelæsning oktober 2003 Nils Andersen. Undtagelser. Kombinatorisk søgning Datalogi 0 GA Forelæsning 19 20 23. oktober 2003 Nils Andersen Undtagelser. Kombinatorisk søgning Undtagelser Erklæring Kast Gribning Det grådige princip til løsning af et kombinatorisk problem Frembringelse

Læs mere

Denne rapport vil beskæftige sig med hvordan computere bruger matematiske algoritmer til at sortere tal efter størrelse.

Denne rapport vil beskæftige sig med hvordan computere bruger matematiske algoritmer til at sortere tal efter størrelse. Sorteringsalgoritmer Af Tobias André Højsgaard Klasse 2.4 Roskilde Tekniske Gymnasium IT Opgavens mål Denne rapport vil beskæftige sig med hvordan computere bruger matematiske algoritmer til at sortere

Læs mere

Sproget Limba. Til brug i G1 og K1. Dat1E 2003

Sproget Limba. Til brug i G1 og K1. Dat1E 2003 Sproget Limba Til brug i G1 og K1 Dat1E 2003 Abstract Limba er et simpelt imperativt sprog med hoballokerede tupler. Dette dokument beskriver uformelt Limbas syntaks og semantik samt en fortolker for Limba,

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

Introduktion til funktioner, moduler og scopes i Python

Introduktion til funktioner, moduler og scopes i Python Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til funktioner, moduler og scopes i Python Denne artikel er fortsættelsen af "I gang med Python", som blevet publiceret her på sitet for

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

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet Eksamen 005, F side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed:

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 23. maj 20. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 0205. Varighed: 4 timer Tilladte hjælpemidler: Alle skriftlige hjælpemidler.

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

Statistikudtræk. 1 Introduktion

Statistikudtræk. 1 Introduktion Statistikudtræk MADS MENU: RAPPORT STATISTIK STATISTIKUDTRÆK (D.4.1.) Revideret 20-09-2010 1 Introduktion I MADS kan statistiske data trækkes ud via enten statistikudtræk eller perioderapporter. I statistikudtræk

Læs mere

Sproget Rascal (v. 2)

Sproget Rascal (v. 2) Sproget Rascal (v. 2) Til brug i K1 på kurset Oversættere Opdateret 29/11 2004 Abstract Rascal er et simpelt Pascal-lignende imperativt sprog. Dette dokument beskriver uformelt Rascals syntaks og semantik

Læs mere

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

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

Læs mere

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

Induktive og rekursive definitioner

Induktive og rekursive definitioner Induktive og rekursive definitioner Denne note omhandler matematiske objekter, som formelt er opbygget fra et antal basale byggesten, kaldet basistilfælde eller blot basis, ved gentagen brug af et antal

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne: Opgave

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning

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

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

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

Algoritmer og invarianter

Algoritmer og invarianter Algoritmer og invarianter Iterative algoritmer Algoritmen er overordnet set een eller flere while eller for-løkker. Iterative algoritmer Algoritmen er overordnet set een eller flere while eller for-løkker.

Læs mere

MountainSite Guide: Kom godt i gang

MountainSite Guide: Kom godt i gang MountainSite version 2.6 Indhold: Log in Præsentation Rediger hjemmeside Tekster Kontaktoplysninger Menulinien Billeder Pdf/Filupload Brugeradministration Indstillinger Log af Log in Når du skal bruge

Læs mere

Kursusarbejde 3 Grundlæggende Programmering

Kursusarbejde 3 Grundlæggende Programmering Kursusarbejde 3 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 21. november 2003 Indhold 1. Kode 2 1.1. forestillinger.h............................................. 2 1.2. forestillinger.cc.............................................

Læs mere

Finanstilsynets indberetningssystem. Vejledning til Regnearksskabelonerne

Finanstilsynets indberetningssystem. Vejledning til Regnearksskabelonerne Finanstilsynets indberetningssystem Vejledning til Regnearksskabelonerne Finanstilsynet - 2. udgave oktober 2009 Indholdsfortegnelse 1 INDLEDNING... 2 2 FORUDSÆTNINGER... 3 3 TRIN FOR TRIN... 4 3.1 Hent

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af opgaverne:

Læs mere

Informationsteknologi

Informationsteknologi Råd og vejledning ved rapportskrivning Indhold: 1. Start på rapport oprettelse af forside:... 2 1.1 Oprettelse... 2 1.2 Margener... 2 1.3 Skrifttype... 3 2. Øvrige dele af opgaven... 4 3. Sidehoved og

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

Basicon Nodepult. Basicon Nodepult er den moderne afløser for det traditionelle nodestativ, men har derudover en lang række fordele:

Basicon Nodepult. Basicon Nodepult er den moderne afløser for det traditionelle nodestativ, men har derudover en lang række fordele: Basicon Nodepult Programmet Basicon Nodepult henvender sig til musikere, som ofte har behov for at medbringe deres forskellige nodesamlinger til forskellige orkestre. Basicon Nodepult er den moderne afløser

Læs mere

Genbestillingsmetode = Maks. antal Genbestillingspunkt Maks. lagerbeholdning

Genbestillingsmetode = Maks. antal Genbestillingspunkt Maks. lagerbeholdning Beregn plan (bestilling af reservedele) Denne vejledning beskriver disponering af varer via menupunktet Beregn plan under Køb - Planlægning Indkøbskladder. Stamdata Forudsætning for at en vare medtages

Læs mere

2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode.

2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode. Denne guide er oprindeligt udgivet på Eksperten.dk I gang med Python I denne artikel vil jeg forsøge at give et kort og hurtigt indblik i programmeringssproget Python, der desværre er alt for overset.

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 2 sider anmarks Tekniske Universitet Skriftlig prøve, den 23. maj 20. Kursusnavn: lgoritmer og datastrukturer Kursus nr. 02326. Varighed: 4 timer Tilladte hjælpemidler: lle skriftlige hjælpemidler.

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

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2. P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2. Bevis ved stærk induktion. Basisskridt: P (2) er sand og P (3) er sand. Induktionsskridt: Lad k 2 og antag P

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur (struktur opbygget af et endeligt antal enkeltdele) blandt mange mulige. Eksempler:

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

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

Galleri modul. Side 1 af 18

Galleri modul. Side 1 af 18 Galleri modul Side 1 af 18 Indholdsfortegnelse Indholdsfortegnelse... 2 Installation... 3 Oprette menupunkt... 5 Kategoriseret menupunkt (Avanceret)... 6 Opsætning... 9 Generel opsætning... 10 Opsætning

Læs mere

ClassPad Add-In Installer

ClassPad Add-In Installer Til ClassPad 300/ClassPad 300 PLUS De ClassPad Add-In Installer (program til installation af tilføjelsesprogrammer) Brugervejledning http://world.casio.com/edu/ http://classpad.net/ ClassPad Add-In Installer

Læs mere

Grundlæggende WordPad i 11 lette trin Til Elisabeth 2013 SeniorKultur/AluData :: Vanløse

Grundlæggende WordPad i 11 lette trin Til Elisabeth 2013 SeniorKultur/AluData :: Vanløse Grundlæggende WordPad i 11 lette trin Til Elisabeth 2013 SeniorKultur/AluData :: Vanløse 1 ordpad er en grundlæggende tekstbehandlingsprogram, der er inkluderet i Windows W (siden Windows 95, hvor det

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet ksamen 06, side af sider anmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. ursusnavn: lgoritmer og datastrukturer ursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer

Læs mere

Michael Jokil 11-05-2012

Michael Jokil 11-05-2012 HTX, RTG Det skrå kast Informationsteknologi B Michael Jokil 11-05-2012 Indholdsfortegnelse Indledning... 3 Teori... 3 Kravspecifikationer... 4 Design... 4 Funktionalitet... 4 Brugerflade... 4 Implementering...

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

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

Tastevejledning Windows XP

Tastevejledning Windows XP Tastevejledning Windows XP Tastevejledningen dækker den danske udgave af Windows XP. Der er taget udgangspunkt i en standard installation, hvor der ikke er foretaget tilpasninger i skærmopsætning, valg

Læs mere

Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012

Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012 Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012 May 15, 2012 1 CONTENTS 2012 CONTENTS Contents 1 Kompleksitet 3 1.1 Køretid................................................ 3 1.2 Asymptotisk

Læs mere

Yderligere fire personer er tildelt brugernavn og adgangskode og kan foretage uploadning og andre ændringer af hjemmesiden

Yderligere fire personer er tildelt brugernavn og adgangskode og kan foretage uploadning og andre ændringer af hjemmesiden Uploadning af filer til NMF hjemmeside Kai Sørensen, 18. juni 2013 Forord Den daglige vedligeholdelse af hjemmesiden foretages af: Kai Sørensen Frem 41 DK 2800 Lyngby e-mail: kai.sorensen@newmail.dk tel.:

Læs mere

Skabelonfilen er udarbejdet i Word til Windows (Office 2010) og er også afprøvet i Word til Mac.

Skabelonfilen er udarbejdet i Word til Windows (Office 2010) og er også afprøvet i Word til Mac. Nordiske Studier i Leksikografi 13 (København 2015) Brug af stilark Vi vil gerne have at alle forfattere benytter den Word-fil som redaktionen har udarbejdet og sendt ud, både forfattere og redaktører

Læs mere

NemHandel menuen 14.1

NemHandel menuen 14.1 NemHandel menuen 14.1 14. NEMHANDEL Nemhandel er standard for fakturering af elektroniske fakturaer til EAN-kunder. Nemhandel er obligatorisk til offentlige kunder. Med Rambøll Nemhandel kan du foretage

Læs mere

Kom igang med Scroll:bit

Kom igang med Scroll:bit Kom igang med Scroll:bit 1. Forbind scroll:bit til din micro:bit Indsæt micro:bit i edge-connectoren på din scroll:bit. Displayet på micro:bit og scroll:bit skal vende samme vej. Se billede nedenfor. Det

Læs mere

Installationsvejledning Family Tree Maker

Installationsvejledning Family Tree Maker Side 1 af 10 Først og fremmest tillykke med din nye version, oversat til dansk af undertegnede. Håber du bliver lige så glad for alle dens muligheder, som så mange over hele verden er blevet det. Installation

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Har en hvis lighed med divide-and-conquer: Begge opbygger løsninger til større problemer

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

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

Gem dine dokumenter i BON s Content Management System (CMS)

Gem dine dokumenter i BON s Content Management System (CMS) 24. august 2007 Gem dine dokumenter i BON s Content Management System (CMS) INDHOLDSFORTEGNELSE 1. Indledning... 2 2. Se indholdet i dit Content Management System... 3 3. Tilgå dokumenterne i My Content

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning

Læs mere

WINDOWS FORMS EVENTS INTERAGEREN MED FIL SYSTEMET. Grundlæggende programmering Lektion 9

WINDOWS FORMS EVENTS INTERAGEREN MED FIL SYSTEMET. Grundlæggende programmering Lektion 9 EVENTS INTERAGEREN MED FIL SYSTEMET WINDOWS FORMS Grundlæggende programmering Lektion 9 1 EVENTS Der sker ting når der sker ting 2 EVENTS Events er brugerhandlinger såsom tastetryk, klik, musebevægelser,

Læs mere

Manual til hjemmeside i Typo3

Manual til hjemmeside i Typo3 Manual til hjemmeside i Typo3 Gode tips og genvejstaster Ét linieskift Ctrl + A Ctrl + C Ctrl + X Ctrl + V shift + enter (tasten du normalt bruger til linieskift) Markér alt Kopier Klip Sæt ind Oprettelse

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af

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

Kontrol-strukturer i PHP

Kontrol-strukturer i PHP Denne guide er oprindeligt udgivet på Eksperten.dk Kontrol-strukturer i PHP Denne artikel gennemgår kontrolstrukturer i PHP. 'if', 'switch', 'while' og 'for' bliver gennemgået. Den forudsætter lidt grundlæggende

Læs mere

I denne manual kan du finde en hurtig introduktion til hvordan du:

I denne manual kan du finde en hurtig introduktion til hvordan du: VORES NORDSJÆLLAND HURTIGT I GANG MANUAL 01: Bruger HVAD INDEHOLDER DENNE MANUAL? I denne manual kan du finde en hurtig introduktion til hvordan du: 1. Finder Vores Nordsjælland hjemmesiden 2. Opretter

Læs mere

Kom godt i gang: Vejledning vedr. VP Rapport:

Kom godt i gang: Vejledning vedr. VP Rapport: Kom godt i gang: Vejledning vedr. VP Rapport: Denne vejledning beskriver det nye uddatamodul til Vagtplan (VP Rapport). Løsningen skal erstatte det eksisterende Ressourcestyringsmodul og danner samtidig

Læs mere

Kommentarer til opgave 4-6

Kommentarer til opgave 4-6 Kommentarer til opgave 4-6 Opgaverne er stort set OK. De viser at tankegangen er rigtig. Nogle programmer virker ikke, men kræver blot en enkelt rettelse. De bliver godkendt, men I bør selv altså gøre

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

Spilstrategier. 1 Vindermængde og tabermængde

Spilstrategier. 1 Vindermængde og tabermængde Spilstrategier De spiltyper vi skal se på her, er primært spil af følgende type: Spil der spilles af to spillere A og B som skiftes til at trække, A starter, og hvis man ikke kan trække har man tabt. Der

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

Parallelisering/Distribuering af Genetiske Algoritmer

Parallelisering/Distribuering af Genetiske Algoritmer Parallelisering/Distribuering af Genetiske Algoritmer Hvorfor parallelisere/distribuere? Standard GA algoritme Modeller Embarassing parallel Global (fitness evaluering) Island (subpopulation) Grid/Cellular

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

Workzone hjælp I denne Quickguide kan du finde hjælp til de mest almindelige funktioner i Workzone

Workzone hjælp I denne Quickguide kan du finde hjælp til de mest almindelige funktioner i Workzone Workzone hjælp I denne Quickguide kan du finde hjælp til de mest almindelige funktioner i Workzone Opret sag 1 Knyt part til sag 1 Opret Word dokument 2 Arkivér dokument 2 Arkivér dokumenter fra sagsfane

Læs mere

Exceptions i Delphi. Try except

Exceptions i Delphi. Try except Exceptions i Delphi Exceptions er en teknik til at fange fejl under programafviklingen. Ikke programmeringsfejl, men fejl der opstår i forskellige situationer, f.eks. en fil der mangler en fil der er skrivebeskyttet,

Læs mere

Microsoft Word 2007. thoremil.dk

Microsoft Word 2007. thoremil.dk Microsoft Word 2007 Indskrivning... 3 Gem og udskriv... 4 Åbn og Luk... 5 Tastatur... 6 Mus... 9 Indsæt specielle tegn og symboler... 10 Formatering af tegn... 11 Formatering af afsnit... 12 Punktopstilling...

Læs mere

Status vejledning. Vejledning i håndtering af status scanner, tømning og indlæsning til EasyPOS

Status vejledning. Vejledning i håndtering af status scanner, tømning og indlæsning til EasyPOS Status vejledning Cipherlab CPT8000 Vejledning i håndtering af status scanner, tømning og indlæsning til EasyPOS 1 Indhold 2 Håndterminalen... 1 2.1 Beskrivelse af taster... 1 2.1.1 Hvad bruges tasterne

Læs mere

Udarbejdet af CFU Absalon

Udarbejdet af CFU Absalon Chatbots i Scratch Introduktion: En chatbot er et lille program, der kan chatte. De bruges mange steder på internettet, enten for at kunne hjælpe i nogle bestemte situationer eller for at underholde. De

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

Læringsprogram. Numeriske metoder. Matematik A Programmering C Studieområdet. Roskilde Tekniske Gymnasium Klasse 3.4

Læringsprogram. Numeriske metoder. Matematik A Programmering C Studieområdet. Roskilde Tekniske Gymnasium Klasse 3.4 Læringsprogram Numeriske metoder Matematik A Programmering C Studieområdet Roskilde Tekniske Gymnasium Klasse 3.4 Lau Lund Leadbetter Mikkel Karoli Johnsen Tobias Sønderskov Hansen Lineær regression ved

Læs mere

Microsoft Word 2010 Huskesedler

Microsoft Word 2010 Huskesedler Microsoft Word 2010 Huskesedler Indskrivning... 3 Gem og udskriv... 4 Åbn og Luk... 5 Tastatur... 6 Mus... 9 Indsæt specielle tegn og symboler... 10 Formatering af tegn... 11 Formatering af afsnit... 12

Læs mere

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 6. juni 2016, kl. 15:00 19:00 Besvarelsen skal afleveres elektronisk. Se

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 3 sider anmarks Tekniske Universitet Skriftlig prøve, den 29. maj 203. ursusnavn: lgoritmer og datastrukturer ursus nr. 02326. jælpemidler: Skriftlige hjælpemidler. et er ikke tilladt at medbringe

Læs mere

Invarianter. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af) dens udførelse. Udgør ofte kernen af ideen bag algoritmen.

Invarianter. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af) dens udførelse. Udgør ofte kernen af ideen bag algoritmen. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af) dens udførelse. Udgør ofte kernen af ideen bag algoritmen. Invariant: Et forhold, som vedligeholdes af algoritmen gennem (dele af)

Læs mere

AluData: Regneark og brevfletning i LibreOffice. AluData: Regneark og brevfletning i LibreOffice

AluData: Regneark og brevfletning i LibreOffice. AluData: Regneark og brevfletning i LibreOffice AluData: Regneark og brevfletning i LibreOffice Indholdsfortegnelse 1. Indledning...2 2. LibreOffice Calc...2 2.1. Vi lægger et simpelt budget i Calc...2 2.2. Afslutning...12 3. Brevfletning...12 3.1.

Læs mere

Filupload LEJERBO.DK FILARKIV UNDER MØDER OSV. Upload filer til et eksisterende filupload-komponent

Filupload LEJERBO.DK FILARKIV UNDER MØDER OSV. Upload filer til et eksisterende filupload-komponent 1 Filupload Tips! Vi har forberedt nogle sider til dig med et filupload-komponent. Blandt andet siden Møder. På den måde kan du nemt uploade filer, fx referater, vedtægter eller husorden til jeres hjemmeside.

Læs mere

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00 Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed

Læs mere

Tegneserien - Kom godt i gang. Mikro Værkstedet A/S

Tegneserien - Kom godt i gang. Mikro Værkstedet A/S Tegneserien - Kom godt i gang Mikro Værkstedet A/S Tegneserien - Kom godt i gang Mikro Værkstedet A/S Revision 1.14, 15. maj 2007 Indholdsfortegnelse 1. Forord... 1 2. Kom godt i gang... 3 2.1. Opstart

Læs mere

Vejledning KPK Online Prøverum

Vejledning KPK Online Prøverum Vejledning KPK Online Prøverum INDHOLD Introduktion side 2 Funktionsliste side 2 Få adgang til systemet side 3 Opload dine billeder side 4 Sådan bruges systemet side 5 Gem dine eksempler side 7 Side 1/7

Læs mere

Brug af Discoverer. 1. Start Discoverer ved at klikke på knappen Discoverer på

Brug af Discoverer. 1. Start Discoverer ved at klikke på knappen Discoverer på Oprette projektark med simpel tabel Brug af Discoverer 1. Start Discoverer ved at klikke på knappen Discoverer på www.kirkeportal.dk 2. Angiv kontonummer, brugernavn og password. Det er det samme som anvendes

Læs mere