Extra övningar på SDD:er/SDT:er

Storlek: px
Starta visningen från sidan:

Download "Extra övningar på SDD:er/SDT:er"

Transkript

1 Extra övningar på SDD:er/SDT:er Bakvända meningar Grammatik: sentence word sentence sentence ε sentence space sentence word char word char 1 char 2 word char 1 word 1 char 2 Symbolen sentence producerar serier av ett eller flera ord. Token char står för ett tecken ur { a, b,, ö }, och har attributet lexeme. Token space betyder ett mellanslag. Sätt ett attribut rev av strängtyp på sentence som håller den producerade meningen baklänges. Ge också regler för hur detta attribut får ett värde. Till din hjälp kan du använda strängsammanfogningsoperatorn. Gör också om din SDD till en SDT. Syskonnoder i träd Följande grammatik producerar strängrepresentationer av träd vars interna noder kan ha godtyckligt antal barn. tree branch branch internal ( children ) children branch children children leaf children children ε children children Med det här sättet att representera träd skrivs t.ex. ett träd bestående av en rotnod med tre lövnoder som barn ut såhär: internal (leaf leaf leaf), eller ett träd bestående av en rot med ett lövbarn och ett barn som ser ut som roten i det förra trädet: internal (internal (leaf leaf leaf) leaf) eller internal (leaf internal (leaf leaf leaf)). Sätt ett attribut sibs på grammatiksymbolerna internal och leaf som är av heltalstyp och anger hur många syskon noden har. Specificera också regler för hur detta attribut får sitt värde. Omvandla sedan din SDD till en SDT.

2 Palindrom Använd samma grammatik som i Bakvända meningar ovan, men lägg till ett booleskt attribut på sentence som anger om den producerade meningen blir samma sak baklänges eller inte. Gör en SDD och en SDT. Negativa och positiva deluttryck Grammatik: expr term expr expr 1 + expr 2 term factor term term 1 * term 2 factor num factor id factor factor 1 factor ( expr ) Token num står för numeriska konstanter och har ett attribut val som är ett positivt heltalsvärde. Token id står för identifierare, och identifierares värden går ju inte att veta förrän under körning. Inför attributet sign i expr som kan hålla värdena neg, 0, pos eller?, vilka anger om resultatet av det evaluerade uttrycket är negativt, lika med 0, positivt respektive omöjligt att avgöra i en statisk analys. Det sistnämnda attributvärdet kan behövas för uttryck som innehåller identifierare. Det enda man kan veta om dessa är ju t.ex. att x x är positivt eller att x 0 = 0, och som en utökning av uppgiften kan du lägga till regler som hanterar något eller några av dessa specialfall och på så sätt förbättrar analysens precision. Detta kan kräva att ytterligare attribut införs. Gör också en SDT.

3 Lösning Bakvända meningar SDD: PRODUKTION SEMANTISKA REGLER sentence word sentence sentence.rev = sentence.rev word.rev sentence ε sentence.rev = sentence space sentence sentence.rev = sentence.rev word char word.rev = char.lexeme word char 1 char 2 word.rev = char 2.lexeme char 1.lexeme word char 1 word 1 char 2 word.rev = char 2.lexeme word 1.rev char 1.lexeme Eftersom SDD:n ovan enbart använder syntetiserade attribut (S-attributed), kan en SDT för att evaluera attributen enkelt konstrueras genom att införa semantiska aktioner sist i alla produktioner. Lösning Syskonnoder i träd Vi använder attributet inh i children och children för att utföra en inkrementell summering av antalet barn i en syskonskara. Då basfallet i produktionen av syskon, som utgörs av regeln children ε, används, innehåller inh den färdiga summeringen av antalet barn, och detta attribut kan då kopieras tillbaka via det syntetiserade attributet count så att varje barn kan använda det för att sätta sibsattributet. SDD: PRODUKTION SEMANTISKA REGLER tree branch branch.sibs = 0 branch internal ( children ) internal.sibs = branch.sibs children.inh = 0 children branch children children.inh = children.inh + 1 branch.sibs = children.count 1 children.count = children.count children leaf children children.inh = children.inh + 1 leaf.sibs = children.count 1 children.count = children.count children ε children.count = children.inh children children children.inh = children.inh children.count = children.count SDT som evaluerar attributen ovan: tree { branch.sibs = 0 } branch branch internal ({ children.inh = 0 } children ){ internal.sibs = branch.sibs } children branch { children.inh = children.inh + 1 } children { branch.sibs = children.count 1; children.count = children.count }

4 children leaf { children.inh = children.inh + 1 } children { leaf.sibs = children.count 1; children.count = children.count } children ε { children.count = children.inh } children { children.inh = children.inh } children { children.count = children.count } Lösning Palindrom Till detta använder vi samma attribut rev som tidigare, men utökar också grammatiken med ett strängattribut orig som håller strängen i rättvänd ordning, som rev kan jämföras med. PRODUKTION SEMANTISKA REGLER sentence word sentence sentence.rev = sentence.rev word.rev sentence.orig = word.orig sentence.orig sentence.palin = if sentence.rev == sentence.orig then true else false sentence ε sentence.rev = sentence.orig = sentence space sentence sentence.rev = sentence.rev sentence.orig = sentence.orig word char word.rev = char.lexeme word.orig = char.lexeme word char 1 char 2 word.rev = char 2.lexeme char 1.lexeme word.orig = char 1.lexeme char 2.lexeme word char 1 word 1 char 2 word.rev = char 2.lexeme word 1.rev char 1.lexeme word.orig = char 1.lexeme word 1.orig char 2.lexeme Lösning Negativa och positiva deluttryck För att spara information om huruvida båda operanderna till en multiplikation är enstaka variabler med samma namn använder vi strängattributet var som håller variablernas namn. I de fall ett deluttryck inte är en enstaka variabel sätts var till. PRODUKTION expr term expr expr 1 + expr 2 term factor SEMANTISKA REGLER expr.sign = term.sign expr.var = term.var expr.sign = if expr 1.sign == expr 2.sign then expr 1.sign else if expr 1.sign == 0 then expr 2.sign else if expr 2.sign == 0 then expr 1.sign else? expr.var = term.sign = factor.sign term.var = factor.var term term 1 * term 2 term.sign = if term 1.var!= and term 1.var == term 2.var then pos else if term 1.sign == 0 or term 2.sign == 0 then 0 else if term 1.sign ==? or term 2.sign ==? then? else if term 1.sign == term 2.sign then pos else neg term.var =

