MAT1030 Diskret matematikk



Like dokumenter
MAT1030 Plenumsregning 3

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk

KONTROLLSTRUKTURER. MAT1030 Diskret matematikk. Kontrollstrukturer. Kontrollstrukturer. Eksempel (Ubegrenset while-løkke)

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk

Kapittel 3: Litt om representasjon av tall

Kapittel 3: Litt om representasjon av tall

Forelesning 2. Flere pseudokoder. Representasjoner av tall. Dag Normann januar 2008 KONTROLLSTRUKTURER. Kontrollstrukturer. Kontrollstrukturer

MAT1030 Diskret Matematikk

MAT1030 Diskret Matematikk

Velkommen til plenumsregning for MAT1030. MAT1030 Diskret matematikk. Repetisjon: Algoritmer og pseudokode. Eksempel fra boka. Eksempel

MAT1030 Diskret matematikk

MAT1030 Forelesning 3

Oppsummering av Uke 3. MAT1030 Diskret matematikk. Binære tall. Oppsummering av Uke 3

MAT1030 Forelesning 2

Plenumsregning 1. MAT1030 Diskret Matematikk. Repetisjon: Algoritmer og pseudokode. Velkommen til plenumsregning for MAT1030

MAT1030 Diskret Matematikk

Valg av kontaktpersoner/tillitsvalgte. MAT1030 Diskret matematikk. Oppsummering av kapittel 2. Representasjon av hele tall

Plenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk

I Kapittel 2 lærte vi om tall i alternative tallsystemer, i hovedsak om binære tall, oktale tall og heksadesimale tall.

Representasjon av tall på datamaskin Kort innføring for MAT-INF1100L

Mer om representasjon av tall

Reelle tall på datamaskin

MAT1030 Plenumsregning 1

Repetisjon og mer motivasjon. MAT1030 Diskret matematikk. Repetisjon og mer motivasjon

Grafteori. MAT1030 Diskret matematikk. Induksjonsbevis

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk

Oppgaver fra forelesningene. MAT1030 Diskret matematikk. Oppgave (fra forelesningen 10/3) Definisjon. Plenumsregning 9: Diverse ukeoppgaver

Teori og oppgaver om 2-komplement

Vi som skal undervise. MAT1030 Diskret matematikk. Hva er diskret matematikk? Hva er innholdet i MAT1030?

MAT1030 Diskret Matematikk Forelesningsnotater Våren 2010

Forelesning 23. MAT1030 Diskret Matematikk. Repetisjon og mer motivasjon. Repetisjon og mer motivasjon. Forelesning 23: Grafteori.

Plenumsregning 10. Diverse ukeoppgaver. Roger Antonsen april Vi øver oss litt på løse rekurrenslikninger.

Rekurrens. MAT1030 Diskret matematikk. Rekurrens. Rekurrens. Eksempel. Forelesning 16: Rekurrenslikninger. Dag Normann

MAT1030 Diskret matematikk

Innledning. MAT1030 Diskret matematikk. Kapittel 11. Kapittel 11. Forelesning 33: Repetisjon

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

Forelesning 30: Kompleksitetsteori

INF1040 Oppgavesett 7: Tall og geometrier

INF1040 løsningsforslag oppgavesett 7: Tall og geometrier

Tall. Posisjons-tallsystemer. Representasjon av heltall. Tall positive, negative heltall, flytende tall. Tekst ASCII, UNICODE XML, CSS

Repetisjon. MAT1030 Diskret Matematikk. Oppsummering. Oppsummering. Forelesning 15: Rekursjon og induksjon. Roger Antonsen

MAT1030 Diskret Matematikk

Velkommen til MAT1030!

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

Grafteori. MAT1030 Diskret Matematikk. Repetisjon og mer motivasjon. Repetisjon og mer motivasjon. Forelesning 23: Grafteori.

MAT1030 Diskret Matematikk

MAT1030 Diskret Matematikk

Kapittel 6: Funksjoner

MAT1030 Diskret Matematikk

Forelesning 29: Kompleksitetsteori

Tall. Binære regnestykker. Binære tall positive, negative heltall, flytende tall

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk Forelesningsnotater Våren Universitetet i Oslo

MAT1030 Diskret Matematikk Forelesningsnotater Våren 2010