5 factor num factor.sign = pos factor.var = factor id factor.sign =? factor.var = id.lexeme factor factor 1 factor.sign = if factor 1.sign == neg then pos else if factor 1.sign == 0 then 0 else if factor 1.sign == pos then neg else? factor.var = factor ( expr ) factor.sign = expr.sign factor.var = expr.var Eftersom SDD:n ovan är S-attributed, kan en SDT enkelt konstrueras genom att evaluera attributen i semantiska aktioner som ligger sist i produktionerna.

Javisst! Uttrycken kan bli komplicerade, och för att få lite överblick över det hela så gör vi det så enkelt som möjligt för oss.

Javisst! Uttrycken kan bli komplicerade, och för att få lite överblick över det hela så gör vi det så enkelt som möjligt för oss. 8-2 Förenkling av uttryck. Namn: eller Konsten att räkna algebra och göra livet lite enklare för sig. Inledning I föregående kapitel lärde du dig vad ett matematiskt uttryck är för någonting och hur man

Läs mer

Huge, hus 1,2,3 BULLERBERÄKNING. Ekvivalent ljudnivå KVARTER 1 AVSER PLAN 1. Huge Fastigheter VÄG- OCH SPÅRTRAFIK SKALA FÖRKLARINGAR

Huge, hus 1,2,3 BULLERBERÄKNING. Ekvivalent ljudnivå KVARTER 1 AVSER PLAN 1. Huge Fastigheter VÄG- OCH SPÅRTRAFIK SKALA FÖRKLARINGAR AVSER PLAN 1 REV # ÄNDRINGEN AVSER SIGN AVSER PLAN 2. REV # ÄNDRINGEN AVSER SIGN AVSER PLAN 3,4,5. REV # ÄNDRINGEN AVSER SIGN AVSER PLAN 6. REV # ÄNDRINGEN AVSER SIGN AVSER PLAN 7. REV # ÄNDRINGEN AVSER

Läs mer

Att använda pekare i. C-kod

Att använda pekare i. C-kod Att använda pekare i C-kod (Bör användas av de som känner sig lite hemma med C-programmering!) Rev 1, 2005-11-23 av Ted Wolfram www.wolfram.se Syfte: Man kan tycka att det är komplicerat att använda pekare

Läs mer

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000

Läs mer

Föreläsning 7: Syntaxanalys

Föreläsning 7: Syntaxanalys DD2458, Problemlösning och programmering under press Föreläsning 7: Syntaxanalys Datum: 2009-10-27 Skribent(er): Carl-Fredrik Sundlöf, Henrik Sandström, Jonas Lindmark Föreläsare: Fredrik Niemelä 1 Syntaxanalys

Läs mer

Programmering A. Johan Eliasson johane@cs.umu.se

Programmering A. Johan Eliasson johane@cs.umu.se Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer

Läs mer

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i

Läs mer

Lennart Carleson. KTH och Uppsala universitet

Lennart Carleson. KTH och Uppsala universitet 46 Om +x Lennart Carleson KTH och Uppsala universitet Vi börjar med att försöka uppskatta ovanstående integral, som vi kallar I, numeriskt. Vi delar in intervallet (, ) i n lika delar med delningspunkterna

Läs mer

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1) Föreläsning 10 STRING OCH STRINGBUILDER; VARIABLERS SYNLIGHET Att deklarera och att använda variabler När vi deklarerar en variabel, t ex int x; inför vi en ny variabel med ett namn och en typ. När namnet

Läs mer

Föreläsning 6: Introduktion av listor

Föreläsning 6: Introduktion av listor Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.

Läs mer

lex källkod lex.l lexkompilator lex.yy.c C- kompilator lex.yy.c a.out sekvens av tokens a.out input specifikation av tokens mha reguljära uttryck

lex källkod lex.l lexkompilator lex.yy.c C- kompilator lex.yy.c a.out sekvens av tokens a.out input specifikation av tokens mha reguljära uttryck input läs tecken stoppa tillbaka ett tecken skicka ett token och dess attribut parser Eliminera white space och kommentarer Gruppera lästa tecken till tokens identifierare, nyckelord, numeriska konstanter,

Läs mer

Tentamen OOP 2015-03-14

Tentamen OOP 2015-03-14 Tentamen OOP 2015-03-14 Anvisningar Fråga 1 och 2 besvaras på det särskilt utdelade formuläret. Du får gärna skriva på bägge sidorna av svarsbladen, men påbörja varje uppgift på ett nytt blad. Vid inlämning

Läs mer

Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08

Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Programmering A C# VT 2010 Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Innehåll Hjälp och referenser... 3 Kap 1 Introduktion... 3 Steg för steg... 3 Kapitel 2 Variabler...

Läs mer

Träd, binära träd och sökträd. Koffman & Wolfgang kapitel 6, avsnitt 1 4

Träd, binära träd och sökträd. Koffman & Wolfgang kapitel 6, avsnitt 1 4 Träd, binära träd och sökträd Koffman & Wolfgang kapitel 6, avsnitt 1 4 1 Träd Träd är ickelinjära och hierarkiska: i motsats till listor och fält en trädnod kan ha flera efterföljare ( barn ) men bara

Läs mer

Inledande programmering med C# (1DV402) Summera med while"-satsen

Inledande programmering med C# (1DV402) Summera med while-satsen Summera med while"-satsen Upphovsrätt för detta verk Inledande programmering med C# (1DV402) Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får

Läs mer

Dugga Datastrukturer (DAT036)

Dugga Datastrukturer (DAT036) Dugga Datastrukturer (DAT036) Duggans datum: 2012-11-21. Författare: Nils Anders Danielsson. För att en uppgift ska räknas som löst så måste en i princip helt korrekt lösning lämnas in. Enstaka mindre

Läs mer

DD1361 Programmeringsparadigm. Carina Edlund

DD1361 Programmeringsparadigm. Carina Edlund DD1361 Programmeringsparadigm Carina Edlund carina@nada.kth.se Funktionell programmering Grundidéen med funktionell programmering är att härma matematiken och dess funktionsbegrepp. Matematiskt funktionsbegrepp

Läs mer

Grafer. 1 Grafer. Grunder i matematik och logik (2015) 1.1 Oriktade grafer. Marco Kuhlmann

Grafer. 1 Grafer. Grunder i matematik och logik (2015) 1.1 Oriktade grafer. Marco Kuhlmann Marco Kuhlmann 1 En graf är en struktur av prickar förbundna med streck. Ett tidsenligt exempel på en sådan struktur är ett social nätverk, där prickarna motsvarar personer och en streck mellan två prickar

Läs mer

"if"-satsen. Inledande programmering med C# (1DV402)

if-satsen. Inledande programmering med C# (1DV402) "if"-satsen Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i verket if-satsen

Läs mer

Föreläsning 7. Träd och binära sökträd

Föreläsning 7. Träd och binära sökträd Föreläsning 7 Träd och binära sökträd Föreläsning 7 Träd Binära träd Binärt sökträd som ADT Implementering av binärt sökträd Travestera binärt sökträd Sökning Insättning/borttagning Läsanvisningar och

Läs mer

Programmeringsteknik med C och Matlab

Programmeringsteknik med C och Matlab Programmeringsteknik med C och Matlab Kapitel 2: C-programmeringens grunder Henrik Björklund Umeå universitet Björklund (UmU) Programmeringsteknik 1 / 32 Mer organisatoriskt Imorgon: Datorintro i lab Logga

Läs mer

Twincat: PLC Control

Twincat: PLC Control Dokument Förklaring Dat. Revision KI-221-003-003 Kom igång med trukturerad Text 080402 1.0 Twincat: PLC Control Kom igång med Strukturerad Text (ST) programmering 1. Kod exempel. a. Exemplen som demonstreras

Läs mer

Inlämningsuppgift MiniPlotter

Inlämningsuppgift MiniPlotter LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap EDAA01 Programmeringsteknik fördjupningskurs Inlämningsuppgift MiniPlotter I den här uppgiften ska ett program som ritar grafer av matematiska funktioner

Läs mer

Tentamen Programmeringsteknik II och NV2 (alla varianter) 2008-12-10. Skriv bara på framsidan av varje papper.

Tentamen Programmeringsteknik II och NV2 (alla varianter) 2008-12-10. Skriv bara på framsidan av varje papper. Tentamen Programmeringsteknik II och NV2 (alla varianter) 2008-12-10 Skrivtid: 0800-1300 Inga hjälpmedel. Tänk på följande Maximal poäng är 40. För betygen 3 krävs 18 poäng. För betygen 4, 5 kommer något

Läs mer

12. Relationer och funktioner

12. Relationer och funktioner Objektorienterad modellering och diskreta strukturer 12. Relationer och funktioner Sven Gestegård Robertz Datavetenskap, LTH 2014 Laboration 4 Syntaxanalys Grammatik för (vår delmängd av) satslogiska uttryck

Läs mer

Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut

Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut F5: Filhantering in- och utmatning (kap. 2 och 8) 1 Utskrift på skärm, inläsning från tangentbord (kap. 2) Spara och hämta variabler med save och load (kap. 2) Kommandot textread Mer avancerad filhantering:

Läs mer

2.4. Teckensträngar och logiska uttryck

2.4. Teckensträngar och logiska uttryck 2.4. Teckensträngar och logiska uttryck I Fortran sparar man text i variabler av typen CHARACTER. För varje tecken reserveras normalt 1 byte i minnet. För att deklarera en teckenvariabel TEXT och samtidigt

Läs mer

Grammatik. BNF-grammatik

Grammatik. BNF-grammatik Grammatik Objektorienterad modellering och diskreta strukturer / design Grammatik Reguljära uttryck klarar inte av att beskriva mängden av aritmetiska uttryck. Lennart Andersson Reviderad 2010 10 07 2010

Läs mer

1 Ändra kolumnbredd och radhöjd

1 Ändra kolumnbredd och radhöjd 330 1 Ändra kolumnbredd och radhöjd När en cell innehåller mycket data så är det lämpligt att öka kolumnbredden eller radhöjden för att informationen ska bli lättare att läsa. Det finns också tillfällen

Läs mer

TDP002 - Imperativ programmering

TDP002 - Imperativ programmering . TDP002 - Imperativ programmering Strängar och IO Eric Elfving Institutionen för datavetenskap 26 augusti 2015 Översikt 2/18 Inläsning och utskrift Typkonvertering och strängformatering Teckenkodning