MAT1030 Diskret Matematikk Forelesningsnotater Våren 2010

MAT1030 Diskret Matematikk Forelesningsnotater Våren 2010

Kapittel 6: Funksjoner

Kapittel 6: Funksjoner

Generell induksjon og rekursjon. MAT1030 Diskret matematikk. Generell induksjon og rekursjon. Generell induksjon og rekursjon.

Forelesning 1. Algoritmer, pseudokoder og kontrollstrukturer. Dag Normann januar Vi som skal undervise. Hva er diskret matematikk?

MAT1030 Forelesning 23

MAT1030 Diskret Matematikk

Ukeoppgaver fra kapittel 10 & Induksjonsbevis

Ukeoppgaver fra kapittel 3 & 4

MAT1030 Diskret matematikk

Norsk informatikkolympiade runde

TALL. Titallsystemet et posisjonssystem. Konvertering: Titallsystemet binære tall. Det binære tallsystemet. Alternativ 1.

INF1040 Digital representasjon TALL

UNIVERSITETET I OSLO

MAT1030 Diskret matematikk

Oppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Eksempel

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Dag Normann

MAT1030 Diskret Matematikk

MAT1030 Diskret matematikk. Kompleksitetsteori. Forelesning 29: Kompleksitetsteori. Dag Normann KAPITTEL 13: Kompleksitetsteori. 7.

Bruk piazza for å få rask hjelp til alles nytte!

MAT1030 Diskret Matematikk

MAT1030 Diskret matematikk

I Kapittel 3 så vi på hvordan data, som hele tall og reelle tall, kan representeres som bitsekvenser

MAT1030 Diskret Matematikk

Oppsummering av Kapittel 3. MAT1030 Diskret matematikk LOGIKK. Logikk. Forelesning 5: Logikk

Plenumsregning 9. Diverse ukeoppgaver. Roger Antonsen april Oppgaver fra forelesningene. Oppgave (fra forelesningen 10/3).

MAT1030 Forelesning 28

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Roger Antonsen

Forelesning 33. Repetisjon. Dag Normann mai Innledning. Kapittel 11

Kombinatorikk. MAT1030 Diskret Matematikk. Oppsummering av regneprinsipper

MAT1030 Diskret Matematikk

Introduksjon. MAT1030 Diskret matematikk. Søkealgoritmer for grafer. En graf

MAT1030 Diskret matematikk

MAT1030 Diskret Matematikk

Introduksjon. MAT1030 Diskret Matematikk. Introduksjon. En graf. Forelesning 22: Grafteori. Roger Antonsen

MAT1030 Forelesning 14

MAT1030 Diskret Matematikk

Kapittel 4: Logikk (fortsettelse)

MAT1030 Diskret matematikk

Transkript:

MAT1030 Diskret matematikk Plenumsregning 3: Ukeoppgaver fra kapittel 2 & 3 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 31. januar 2008 Oppgave 2.7 - Horners metode (a) 7216 8 : 7 8+2 58 8+1 465 8+6 3726. Svar: 3726 10 (b) 543517 8 (c) 8CB2 16 : 8 16+12 140 16+11 2251 16+2 36018. Svar: 36018 10 (d) E490DF 16 MAT1030 Diskret matematikk 31. januar 2008 2 Oppgave 2.8 Skriv ned Horners metode som pseudokode. Anta at basen blir gitt som første argument og deretter at tallet som skal overføres til desimal form blir gitt som en liste med sifre. 1. Input base 2. Input x 1,..., x n 3. resultat x 1 4. For i = 2 to n do 4.1. resultat (resultat base) + x i 5. Output resultat MAT1030 Diskret matematikk 31. januar 2008 3 MAT1030 Diskret matematikk 31. januar 2008 4