Läs mer

Övningar Dag 2 En första klass

Övningar Dag 2 En första klass Kurs i C++ Sid 1 (5) Övningar Dag 2 En första klass Denna övning går ut på att steg för steg bygga upp en klass och skapa objekt. Vi kommer att utgå från en sammansatt datatyp i en struct och parallellt

Läs mer

Kungliga Tekniska Högskolan 2006-03-26. Patrik Dallmann 821107-0274

Kungliga Tekniska Högskolan 2006-03-26. Patrik Dallmann 821107-0274 Kungliga Tekniska Högskolan 2006-03-26 Patrik Dallmann 821107-0274 Patrik Dallmann dallmann@kth.se Inledning Syftet med detta arbete är att undersöka metoder för att upptäcka syftningsfel i vanlig text.

Läs mer

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition. Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Vem är vem på kursen Objektorienterad programvaruutveckling GU (DIT011) Kursansvarig : Katarina Blom, tel 772 10 60 Rum: 6126 (E-huset)

Läs mer

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik för ingenjörer, VT06 2 Repetition Repetition -

Läs mer

Algoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm.

Algoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm. Algoritmanalys Analys av algoritmer används för att uppskatta effektivitet. Om vi t. ex. har n stycken tal lagrat i en array och vi vill linjärsöka i denna. Det betyder att vi måste leta i arrayen tills

Läs mer

Programmerbar logik. Kapitel 4

Programmerbar logik. Kapitel 4 Kapitel 4 Programmerbar logik Programmerbar logik (PLC: Programmable Logic Controller; fi. ohjelmoitava logiikka) är en sorts mikrodatorliknande instrument som är speciellt avsedda för logik- och sekvensstyrningsproblem.

Läs mer

Föreläsning 13 och 14: Binära träd

Föreläsning 13 och 14: Binära träd Föreläsning 13 och 14: Binära träd o Binärträd och allmänna träd o Rekursiva tankar för binärträd o Binära sökträd Binärträd och allmänna träd Stack och kö är två viktiga datastrukturer man kan bygga av

Läs mer

Lathund för webbredaktörer. Så skriver du på webben

Lathund för webbredaktörer. Så skriver du på webben Lathund för webbredaktörer Så skriver du på webben 1 Disposition En bra struktur kännetecknas av att det är enkelt för besökaren att förstå var den hittar det den letar efter. Oavsett om det handlar om

Läs mer

8-1 Formler och uttryck. Namn:.

8-1 Formler och uttryck. Namn:. 8-1 Formler och uttryck. Namn:. Inledning Ibland vill du lösa lite mer komplexa problem. Till exempel: Kalle är dubbelt så gammal som Stina, och tillsammans är de 33 år. Hur gammal är Kalle och Stina?

Läs mer

1 Skapa Tabell...2. 2 Skapa Relationer...20. 3 Redigera Relationer...24. 4 Redigera Fält i Tabell...26. 5 Lägga till Poster i Tabell...

1 Skapa Tabell...2. 2 Skapa Relationer...20. 3 Redigera Relationer...24. 4 Redigera Fält i Tabell...26. 5 Lägga till Poster i Tabell... Kapitel 5 Tabell 1 Skapa Tabell...2 1.1 Tabellfönstret... 4 1.2 Fältegenskaper... 8 1.3 Primärnyckel... 11 1.4 Spara Tabell... 12 1.5 Tabellguiden... 12 2 Skapa Relationer...20 3 Redigera Relationer...24

Läs mer

1. a) (2p) Vilket aritmetiskt uttryck beskrivs av det binära trädet

1. a) (2p) Vilket aritmetiskt uttryck beskrivs av det binära trädet Algoritmik SV1, 29 mars 2005 1 1. a) (2p) Vilket aritmetiskt uttryck beskrivs av det binära trädet + + y x z x y + y x z y u b) (3p) Räkna upp trädets noder i pre-, in- respektive postordning. c) (1p)

Läs mer

Sta. Sta. Sta. ulricaelisson.se. Scratch STARTA PROVA KODEN KÖR! TIPS. Rita en ny sprite. Eller välj en från mappen

Sta. Sta. Sta. ulricaelisson.se. Scratch STARTA PROVA KODEN KÖR! TIPS. Rita en ny sprite. Eller välj en från mappen Tryck på en tangent för att ändar färg på figuren. Rita en ny sprite. Eller välj en från mappen Tryck på mellanslag för att byta färg Ju fler färger det är på din sprite, desto större skillnad kommer du

Läs mer

Flera kvantifierare Bevis Direkt bevis Motsägelse bevis Kontrapositivt bevis Fall bevis Induktionsprincipen. x y (x > 0) (y > 0) xy > 0 Domän D = R

Flera kvantifierare Bevis Direkt bevis Motsägelse bevis Kontrapositivt bevis Fall bevis Induktionsprincipen. x y (x > 0) (y > 0) xy > 0 Domän D = R Föreläsning Flera kvantifierare Bevis Direkt bevis Motsägelse bevis Kontrapositivt bevis Fall bevis Induktionsprincipen För att göra ett påstående av en öppen utsaga med flera variabler behövs flera kvantifierare.

Läs mer

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

Inledande programmering med C# (1DV402) 27+15=42 1 (22) 27+15=42 1 (22) Variabler Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll

Läs mer

Klassdeklaration. Metoddeklaration. Parameteröverföring

Klassdeklaration. Metoddeklaration. Parameteröverföring Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar

Läs mer

Språket Scheme. DAT 060: Introduktion till (funktions)programmering. DrScheme. uttryck. Jacek Malec m. fl. evaluering av uttryck.

Språket Scheme. DAT 060: Introduktion till (funktions)programmering. DrScheme. uttryck. Jacek Malec m. fl. evaluering av uttryck. DAT 060: Introduktion till (funktions)programmering. Jacek Malec m. fl. www.cs.lth.se/home/jacek Malec/dat060 Idag: 1. Kursens innehåll 2. Kursens organisation 3. Programmeringsspråket Scheme 4. Introduktion

Läs mer

Typsystem. Typsystem... Typsystem... Typsystem... 2 *

Typsystem. Typsystem... Typsystem... Typsystem... 2 * Typsystem Typsystem finns i alla programmeringsspråk. Avsikten med typsystem är att kontrollera att uttryck är säkra i den bemärkelsen att innebörden i operanderna är klar och inte är motsägelsefull och

Läs mer

Instruktion arbeta med rapportmallen

Instruktion arbeta med rapportmallen Instruktion arbeta med rapportmallen 29 oktober, 2015 INNEHÅLLSFÖRTECKNING 1 BÖRJA ANVÄNDA MALLEN 3 1.1 FYLLA I INFORMATION 3 1.2 INSTÄLLNING VISA /DÖLJ 3 1.3 INSTÄLLNING VISA TABELLSTÖDLINJER 3 2 FORMATMALLAR

Läs mer

Programmering Grundkurs (6H2950) Grundläggande Programmering (6A2001)

Programmering Grundkurs (6H2950) Grundläggande Programmering (6A2001) Programmering Grundkurs (6H2950) Grundläggande Programmering (6A2001) Skrivtid: 8:15-13:15 Datum: Måndagen 2005-03-07 Tentamen består av 7 sidor Hjälpmedel: Förutom dator med installerad Borland C++ 5.02,

Läs mer

ANDREAS REJBRAND 2014-04-25 Matematik http://www.rejbrand.se. Numeriska serier. Andreas Rejbrand, april 2014 1/29

ANDREAS REJBRAND 2014-04-25 Matematik http://www.rejbrand.se. Numeriska serier. Andreas Rejbrand, april 2014 1/29 Numeriska serier Andreas Rejbrand, april 2014 1/29 1 Inledning Författarens erfarenhet säger att momentet med numeriska serier är ganska svårt för många studenter i inledande matematikkurser på högskolenivå.

Läs mer

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19 Typsystem Typsystem finns i alla programmeringsspråk. Avsikten med typsystem är att kontrollera att uttryck är säkra i den bemärkelsen att innebörden i operanderna är klar och inte är motsägelsefull och

Läs mer

Föreläsning 4: Kombinatorisk sökning

Föreläsning 4: Kombinatorisk sökning DD2458, Problemlösning och programmering under press Föreläsning 4: Kombinatorisk sökning Datum: 2009-09-25 Skribent(er): Kristina Nylander, Dennis Ekblom, Marcus Öman Föreläsare: Fredrik Niemelä 1 Introduktion

Läs mer

ELEVHJÄLP. Diskussion s. 2 Åsikter s. 3. Källkritik s. 11. Fördelar och nackdelar s. 4. Samarbete s. 10. Slutsatser s. 9. Konsekvenser s.

ELEVHJÄLP. Diskussion s. 2 Åsikter s. 3. Källkritik s. 11. Fördelar och nackdelar s. 4. Samarbete s. 10. Slutsatser s. 9. Konsekvenser s. Källkritik s. 11 Diskussion s. 2 Åsikter s. 3 Samarbete s. 10 Slutsatser s. 9 ELEVHJÄLP Fördelar och nackdelar s. 4 Konsekvenser s. 5 Lösningar s. 8 Perspektiv s. 7 Likheter och skillnader s. 6 1 Resonera/diskutera/samtala

Läs mer

Introduktion till programmering. Standardfunktioner. Vad används datorer till? Standardfunktioner. Föreläsning 2. Prelude. $ ghci...

Introduktion till programmering. Standardfunktioner. Vad används datorer till? Standardfunktioner. Föreläsning 2. Prelude. $ ghci... Introduktion till programmering Standardfunktioner Tecken och strängar Utskrifter och effekter Föreläsning 2 Prelude Alla fördefinierade funktioner vi använder definieras i modulen Prelude. Denna modul

Läs mer

Dekomponering av löneskillnader

Dekomponering av löneskillnader Lönebildningsrapporten 2013 133 FÖRDJUPNING Dekomponering av löneskillnader Den här fördjupningen ger en detaljerad beskrivning av dekomponeringen av skillnader i genomsnittlig lön. Först beskrivs metoden

Läs mer

Automatateori (2) Idag: Sammanhangsfria språk. Dessa kan uttryckas med Grammatik PDA