Oppgave 2.14 Utfør følgende regnestykker i binær aritmetikk: (a) 1101101 2 + 1011110 2 (b) 1001101 2 + 101011 2 (c) 1110011 2 101101 2 (d) 1100010 2 1010111 2 (e) 10011 2 1101 2 (f) 11010 2 10101 2 (g) 110110 2 1001 2 (h) 10110 2 11 2 (3 siffer etter komma) Oppgave 3.1 Finn toerkomplementet til følgende 8-bits binære tall. (a) 11010100 2 (b) 01101001 2 (a) 11010100 2 00101100 2 (b) 01101001 2 10010111 2 Gjennomgått på tavlen. MAT1030 Diskret matematikk 31. januar 2008 5 MAT1030 Diskret matematikk 31. januar 2008 6 Oppgave 3.9 Oppgave 3.6 Hvor mange bit brukes for å lagre 2, 8 10 14 heltall (ikke-negative heltall lagret uten fortegnsbit)? Hvis vi har n bit, så kan vi lagre 2 n heltall. Vi må derfor finne n slik at 2 n = 2, 8 10 14, det vil si n = log 2 (2, 8 10 14 ) = 47.99242 10 48 Uttrykk 1101110100, 1001 2 i normalisert binær form, og finn dens 32-bit-datarepresentasjon. Anta at 8 bit brukes for å lagre eksponenten og at eksponentbiasen er 2 7 1 = 127. 1101110100, 1001 2 = 0, 11011101001001 2 2 10 Fortegnsbitet er 0, siden tallet er positivt. Siden bias er 127, blir eksponentdelen 8-bit-representasjonen av 127 10 + 10 10. Det vil si 01111111 2 + 1010 2 eller 10000000 2 + 1001 2, som er 10001001 2. Signifikanden (mantissen) er 11011101001001 000000000 Svar: 0 1000100 } {{ 1} 1101110 } 10010010 {{ 00000000} eksp.delen signifikanden MAT1030 Diskret matematikk 31. januar 2008 7 MAT1030 Diskret matematikk 31. januar 2008 8

(a: 5894, 376) Oppgave 3.10 Finn 32-bit-datarepresentasjonen av følgende tall. Anta at 8 bit brukes for å lagre eksponenten og at eksponentbiasen er 2 7 1 = 127. (a) 5894, 376 (b) 0, 0387 5894, 376 10 = 1011100000110, 0110000001 2 = 0, 1011100000110 0110000001 2 13 Eksponentdelen er 127 10 + 13 10 = 01111111 2 + 1101 2 = 10001100 2. Signifikanden er 1011100 00011001 10000001 Svar: 0 1000110 } {{ 0} 1011100 } 00011001 {{ 10000001} eksp.delen signifikanden MAT1030 Diskret matematikk 31. januar 2008 9 MAT1030 Diskret matematikk 31. januar 2008 10 (b: 0, 0387) Fortegnsbitet er 1. 0, 0387 10 = 0, 0000 1001111 01000001 11110010 2 = 0, 1001111 01000001 11110010 2 2 4 Eksponentdelen er 127 10 + ( 4 10 ) = 01111111 2 + ( 0100 2 ) = 01111011 2. Signifikanden er 1001111 01000001 11110010. Svar: 1 0111101 } {{ 1} 1001111 } 01000001 {{ 11110010} eksp.delen signifikanden Oppgave 3.11 Gjenta oppgave 3.9 for en 32-bit datamaskin hvor 12 bit brukes til eksponenten og eksponentbiasen er 2 11 1 = 2047. 1101110100, 1001 2 = 0, 11011101001001 2 2 10 Fortegnsbitet er 0. Siden bias er 2047, blir eksponentdelen 12-bit-representasjonen av 2047 10 + 10 10. Det vil si 0111 1111 1111 2 + 1010 2 eller 1000 0000 0000 2 + 1001 2, som er 1000 0000 1001 2. Signifikanden er på 32 13 = 19 bit: 11011101001001 00000 Svar: 0 1000000 } {{ 0100 1} 110 } 11101001 {{ 00100000} eksp.delen: 12 bit signifikanden: 19 bit MAT1030 Diskret matematikk 31. januar 2008 11 MAT1030 Diskret matematikk 31. januar 2008 12

Oppgave 3.12 Finn, på desimalform, det omtrentlige området av positive reelle tall som kan representeres med 64 bit, hvor 11 bit brukes til eksponentdelen og eksponentbiasen er 2 10 1 = 1023 Eksponentdelen tar verdier fra 0 til 2 11 1 = 2047, så eksponentene som kan representeres går fra 1023 (som representeres med 11 nullere) til 1024 (som representeres med 11 enere). Signifikanden m er slik at 0, 1 2 m < 1 2. Det minste tallet som kan representeres er derfor 0, 1 2 2 1023 En øvre grense for hva som kan representeres er 1 2 2 1024. Hva om vi ønsker å uttrykke dette på normalisert form med base 10, det vil si på formen m 10 e, hvor e er et heltall og 0, 1 10 m < 1 10? MAT1030 Diskret matematikk 31. januar 2008 13 MAT1030 Diskret matematikk 31. januar 2008 14 Vi ser først på 0, 1 2 2 1023 = 2 1024 og finner x slik at 10 x = 2 1024. x = log 10 (2 1024 ) = 1024 log 10 (2) = 308, 25472 10 x = 10 308,25472 = 10 0,25472 10 308 = 0, 55626278 10 308 0, 56 10 308 Vi ser så på 1 2 2 1024 og finner x slik at 10 x = 2 1024. x = log 10 (2 1024 ) = 1024 log 10 (2) = 308, 25472 10 x = 10 308,25472 = 10 0,25472 10 308 = 1, 7977115 10 308 = 0, 17977115 10 309 0, 18 10 309 Det minste tallet som kan representeres er 0, 56 10 308. En øvre grense for hva som kan representeres er 0, 18 10 309. MAT1030 Diskret matematikk 31. januar 2008 15 MAT1030 Diskret matematikk 31. januar 2008 16

Oppgave 3.13 Meningen med følgende algoritme er at den skal skrive ut kubene av tall fra 0, 1 til 10 i steg på 0, 1. Forklar problemet som kan oppstå når algoritmen implementeres på en datamaskin. 1. x 0, 0 2. Repeat 2.1. x x + 0, 1 2.2. x cubed x 3 2.3. Output x, x cubed until x = 10, 0 Oppgave 1, side 11, forelesningen 23.01.08 Finn en pseudokode for å beregne toerkomplementet til en sekvens av lengde 8, av lengde 16 og av lengde 32. Problemet ligger i at reelle tall ikke representeres nøyaktig og at vi ikke har noen garanti for at betingelsen x = 10, 0 vil være oppfylt. En løsning er å erstatte x = 10, 0 med x 10, 0 < 0, 05. MAT1030 Diskret matematikk 31. januar 2008 17 MAT1030 Diskret matematikk 31. januar 2008 18 Vi skisserer først en idé og skriver deretter pseudokode. Vi må undersøke sekvensen fra høyre og hoppe over alle nullere. En For-løkke er uegnet, siden vi må avbryte når vi treffer en ener. Det er naturlig å bruke en variabel i for å telle. Denne kan settes til lengden på sekvensen ved start. Siden første bit fra høyre kan være en ener, og vi da må avbryte, er en While-løkke velegnet. Når vi er ute av While-løkken, må vi sørge for at eneren ikke flippes. Deretter skal alle bit til venstre for eneren flippes. Vi må ta høyde for at det ikke trenger å være noen bit igjen, det vil si at i er 0. Derfor kan enda en While-løkke være passende her. 1. Input x 1, x 2,..., x n [n lik 8, 16 eller 32] 2. i n 3. While 1 i and x i = 0 do 3.1. i i 1 4. i i 1 5. While 1 i do 5.1. x i 1 x i 5.2. i i 1 6. Output x 1,..., x n MAT1030 Diskret matematikk 31. januar 2008 19 MAT1030 Diskret matematikk 31. januar 2008 20

Oppgave 2, side 11, forelesningen 23.01.08 Hvis vi tar toerkomplementet av toerkomplementet av en sekvens x 1 x k av nuller og enere, får vi den opprinnelige sekvensen tilbake. Forklar hvorfor. Anta at den første eneren fra høyre fins på posisjon n, hvor 1 n k. Når vi tar toerkomplementet, så vil x 1 til x n 1 flippes og x n til x k forbli urørt. Når vi tar toerkomplementet en gang til skjer det samme igjen: x 1 til x n 1 flippes og x n til x k forblir urørt. Siden x 1 til x n 1 blir flippet to ganger, får vi tilbake utgangspunktet. toerkomplementet: toerkomplementet: x 1 x 2 x 3... x n 1 x n x n+1 x n+2... x k x 1 x 2 x 3... x n 1 x n x n+1 x n+2... x k x 1 x 2 x 3... x n 1 x n x n+1 x n+2... x k MAT1030 Diskret matematikk 31. januar 2008 21