Automatateori (2) Idag: Sammanhangsfria språk. Dessa kan uttryckas med Grammatik PDA Automatateori (2) Idag: Sammanhangsfria språk Dessa kan uttryckas med Grammatik PDA Grammatik = språkregler Ett mer kraftfullt sätt att beskriva språk. En grammatik består av produktionsregler (andra ord

Läs mer

Lite fakta om proteinmodeller, som deltar mycket i den här tentamen

Lite fakta om proteinmodeller, som deltar mycket i den här tentamen Skriftlig deltentamen, FYTA12 Statistisk fysik, 6hp, 28 Februari 2012, kl 10.15 15.15. Tillåtna hjälpmedel: Ett a4 anteckningsblad, skrivdon. Totalt 30 poäng. För godkänt: 15 poäng. För väl godkänt: 24

Läs mer

Att göra spel med Game Maker. Rum. Grundläggande delar. Gamemaker, dagens föreläsning. Programmeringsmodell

Att göra spel med Game Maker. Rum. Grundläggande delar. Gamemaker, dagens föreläsning. Programmeringsmodell Gamemaker, dagens föreläsning Vad innehåller Gamemaker? Rum Objekt Händelser Aktioner Sprites Ljud Variabler och uttryck Live exempel: Början på Pac Man Att göra spel med Game Maker Programmeringsmodell

Läs mer

F5 Introduktion till digitalteknik

F5 Introduktion till digitalteknik George Boole och paraplyet F5 Introduktion till digitalteknik EDAA05 Roger Henriksson Jonas Wisbrant p = b! (s " r) George Boole (1815-1864) Professor i Matematik, Queens College, Cork, Irland 2 Exklusiv

Läs mer

SMD 134 Objektorienterad programmering

SMD 134 Objektorienterad programmering SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning

Läs mer

Kapitel 22: Överföring av variabler och uppgradering 365. I fönstret VAR-LINK visas en lista med definierade variabler, Flashprogram

Kapitel 22: Överföring av variabler och uppgradering 365. I fönstret VAR-LINK visas en lista med definierade variabler, Flashprogram Kapitel 22: Överföring av variabler och uppgradering 22 Länka två enheter... 366 Överföra variabler, Flash-program och mappar... 367 Överföra variabler under från ett program... 371 Uppgradera programkod

Läs mer

Programmeringsuppgifter 1

Programmeringsuppgifter 1 Programmeringsuppgifter 1 Redovisning: Ni demo-kör och förklarar för handledaren några av de program ni gjort. Ni behöver inte hinna allt, redovisa så långt ni kommit. Om ni hinner mer kan ni alltid redovisa

Läs mer

12. Relationer och funktioner

12. Relationer och funktioner Objektorienterad modellering och diskreta strukturer 12. Relationer och funktioner Sven Gestegård Robertz Institutionen för datavetenskap, LTH 2013 Laboration 4 Syntaxanalys Grammatik för (vår delmängd

Läs mer

RödGrön-spelet Av: Jonas Hall. Högstadiet. Tid: 40-120 minuter beroende på variant Material: TI-82/83/84 samt tärningar

RödGrön-spelet Av: Jonas Hall. Högstadiet. Tid: 40-120 minuter beroende på variant Material: TI-82/83/84 samt tärningar Aktivitetsbeskrivning Denna aktivitet är utformat som ett spel som spelas av en grupp elever. En elev i taget agerar Gömmare och de andra är Gissare. Den som är gömmare lagrar (gömmer) tal i några av räknarens

Läs mer

6 Rekursion. 6.1 Rekursionens fyra principer. 6.2 Några vanliga användningsområden för rekursion. Problem löses genom:

6 Rekursion. 6.1 Rekursionens fyra principer. 6.2 Några vanliga användningsområden för rekursion. Problem löses genom: 6 Rekursion 6.1 Rekursionens fyra principer Problem löses genom: 1. förenkling med hjälp av "sig själv". 2. att varje rekursionssteg löser ett identiskt men mindre problem. 3. att det finns ett speciellt

Läs mer

Symbolisk data. quote. (define a 1) (define b 2) (jacek johan david) (list a b)

Symbolisk data. quote. (define a 1) (define b 2) (jacek johan david) (list a b) Symbolisk data (1 2 3 4) (a b c d) (jacek johan david) ((jacek "jacek@cs.lth.se") (johan "johang@cs.lth.se") (david "dat99dpe@ludat.lth.se")) ((anna 13) (per 11) (klas 9) (eva 4)) (+ (* 23 4) (/ y x))

Läs mer

Föreläsning 7: Syntaxanalys

Föreläsning 7: Syntaxanalys DD2458, Problemlösning och programmering under press Föreläsning 7: Syntaxanalys Datum: 2007-10-30 Skribent(er): Erik Hammar, Jesper Särnesjö Föreläsare: Mikael Goldmann Denna föreläsning behandlade syntaxanalys.

Läs mer

8-4 Ekvationer. Namn:..

8-4 Ekvationer. Namn:.. 8-4 Ekvationer. Namn:.. Inledning Kalle är 1,3 gånger så gammal som Pelle, och tillsammans är de 27,6 år. Hur gamla är Kalle och Pelle? Klarar du att lösa den uppgiften direkt? Inte så enkelt! Ofta resulterar

Läs mer

Eget val inom hemtjänsten

Eget val inom hemtjänsten UTFÖRARE Eget val inom hemtjänsten Hur du som företagare blir extern utförare av hemtjänst 1 Möjligheter och begränsningar! Från och med hösten 2011 inför Falköpings kommun eget val av utförare inom hemtjänsten

Läs mer

Tal Räknelagar Prioriteringsregler

Tal Räknelagar Prioriteringsregler Tal Räknelagar Prioriteringsregler Uttryck med flera räknesätt beräknas i följande ordning: 1. Parenteser 2. Exponenter. Multiplikation och division. Addition och subtraktion Exempel: Beräkna 10 5 7. 1.

Läs mer

Kontextfria grammatiker

Kontextfria grammatiker Kontextfria grammatiker Kontextfria grammatiker 1 Kontextfria grammatiker En kontextfri grammatik består av produktioner (regler) på formen S asb S T T # Vänsterledet består av en icke-terminal (variabel)

Läs mer

Det första steget blir att titta i Svensk MeSH för att se om vi kan hitta några bra engelska termer att ha med oss på sökresan.

Det första steget blir att titta i Svensk MeSH för att se om vi kan hitta några bra engelska termer att ha med oss på sökresan. Sökexempel - Hälsovägledare Hälsovägledning med inriktning mot olika folkhälsoproblem som t ex rökning, tips på hur man går tillväga för att göra en datasökning och hur man även kontrollerar om artiklarna

Läs mer

DD1361 Programmeringsparadigm. Formella Språk & Syntaxanalys. Per Austrin

DD1361 Programmeringsparadigm. Formella Språk & Syntaxanalys. Per Austrin DD1361 Programmeringsparadigm Formella Språk & Syntaxanalys Föreläsning 3 Per Austrin 2015-11-13 Huvudkoncept hittils: Snabb repetition Formellt språk en mängd strängar Reguljära språk den klass av formella

Läs mer

Innehåll. Föreläsning 11. Organisation av Trie. Trie Ytterligare en variant av träd. Vi har tidigare sett: Informell specifikation

Innehåll. Föreläsning 11. Organisation av Trie. Trie Ytterligare en variant av träd. Vi har tidigare sett: Informell specifikation Innehåll Föreläsning 11 Trie Sökträd Trie och Sökträd 356 357 Trie Ytterligare en variant av träd. Vi har tidigare sett: Oordnat träd där barnen till en nod bildar en mängd Ordnat träd där barnen till

Läs mer

Testning. 1. Inledning

Testning. 1. Inledning Testning 1. Inledning I all ingenjörsmässig verksamhet är testning en vedertagen metod för att fastställa om en hypotes, konstruktion eller produkt är korrekt och fungerar som avsett. Datorprogram är ofta

Läs mer

Textbearbetning i skalet och man-sidor

Textbearbetning i skalet och man-sidor Kapitel 5 Textbearbetning i skalet och man-sidor Vi har redan använt skalkommandon för att göra saker textfiler. Här kommer gomgång av sådana kommandon som vi redan använt, några nya varianter, samt ett

Läs mer

Programkonstruktion och datastrukturer. Formell verifiering eller hur man bevisar att program gör rätt utan att testa dem

Programkonstruktion och datastrukturer. Formell verifiering eller hur man bevisar att program gör rätt utan att testa dem Programkonstruktion och datastrukturer Formell verifiering eller hur man bevisar att program gör rätt utan att testa dem PKD 2012/13 Formell verifiering Sida 1 Uppdaterad 2008-11-28 Formell verifiering:

Läs mer

1-6:an skriver sig till läsning läsåret 2006-2007.

1-6:an skriver sig till läsning läsåret 2006-2007. Utvärdering av projektet 1-6:an skriver sig till läsning läsåret 2006-2007. Teknisk utrustning. Vi startade ht 2005 med att få nya datorer till gupp 1 och grupp 3. Platta skärmar installerades i alla 3

Läs mer

Jämförelse av miljöenkäter. till personal vid Högskolan i Gävle. Undersökningar gjorda i maj 2002 resp i dec. 2003

Jämförelse av miljöenkäter. till personal vid Högskolan i Gävle. Undersökningar gjorda i maj 2002 resp i dec. 2003 1(6) Jämförelse av miljöenkäter till personal vid Högskolan i Gävle Undersökningar gjorda i maj 2002 resp i dec. 2003 Rose-Marie Löf Assistent vid avdelningen för Industriell ekonomi Institutionen för

Läs mer

Olga hittar Finn MARIE DUEDAHL

Olga hittar Finn MARIE DUEDAHL SIDAN 1 Boken handlar om: Olgas mamma och pappa bor inte ihop, men nu ska Olga äntligen få en hel vecka, tillsammans med pappa. Hon är så glad, för att de ska ut och resa tillsammans. Men när pappa kommer,

Läs mer

En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning.

En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning. F5 LE1460 Analog elektronik 2005-11-23 kl 08.15 12.00 Alfa En ideal op-förstärkare har oändlig inimedans, noll utimpedans och oändlig förstärkning. ( Impedans är inte samma sak som resistans. Impedans

Läs mer

TENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13:15

TENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13:15 TENTAMEN I PROGRAMSPRÅK -- DVG C01 140605 kl. 08:15-13:15 Ansvarig Lärare: Donald F. Ross Hjälpmedel: Bilaga A: BNF-definition Betygsgräns: Kurs: Max 60p, Med beröm godkänd 50p, Icke utan beröm godkänd

Läs mer

Grunderna i SQL del 1

Grunderna i SQL del 1 Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 3 Kap. 4 Kap. 5 utom

Läs mer

Kom igång med ArcGIS Online - Snabba steg för att börja arbeta

Kom igång med ArcGIS Online - Snabba steg för att börja arbeta Kom igång med ArcGIS Online - Snabba steg för att börja arbeta https://twitter.com/esrisverige http://www.esri.se/ Svårighetsgrad: Enkel Tidsåtgång: Ca 15 min Målgrupp: Administratör för kontot Inledning

Läs mer

Hjälpmedel för kompilatorkonstruktion, DVB004

Hjälpmedel för kompilatorkonstruktion, DVB004 Hjälpmedel för kompilatorkonstruktion, DVB004 Version 4.2 021104 Göran Fries 031104 GF Kompilatorn kan lämpligen konstrueras i tre ganska fristående pass (p1,p2,p3). Första passet gör en lexikalisk analys,

Läs mer

Tentamen på kursen DA7351, Programmering 1. 051102, kl 08.15-12.15. Malmö högskola Teknik och samhälle. DA7351, Programmering 1 1 051102

Tentamen på kursen DA7351, Programmering 1. 051102, kl 08.15-12.15. Malmö högskola Teknik och samhälle. DA7351, Programmering 1 1 051102 Tentamen på kursen DA7351, Programmering 1 051102, kl 08.15-12.15 Tillåtna hjälpmedel: Valfri bok om Java. Vid bedömning av lösningarna tas hänsyn till om dessa uppfyller de krav på programkvalitet (strukturering,

Läs mer

Kursombud sökes! Kursens syfte är att ge en introduktion till metoder för att förutsäga realtidsegenskaper hos betjäningssystem, i synnerhet för data- och telekommunikationssystem. Såväl enkla betjäningssystem,

Läs mer

Sidor i boken 110-113, 68-69 2, 3, 5, 7, 11,13,17 19, 23. Ett andragradspolynom Ett tiogradspolynom Ett tredjegradspolynom

Sidor i boken 110-113, 68-69 2, 3, 5, 7, 11,13,17 19, 23. Ett andragradspolynom Ett tiogradspolynom Ett tredjegradspolynom Sidor i boken 110-113, 68-69 Räkning med polynom Faktorisering av heltal. Att primtalsfaktorisera ett heltal innebär att uppdela heltalet i faktorer, där varje faktor är ett primtal. Ett primtal är ett

Läs mer

Hälsoenkät SF-36. Bilaga 1

Hälsoenkät SF-36. Bilaga 1 Bilaga 1 Hälsoenkät SF-36 Instruktion: Detta formulär innehåller frågor om hur Du ser på Din hälsa. Informationen ska hjälpa till att följa hur Du mår och fungerar i Ditt daglig liv.besvara frågorna genom

Läs mer

Introduktion till formella metoder Programmeringsmetodik 1. Inledning

Introduktion till formella metoder Programmeringsmetodik 1. Inledning Introduktion till formella metoder Programmeringsmetodik 1. Inledning Fokus på imperativa program (ex. C, Java) program betyder härefter ett imperativt program Program bestäms i en abstrakt mening av hur

Läs mer

Användar- och systemdokumentation

Användar- och systemdokumentation Användar- och systemdokumentation Linköpings universitet Examinator:, IDA marme647@student.liu.se Utskriftsdatum: Innehållsförteckning Inledning... 3 Användarhandledning... 4 Systemkrav och installation...4

Läs mer

1 Funktioner och procedurell abstraktion

1 Funktioner och procedurell abstraktion 1 Funktioner och procedurell abstraktion Det som gör programkonstruktion hanterlig och övergripbar och överhuvudtaget genomförbar är möjligheten att dela upp program i olika avsnitt, i underprogram. Vår

Läs mer

Objektorienterad programmering D2

Objektorienterad programmering D2 Objektorienterad programmering D2 Laboration nr 2. Syfte Att få förståelse för de grundläggande objektorienterade begreppen. Redovisning Källkoden för uppgifterna skall skickas in via Fire. För senaste

Läs mer

Mål för tema Makt och demokrati år 6-7

Mål för tema Makt och demokrati år 6-7 Mål för tema Makt och demokrati år 6-7 Svenska: Under tema Makt och demokrati ska du: Skriva en skönlitterär text och öva förmågan att bearbeta dina texter vad gäller styckeindelning, textens röda tråd,

Läs mer

Språket, individen och samhället VT08

Språket, individen och samhället VT08 Språket, individen och samhället VT08 Barns och vuxnas andraspråksinlärning Tvåspråkighet, kognition, m.m. Ellen Breitholtz 1. Barns och vuxnas andraspråksinlärning Vem är bäst? Vem är bäst på att lära

Läs mer

varandra. Vi börjar med att behandla en linjes ekvation med hjälp av figur 7 och dess bildtext.

varandra. Vi börjar med att behandla en linjes ekvation med hjälp av figur 7 och dess bildtext. PASS 8 EKVATIONSSYSTEM OCH EN LINJES EKVATION 8 En linjes ekvation En linjes ekvation kan framställas i koordinatsystemet Koordinatsystemet består av x-axeln och yaxeln X-axeln är vågrät och y-axeln lodrät

Läs mer

Frågor och Svar - Dräger Alcotest 3000

Frågor och Svar - Dräger Alcotest 3000 Frågor och Svar - Dräger Alcotest 3000 Vad skiljer olika alkomätare åt? Dräger kommenterar aldrig konkurrenters produkter. Som riktlinje för dig som konsument finns det dock ett antal saker som brukar

Läs mer

Alfabeten, strängar och språk. String

Alfabeten, strängar och språk. String Alfabeten, strängar och språk Objektorienterad modellering och diskreta strukturer / design Språk och reguljära uttryck Ett alfabet är en ändlig icketom mängd vars element kallas symboler. Lennart Andersson

Läs mer

KLOKA FRÅGOR OM ÄLDRES LÄKEMEDELSBEHANDLING ATT STÄLLA I SJUKVÅRDEN

KLOKA FRÅGOR OM ÄLDRES LÄKEMEDELSBEHANDLING ATT STÄLLA I SJUKVÅRDEN KLOKA FRÅGOR OM ÄLDRES LÄKEMEDELSBEHANDLING ATT STÄLLA I SJUKVÅRDEN Kloka frågor vänder sig till dig som är äldre och som använder läkemedel. Med stigande ålder blir det vanligare att man behöver läkemedel.

Läs mer

ELEKTRICITET. Vad använder vi elektricitet till? Hur man använder elektricitet?

ELEKTRICITET. Vad använder vi elektricitet till? Hur man använder elektricitet? ELEKTRICITET Vad använder vi elektricitet till? Hur man använder elektricitet? ELEKTRICITET I EN KRETS En elektrisk krets 1. Slutenkrets 2. Öppenkrets KOPPLINGSSCHEMA Komponenter i en krets Batteri /strömkälla

Läs mer