Mängdlära. Satslogik och algoritmer. Sannolikhetslära och kombinatorik Inledande sannolikhetslära Kombinatorik Grafteori
|
|
- Patrik Strömberg
- för 5 år sedan
- Visningar:
Transkript
1 Timplanering Diskret matematik I förslaget har vi fördelat ut 40 timmar på de olika kapitlen och avsnitten. Har ni fler (eller färre) timmar kan ni lätt räkna om så att det passar er egen timplanering. Mängdlära Mängder Relationer Blandade uppgifter De hela talen Motsatta tal och absolutbelopp Positionssystemet Binära och hexadecimala tal Om delbarhet och primtal Faktoruppdelning Restklassaritmetik Blandade uppgifter Satslogik och algoritmer Satslogik Algoritmer Blandade uppgifter Sannolikhetslära och kombinatorik Inledande sannolikhetslära Kombinatorik Grafteori Blandade uppgifter Talföljder Olika typer av talföljder Beskrivning av talföljder Rekursiva talföljder Induktion Blandade uppgifter Prov 4 h 2,5 h 0,5 h 1 h 7 h 0,5 h 1 h 2 h 1 h 1,5 h 1 h 6 h 2,5 h 2,5 h 1 h 7 h 1,5 h 3 h 1 h 1,5 h 13 h 0,5 h 4 h 4 h 3 h 1,5 h 3 h
2 Diskret Matematik Fel i första upplagans första tryckning Sida, uppgift s. 23, 1022 c Ska vara (A B) C. s. 26, 2004 Fel i facit. Fyrorna ändras till treor. s. 28, nedersta raden 10 8 ska ändras till 8 1 s. 43, rad 17 Stryk ordet inte i Nästa tal, dvs. 7, är större än 5,5. s. 44, 2031 Saknar räknarsymbol. s. 59, 2067 Ledtrådstexten fel. Istället för delbart med n ska det vara delbart med 9. s.61, 4:e raden 1010 två ska vara två.. s. 75, 3018 Fel i facit. Istället för 1 i for-satsen ska det vara 100 och istället för 100 ska det vara 999. s. 93, nionde raden från slutet Fel komplementhändelse. Ska vara båda mynten visar inte klave s. 97, programmet dices Saknas S + 1 S efter if-satsen s. 117, 4030a Fel i facit. Termen 6a 2 ba ska 6a 2 b 2 s. 123, 4036b Ta bort kanten mellan B och E annars blir det ingen Euler-slinga. s. 129, 4064b Fel avrundat i facit, ska vara 0,556. s. 130, 4072 Fel i facit, ska vara 90 matcher. s. 130, 4084 Facit till denna uppgift har fått fel nummer, nämligen s. 133, I texten Stina undrar ska ordet rad bytas ut mot ordet match. s. 140, 5007c Fel i facit. Ska vara 6, s. 156, 5042b De tre sista raderna i uppgiften bör ersättas med: Poolen anses tjänlig att bada i när koncentrationen är 1,5 ppm. Hur länge dröjer det? Vad blir koncentrationen efter en månad (30 dagar)? s. 164, 5058 Fel i facit, bör vara ca 450 år. s. 184, 4035a ADECB ändras till ADECBA. s. 184, 4036a ABCDEFD ändras till ABCDEFDA.
3 6 Fördjupningskapitel Diskret matematik I detta kapitel är det tre större uppgifter av fördjupningskaraktär. Vår tanke är att du ska kunna ta del av dem efter intresse. En uppgift behandlar diofantiska ekvationer och de två andra sortering och sökning. Den första uppgiften är av matematisk karaktär medan de två andra är av programmeringskaraktär. Gemensamt för dessa uppgifter är att de inleds av en teoretisk genomgång och därefter följer ett antal problem att lösa. Diofantiska ekvationer En ekvation av utseendet a x+ b y = cdär x och y är variabler och a, b och c är heltalskoefficienter kallas en diofantisk ekvation. Exempel på en diofantisk ekvation är 15 x+ 17 y = 8. En sådan ekvation har heltalslösningar under vissa speciella omständigheter. I andra fall saknar den heltalslösningar. I vårt inledande exempel på Euklides algoritm i kapitel 2 på sidan 51 bestämde vi den största gemensamma delaren till och Den är 84. För att visa att detta verkligen var den största gemensamma delaren skrev vi om algoritmen så att vi fick 84 = Om du studerar ekvationen x y 8316 = 84 ser du att vi har funnit en heltalslösning till den. Lösningen är x = 7 och y = 6. Det kan finnas flera lösningar. Just nu kan vi inte avgöra detta. Resonemanget, som vi har fört, kan generaliseras till ett allmänt fall. Vi påstår nu utan bevis att den diofantiska ekvationen a x+ b y = c har heltalslösning då och endast då största gemensamma delaren till a och b delar c, dvs. c = n SGD(a,b), för något heltal n. En intressant följd av ovanstående är att den diofantiska ekvationen a x+ b y = c har heltalslösningar för alla heltal c om a och b är relativt prima, dvs., SGD(a,b) = 1. Denna slutsats kan vi dra eftersom talet 1 som en självklarhet delar alla heltal c. En ekvation av utseendet a x + b y = c där x och y är variabler och a, b och c är heltalskoefficienter kallas en diofantisk ekvation! Den diofantiska ekvationen a x + b y = c har heltalslösning då och endast då c = n SGD(a,b). Kompl. till , Diskret matematik 1 Liber AB och författarna
4 Exempel 1 Bestäm en heltalslösning till den diofantiska ekvationen a) 105x + 161y = 21 b) 22x 55y = 15 Lösning: a) 105x +161y = 21 Största gemensamma delaren till 161 och 105 bestäms: 161 = som skrivs om 56 = = som skrivs om 49 = = som skrivs om 7 = = Största gemensamma delaren till 105 och 161 är 7 och 7 är en delare till 21. Med hjälp av omskrivningarna får vi: 7 = = 56 1 ( ) = = = 2 ( ) = = Den ursprungliga ekvationen är 21 = 105x + 161y Vi har funnit att 7 = Om vi multiplicerar båda leden i vårt resultat med 3 (= 21/7) får vi 21 = Vi har alltså funnit lösningen x = 9 och y = 6. Vi kontrollerar resultatet på räknaren. Se bilden! b) 22x 55y = 15 Största gemensamma delaren till 55 och 22 bestäms: 55 = = Största gemensamma delaren är 11. Eftersom 11 inte delar 15 saknar ekvationen heltalslösning. Resultat: a) En heltalslösning är x = 9 och y = 6 b) Saknar heltalslösning Kompl. till , Diskret matematik 2 Liber AB och författarna
5 UPPGIFTER 6001 Bestäm en lösning till den diofantiska ekvationen: a) 156x + 66y = 18 b) 21x + 35y = 7 c) 15x + 12y = 2 d) 65x + 33y = Ange något par av heltal a och b så att ekvationen ax + by = 10 har heltalslösningar. Låt oss studera lösningen till ekvationen 105x +161y = 21 genom att lösa ut y och studera den linjära funktionen grafiskt. Vi får x y =, som vi skriver in i funktionseditorn. Ett lämpligt 161 fönster anpassas. Vi har valt att studera funktionen i intervallet 15 < x < 15. I fönstret visas en heltalslösning till ekvationen, den med x = 9 och y = 6. Finns det flera lösningar? Vi söker i tabellen på räknaren och finner då att x = 14 och y = 9 är en heltalslösning. Fortsatt sökande ger att x = 37 och y = 24 är en lösning. Finns det ännu flera? Man kan visa att det finns oändligt många heltalslösningar x = n och y = 6 15 n för ett godtyckligt heltal n, och att detta är alla heltalslösningar. Den lösning vi först fann, får du med n = 0, den andra med n = 1 och den senaste med n = 2. Observera redan nu att den ursprungliga ekvationen 105 x y = 21 kan förenklas. Genom att dividera ekvationens båda led med största gemensamma delaren får vi: Kompl. till , Diskret matematik 3 Liber AB och författarna
6 15 x + 23 y = 3 Efter denna förenkling är koefficienterna 15 och 23, relativt prima. Just dessa båda tal är de som dyker upp som multipler då vi skapar mångfalden av lösningar. Koefficienten för y blir multipeln för x, x = n, och det motsatta talet till koefficienten för x blir multipel för y, y = 6 15n. Förutsättningen för att detta ska vara sant är att koefficienterna i den diofantiska ekvationen är relativt prima. Om koefficienterna a och b i ekvationen, ax + by = c, från början inte är relativt prima måste vi alltså först dividera ekvationen med största gemensamma delaren till a och b. Observera att vi vet att denna också delar c om vi ska få heltalslösningar. *Bevisgången framgår av följande resonemang: Vi studerar på nytt ekvationen 105x +161y = 21. Denna har vi dividerat med SGD(105,161) = 7 och på så sätt fått den enklare ekvationen 15x + 23y = 3. Vi har funnit att x = 9 och y = 6 är en av lösningarna till ekvationen. Det innebär att 15 ( 9) = 3. Låt oss beteckna en allmän lösning med X och Y. För denna gäller då på samma sätt 15 X + 23 Y = 3. Subtrahera ekvationerna: 15 ( X ( 9)) + 23 ( Y 6) = 3 3 Som vi skriver: 15 ( X ( 9)) = 23 ( Y 6) Högra ledet i denna ekvation är delbart med 23. Om vänstra ledet är delbart med 23 så kommer lösningen att vara ett heltal. Vi vet att 15 inte är delbart med 23. Dessa tal är relativt prima. Alltså måste (X ( 9)) vara delbart med 23. Det innebär att vi kan skriva (X ( 9)) som en multipel av 23: (X ( 9)) = 23n, dvs. X = n, för något heltal n. Vi sätter in detta i ekvationen 15 ( X ( 9)) = 23 ( Y 6) och får: 15 ( n ( 9)) = 23 ( Y 6) som förenklas till n= 23 ( Y 6) eller Y = 6 15 n Resonemanget kan generaliseras till godtyckliga tal a, b och c, varmed vi på ett allmänt sätt kan bevisa att ekvationens lösningar har ovanstående struktur. Slutsats: Den diofantiska ekvationen ax + by = c, där a och b förutsätts vara relativt prima, har den allmänna heltalslösningen x = x0 + b n och y = y0 a n för godtyckliga heltal n. Här betecknar x 0 och y 0 en funnen heltalslösning till den diofantiska ekvationen. Kompl. till , Diskret matematik 4 Liber AB och författarna
7 En diofantisk ekvation, Ax + By = C där A och B inte är relativt prima och för vilken SGD(A,B) = k har heltalslösningar om k är en delare till C. Vi dividerar då ekvationen med k och får en ekvation, ax + by = c, där a och b är relativt prima. Exempel 2 Bestäm alla heltalslösningar till den diofantiska ekvationen 15x + 17y = 21 Lösning: Euklides algoritm ger: 17 = som kan skrivas 2 = = som kan skrivas 1 = = Eftersom 15 och 17 är relativt prima finns lösning. Omskrivning ger 1= = 15 (17 15) 7 = ( 7) dvs. 1= ( 7) x = 8 och y = 7 är en lösning till ekvationen 1 = 15x + 17y Den ursprungliga ekvationen är 21 = 15x + 17y. Genom att multiplicera 1 = ( 7) med 21 får vi: 21 1 = 15 (21 8) + 17 ( 7 21) x = 21 8 = 168 och y = 21 ( 7) = 147 är alltså en lösning till 21 = 15x + 17y: Den allmänna heltalslösningen är då, enligt slutsatsen ovan: X = n och Y = n Vi kontrollerar resultatet med räknaren: Resultat: Den allmänna lösningen är x = n och y = n UPPGIFTER 6003 Bestäm alla heltalslösningar till ekvationen a) 18x + 54y = 72 b) 18x 15y = 27 c) 156x + 104y = Bestäm alla heltalslösningar till ekvationen: a) 11x + 12y = 13 b) 12x + 18y = 9 c) 7x 9y = Studera ekvationen 13x + 19y = k. Visa att denna ekvation har heltalslösningar för varje godtyckligt valt heltal k. Kompl. till , Diskret matematik 5 Liber AB och författarna
8 **Exempel 3 På en cirkus fick man in kr i entréavgifter vid en föreställning. Avgiften för barn var 90 kr och för vuxna 140 kr. Kassören tappade kontrollen av hur många som hade betalat och eftersom man inte lämnat några biljetter blev det problem vid redovisningen av antalet besökande. Det enda kassören med säkerhet visste var att det var något fler barn än vuxna på föreställningen. Hur många människor såg cirkusföreställningen? Lösning: Antalet barn var x och vuxna y. Vi söker heltalslösningar till 90x + 140y = Euklides algoritm ger: 140 = = = = Största gemensamma delaren är 10 och högerledet är delbart med 10. Vi studerar den enklare ekvationen 9x + 14y = = som ger 5 = = som ger 4 = = som ger 1 = = Alltså är: 1 = 5 4 = 5 (9 5) = = 2 (14 9) 9 = dvs. 1 = Multiplicera båda leden med : = dvs.: = En heltalslösning är x = och y = 5 236, men den är orimlig eftersom antalet personer inte rimligen kan vara negativt. Den allmänna lösningen blir då: X = n och Y = n Eftersom 7 854/14 = 561 börjar vi studera lösningar som har egenskapen att n är större än 561, annars blir X 0. För n = 570 får vi lösningen X = 126 och Y = 106. För n = 569 får vi 112 barn och 115 vuxna och för n = 571 får vi 140 barn och 97 vuxna. Räknaren visar flera närliggande lösningar. Eftersom något fler vuxna var på föreställningen är den första lösningen, X = 126 och Y = 106, den troligaste. Resultat: Det var troligtvis 232 personer på föreställningen, 126 barn och 106 vuxna. Kompl. till , Diskret matematik 6 Liber AB och författarna
9 Vem var Diofantos? Diofantos var en grekisk matematiker som levde cirka 250 e.kr. Han undersökte det som vi numera kallar diofantiska ekvationer, dvs. ekvationer där koefficienterna är heltal och där vi söker heltalslösningar. Diofantos har betytt mycket för talteorins utveckling. Fermats förmodan, som du läste om i kapitel 2, handlar n n n om en diofantisk ekvation, x + y = z, där n är ett heltal större än 2. Det var i marginalen av Diofantos berömda bok Arithmetika som Fermat på 1600-talet skrev om sin förmodan. UPPGIFTER 6006 Gunilla är mattelärare. Eftersom hon gärna ville fostra yngste sonen Hampus, som älskade kakor, gav hon honom uppgiften att köra till det närbelägna konditoriet för att köpa två sorters läckra kakor. I konditoriet fanns det nämligen två sorters delikata bakverk, nötkakor och drömmar. Priset per styck för de förra (G) var 15 kr och för de senare (S) 9 kr. Hampus fick med sig hela kakkassan, 351 kr, med uppdraget att han skulle köpa av båda sorterna eftersom Gunilla gärna ville ha minst en kaka av varje sort. Men han måste handla för precis hela summan och bara dessa båda sorter. Hur många kakor kom Hampus hem med? 6007 På en nattklubb var entréavgiften 175 kr för män och 145 kr för kvinnor. En kväll summerades kassan för entréavgifter till kr. Hur många betalande besökare hade nattklubben denna kväll? 6008 a) Visa att det finns heltal m och n så att 1 = 17m + 15n. ** b) Största gemensamma delaren till de positiva heltalen p och q är 1. Tror du att det finns heltal m och n så att 1 = mp + nq? Argumentera för det du tror på. Kompl. till , Diskret matematik 7 Liber AB och författarna
10 Sortering När man hanterar listor med värden är man ofta i behov av att sortera dem. Inom datalogi har det utvecklats ett stort antal sorteringsalgoritmer. I detta avsnitt behandlas en enkel sorteringsalgoritm, nämligen selectionsort. I uppgifterna kan du dessutom stifta bekantskap med ytterligare en enkel sorteringsalgoritm, bubblesort, och en mer anvancerad, combsort. Selectionsort bygger på att man ska kunna hitta det minsta talet i en del av en lista. Därför inleder vi detta avsnitt med att söka efter det minsta / det största talet i en lista. Minimum / maximum Ett transportbolag mäter tiden det tar för ett tåg att köra mellan två stationer. Mättiderna lagras som en sekvens av heltal. Varje heltal anger antalet sekunder mellan start och stopp. När sekvensen innehåller mätvärden så ska bolaget ta reda på den kortaste körtiden. Vi börjar med att göra en algoritm för att hitta den kortaste tiden: 1 Avläs det första värdet och kom ihåg det som det hittills minsta värdet. 2 Om alla värden är kontrollerade så gå till steg 6. 3 Avläs nästa värde i sekvensen. 4 Om det avlästa talet är mindre än det hittills minsta så kom ihåg det som hittills minst. 5 Gå till steg 2. 6 Skriv ut det minsta värdet. När ovanstående algoritm är färdig så har du skrivit ut det minsta värdet. Om man uttrycker algoritmen i halvkod kan den se ut så här: Tilldela variabeln minst värdet av det första lagrade värdet Medan det finns fler värden i listan så Är nästa värde mindre än minst så Lagra värdet i minst Skriv ut minst mätvärden minst På räknaren kan ett program som beräknar minimum i lista L1 se ut så här: Kompl. till , Diskret matematik 8 Liber AB och författarna
11 PROGRAM:MINIMUM dim(l1) N L1(1) M For(I,2,N) If L1(I)<M L1(I) M Disp MIN=,M Antal element i lista L1 lagras i N Lagra det första värdet i M Iteration där I=2,3,4,..,N-1,N Om värdet i position I är mindre än M så Lagra värdet i M Skriv ut M Om man dessutom vill ta reda på den längsta körtiden använder man en annan variabel för att minnas det hittills största värdet. Sedan kontrollerar man detta värde mot värdena i listan. UPPGIFTER 6009 Skriv programmet MINIMUM på din räknare. Testkör programmet med ett antal olika värden i lista L Skriv ett program som skriver ut det minsta talet och det största talet i en lista. *6011 Skriv en algoritm för att ta fram de två minsta värdena i en lista. Implementera sedan din algoritm på räknaren så att de två minsta värdena i lista L1 skrivs ut. Ditt program ska inte förändra innehållet i listan. **6012 I bedömningssporter låter man ett antal domare avge var sin poäng. För att göra bedömningen rättvis så tar man ofta bort den högsta och den lägsta domarpoängen innan utövaren får sin poäng. Skriv ett program vilket beräknar medelpoängen av avgivna domarpoäng. Den högsta poängen och den lägsta poängen ska inte ingå i medelpoängsberäkningen. Du kan utgå från att samtliga Kompl. till , Diskret matematik 9 Liber AB och författarna
12 domares poäng är lagrade i lista L6. I skärmdumpningen är följande värden lagrade i L6: 9.3, 9.1, 9.0, 9.2, 9.1, 9.2. **6013 Skriv en algoritm för att skriva ut alla udda heltal i en lista. Skriv sedan ett program på din räknare, men ändra så att alla udda heltal i lista L1 kopieras till lista L2. * Du kan testa om ett tal x är ett heltal med fpart(x) = 0. * Du kan testa om ett tal x ej är ett jämnt tal med fpart(x/2) 0. Selectionsort Ett sätt att sortera en lista med tal är att söka genom listan och välja det minsta värdet av samtliga och placera det främst i listan. Sedan väljer man det näst minsta och placerar det som andra elementet i listan. Och på det sättet fortsätter man tills listan är sorterad i växande ordning. Denna sorteringsalgoritm kallas för selectionsort. Om man i ovanstående beskrivning börjar med att välja det största talet och sedan det näst största osv. så sorteras listan i avtagande ordning. Halvkod för algoritmen att sortera i växande ordning ser ut så här: Upprepa för varje position i listan med start på den första Sök efter det minsta talet i listan. Börja sökningen på aktuell position och fortsätt tills listan är slut. Låt talet på den aktuella positionen och det minsta talet byta plats i listan Som exempel kan vi sortera en lista med talen 5, 8, 9, 4, 6. I figuren nedan sorteras ett tal på varje rad. Aktuell position, dvs. den position dit ett tal ska flyttas, markeras med understruket tal. Det är bland de tal som inte är sorterade som man väljer ut talet som ska flyttas. Dessa tal markeras med en ram. Den delen som inte är markerad är sorterad talen 5 och 4 byter plats talen 8 och 5 byter plats talen 9 och 6 byter plats talet 8 byter plats med sig själv Kompl. till , Diskret matematik 10 Liber AB och författarna
13 Ett program som använder selectionsort på lista A i räknaren ser du nedan: PROGRAM: SELSORTA For(A,1,dim(LA)-1) Iterera med A=1, 2,..,(antal värden -1) A I Till position A ska det minsta värdet flyttas, I håller minsta värdets position (antar position A från början) For(B,A+1,dim(LA)) Iterera med B = A + 1, A + 2,..,antal värden If LA(B)< LA(I) Leta efter värde som är mindre än det i position I B I LA(A) C LA(I) LA(A) C LA(I) Om sådant hittas så lagra positionen i I Byt värden i position A och i position I UPPGIFTER 6014 Skriv programmet för selectionsort (SELSORTA) i din räknare och testa programmet genom att sortera några listor. Eftersom programmet alltid sorterar lista A så måste du lagra värdena du vill ha sorterade i lista A före sorteringen Skriv programmet SELSORTD vilket sorterar en lista (välj själv vilken) avtagande. *6016 En sorteringsalgortim som är ungefär lika effektiv som selectionsort är bubblesort. Om en lista, vilken innehåller n tal, ska sorteras växande så är tanken bakom bubblesort följande: 1. För varje tal i listan med start på det första elementet så genomför punkt 2, 3 och Jämför det sista talet i listan med det näst sista. Om det sista talet är mindre än det näst sista så låt talen byta plats. 3. Jämför sedan det näst sista talet med det tredje sista talet i listan. Om det näst sista talet är mindre än det tredje sista så låt talen byta plats. 4. Fortsätt på detta sätt ända tills aktuellt tal (se punkt 1) jämförts med talet efter. Så här kan halvkod för räknaren se ut: Kompl. till , Diskret matematik 11 Liber AB och författarna
14 Tilldela variabeln N antalet tal i listan. För varje position X i listan A, med start på position 1, så Tilldela variabeln J värdet N-1 Medan J X så Om A(J)>A(J+1) så Tilldela variabeln T värdet A(J) Tilldela A(J) värdet A(J+1) Tilldela A(J+1) värdet T Minska J med 1. Implementera ovanstående halvkod som programmet BUBSORT på din räknare. Du kan utgå från att det alltid är en speciell lista som sorteras. *6017 Du märkte säkert att sorteringen gick mycket långsamt på din räknare. Detta beror till stor del på att räknaren jobbar långsamt. Implementera SELSORTA i ett programmeringsspråk på en dator. Gör helst implementeringen som en funktion, vilken tar emot en lista som argument och som returnerar listan sorterad En effektivare sorteringalgoritm än de du hittills stiftat bekantskap med är combsort. combsort är egentligen en modifiering av bubblesort. Skriv in nedanstående program. Testa gärna hur lång tid selectionsort respektive combsort tar med en lista med 100 tal. PROGRAM: COMBSORT 1.3 F dim(la) N 0 S N G While S=0 and G>1 int(g/f) G If G<1 1 G 1 S N-G T For(I,1,T) G+I J If LA(I)> LA(J) LA(I) X LA(J) LA(I) X LA(J) 0 S *6019 Implementera combsort (se uppgift 6018) i ditt programmeringsspråk. Kompl. till , Diskret matematik 12 Liber AB och författarna
15 Sökning Då du söker ett namn i en telefonkatalog vet du att namnen är ordnade i bokstavsföljd. Detta utnyttjar du och gör en effektiv sökning. Men om namnen varit helt oordnade så skulle sökningen bli besvärligare. Förmodligen skulle du söka från början i katalogen och fortsätta bakåt tills du hittar personen (eller ger upp). Vid sökning efter speciella värden i en lista råkar man ut för dessa två situationer, nämligen att listan är osorterad eller att den är sorterad. I en osorterad lista söker man linjärt, dvs. från början till slut, medan man i en sorterad lista kan söka mer effektivt genom s.k. binär sökning. I texten nedan söker vi efter tal men man kan naturligtvis söka efter vilken typ av data som helst. Linjär sökning Algoritmen för linjär sökning är mycket enkel. Man kontrollerar elementen i listan ett efter ett och ser efter om det är det värde man söker efter. När man hittat värdet så slutar man söka. Om värdet man söker inte finns i listan så innebär detta att samtliga värden i listan kontrollerats utan resultat. Det spelar ingen roll om man söker från slutet eller från början av listan. Halvkod för ett program vilket använder linjär sökning skriver ut det sökta värdets position i listan. Om värdet ej finns i listan skrivs talet 0. blir så här: Tilldela variabeln index värdet av antalet element. Det innebär att index refererar till det sista talet i listan. Tilldela variabeln funnen värdet false. Medan index 1 och funnen=false så Om det tal index refererar till är det sökta så tilldela variabeln funnen värdet true Annars så minska värdet på index med 1 Skriv index Binär sökning Om en lista är sorterad kan man söka binärt. Men man måste veta om det minsta värdet är först i listan (växande ordning) eller sist i listan (avtagande ordning). Vi utgår från en växande lista i följande förklaring. Strategin är att man kontrollerar talet i mitten först. Är det två tal i mitten så väljer vi det första av talen. Talen före det kontrollerade talet utgör en sorterad dellista där samtliga tal är mindre än eller lika stora som talet vi kontrollerat. På samma sätt utgör talen efter det kontrollerade talet en sorterad dellista. Om talet vi söker är mindre än det kontrollerade upprepar vi denna sökstrategi på den Kompl. till , Diskret matematik 13 Liber AB och författarna
16 första halvan, dvs. på talen som är mindre än det kontrollerade. Om talet vi söker är större än det kontrollerade så upprepar vi strategin på den andra halvan. Om vi har listan och söker efter värdet 23 så får vi följande sökningar. Det kontrollerade värdet är understruket och dellistan vi arbetar mot är markerad med ram är större än är mindre än är större än sökt värde funnet! Det behövdes endast 4 sökningar att finna talet i listan med 13 tal. Och sämre kan det inte bli med 13 värden i listan. Däremot kan det bli bättre. I ovanstående exempel framgår det att talet 19 kräver 3 sökningar, talet 29 två och talet 17 en. Detta ska du jämföra med linjär sökning som kan kräva upp till 13 sökningar. Om man uttrycker ovanstående algoritm i halvkod så blir det så här: Tilldela variabeln start värdet 1. Det är första positionen i listan. Tilldela variabeln slut värdet av antal tal. Det är sista positionen i listan. Tilldela variabeln attkontrollera heltalsvärdet av ((start+slut)/2). Medan (talet i positionen attkontrollera inte är det sökta) och (start<slut) så Om talet i positionen attkontrollera är större än det sökta så Tilldela slut värdet (attkontrollera-1) Annars Tilldela start värdet (attkontrollera+1) Tilldela attkontrollera heltalsvärdet av ((start+slut)/2) Om talet i positionen attkontrollera är det sökta talet så Skriv ut värdet attkontrollera Annars Skriv ut FINNS EJ Kompl. till , Diskret matematik 14 Liber AB och författarna
17 UPPGIFTER 6020 Skriv halvkod för ett program vilket söker efter ett värde i lista L1 och som meddelar om värdet finns i listan. Man kan inte veta om listan är sorterad så sökningen måste vara linjär. Implementera sedan ditt program på räknaren Ändra programmet i uppgift 6020 så att antalet förekomster av det sökta värdet skrivs ut. *6022 Skriv halvkod för ett program vilket frågar efter ett värde och som sedan söker efter värdet i lista L1. Programmet meddelar om värdet finns i listan eller ej. Programmet förutsätter att listan är sorterad växande och därför kan binär sökning användas. Implementera sedan ditt program på räknaren. *6023 En person A tänker på ett tal i intervallet [0, 1000] och att en annan person B försöker gissa talet. Efter varje gissning meddelar person A om gissningen är för liten, för stor eller korrekt. Leken avslutas med att antalet gissningar meddelas efter korrekt gissning. Skriv halvkod för ett program där räknaren är person A och användaren av räknaren person B. Implementera sedan programmet på din räknare. randint(0,1000) ger ett slumptal i intervallet [0, 1000]. Kompl. till , Diskret matematik 15 Liber AB och författarna
18 Facit 6001 a) x = 9 och y = 21 b) x = 2 och y = 1 c) inga lösningar d) x = 8 och y = a = 5 och b =7, dvs. a och b är relativt prima 6003 a) x = 1+ 3n och y = 1 n b) x = 9 5n och y = 9 6n c) inga lösningar 6004 a) x = n och y = 13 11n b) inga lösningar c) x =164 9n och y = 123 7n st nötkakor och 24 st drömmar eller a) m = 7, n = 8 duger. Jämför med exempel 2 b) Sådana m och n finns. Man kan visa det med Euklides algoritm ungefär som i exempel PROGRAM:MINMAX dim(l1) N L1(1) M: L1(1) S For(I,2,N) If L1(I)<M L1(I) M If L1(I)>S L1(I) S Disp MIN=,M Disp MAX=,S 6011 PROGRAM:MINIMUM2 dim(l1) N If N>1 L1(1) A L1(2) B If A>B A C B A C B For(I,3,N) If L1(I) A A B L1(I) A Else If L1(I)<B L1(I) B Disp A,B 6012 PROGRAM:DOMARE dim(l6) N L6(1) A L6(1) B L6(1) S For(I,2,N) S+L6(I) S If L6(I)<A L6(I) A If L6(I)>B L6(I) B Disp POANG,(S-A-B)/(N-2) 6013 PROGRAM:UDDA 0 dim(l2) 0 N For(I,1,dim(L1)) If (fpart(l1(i))=0) and (fpart(l1(i)/2) 0) N+1 N L1(I) L2(N) Kompl. till , Diskret matematik 16 Liber AB och författarna
19 PROGRAM:SELSORTD For(A,1,dim(LA)-1) A I For(B,A+1,dim(LA)) If LA(B)> LA(I) B I LA(A) C LA(I) LA(A) C LA(I) 6016 PROGRAM:BUBSORT dim(la) N For(X,1,N) N-1 J While J X If LA(J)> LA(J+1) LA(J) T LA(J+1) LA(J) T LA(J+1) J-1 J Låt användaren mata in det tal som söks. Lagra värdet i variabeln T Iterera med I = 1, 2,.., antal värden Om talet i position I är samma som T så Skriv FINNS Stoppa programmet Skriv FINNS EJ PROGRAM:LSEARCH Input SOKT TAL:,T For(I,1,dim(L1)) If L1(I)=T Disp FINNS Stop Disp FINNS EJ 6021 PROGRAM:ANTAL 0 N Input SOKT TAL:,T For(I,1,dim(L1)) If L1(I)=T N+1 N N 6022 PROGRAM:BSEARCH Input SOKT TAL:,T 1 A dim(l1) B int((a+b)/2) I While L1(I) T and A<B If L1(I)>T I-1 B Else I+1 A int((a+b)/2) I If L1(I)=T Disp FINNS Else Disp FINNS EJ 6023 PROGRAM:GISSA randint(0,1000) T 0 N -1 G While G T N+1 N Input GISSNING,G If G<T Disp FOR LITET If G>T Disp FOR STORT Disp ANTAL GISSNINGAR,N Kompl. till , Diskret matematik 17 Liber AB och författarna
MA2047 Algebra och diskret matematik
MA2047 Algebra och diskret matematik Något om heltal Mikael Hindgren 17 september 2018 Delbarhet Exempel 1 42 = 6 7 Vi säger: 7 är en faktor i 42 eller 7 delar 42 Vi skriver: 7 42 Definition 1 Om a, b
Hela tal LCB 1999/2000
Hela tal LCB 1999/2000 Ersätter Grimaldi 4.3 4.5 1 Delbarhet Alla förekommande tal i fortsättningen är heltal. DEFINITION 1. Man säger att b delar a om det finns ett heltal n så att a Man skriver b a när
18 juni 2007, 240 minuter Inga hjälpmedel, förutom skrivmateriel. Betygsgränser: 15p. för Godkänd, 24p. för Väl Godkänd (av maximalt 36p.
HH / Georgi Tchilikov DISKRET MATEMATIK,5p. 8 juni 007, 40 minuter Inga hjälpmedel, förutom skrivmateriel. Betygsgränser: 5p. för Godkänd, 4p. för Väl Godkänd (av maximalt 36p.). Förenkla (så mycket som
MMA132: Laboration 2 Matriser i MATLAB
MMA132: Laboration 2 Matriser i MATLAB Introduktion I den här labben skall vi lära oss hur man använder matriser och vektorer i MATLAB. Det är rekommerad att du ser till att ha laborationshandledningen
Talteori (OBS en del frågor gäller diofantiska ekvationer och de tas inte upp från och med hösten 2012)
Talteori (OBS en del frågor gäller diofantiska ekvationer och de tas inte upp från och med hösten 2012) T4.4-T4.7, 4.3, 4.7,T4.13-T4.14 S: Jag har svårt för visa-uppgifter. i kapitel 4 Talteori. Kan du
Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret 2014-2015. Lektion 1
Kattis Lektion 1 I kursen används onlinedomaren Kattis (från http://kattis.com) för att automatiskt rätta programmeringsproblem. För att få ett konto på Kattis anmäler du dig på Programmeringsolympiadens
Kapitel 2: De hela talen
Kapitel 2: De hela talen Divisionsalgoritmen ( a a Z, d Z\{0} q, r Z : d = q + r ) d, 0 r d c 2005 Eric Järpe Högskolan i Halmstad där q kallas kvoten och r kallas principala resten vid heltalsdivision.
PRIMTALEN, MULTIPLIKATION OCH DIOFANTISKA EKVATIONER
Explorativ övning 4 PRIMTALEN, MULTIPLIKATION OCH DIOFANTISKA EKVATIONER Syftet med detta avsnitt är att bekanta sig med delbarhetsegenskaper hos heltalen. De viktigaste begreppen är Aritmetikens fundamentalsats
2 (6) k 0 2 (7) n 1 F k F n. k F k F n F k F n F n 1 2 (8)
De naturliga talen. Vi skall till att börja med stanna kvar i världen av naturliga tal, N 3. Vi har redan använt (i beviset av Euklides primtalssats) att de naturliga talen är uppbyggda (genom multiplikation)
Block 2 Algebra och Diskret Matematik A. Följder, strängar och tal. Referenser. Inledning. 1. Följder
Block 2 Algebra och Diskret Matematik A BLOCK INNEHÅLL Referenser Inledning 1. Följder 2. Rekursiva definitioner 3. Sigmanotation för summor 4. Strängar 5. Tal 6. Övningsuppgifter Referenser Följder, strängar
Föreläsning 9: Talteori
DD2458, Problemlösning och programmering under press Föreläsning 9: Talteori Datum: 2009-11-11 Skribent(er): Ting-Hey Chau, Gustav Larsson, Åke Rosén Föreläsare: Fredrik Niemelä Den här föreläsningen handlar
Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, onsdagen den 17 augusti 2011, kl
Matematiska Institutionen KTH Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL och Media, SF60 och 5B8, onsdagen den 7 augusti 0, kl 4.00-9.00. Examinator: Olof Heden Hjälpmedel: Inga
Sats 2.1 (Kinesiska restsatsen) Låt n och m vara relativt prima heltal samt a och b två godtyckliga heltal. Då har ekvationssystemet
Avsnitt 2 Tillägg om kongruensräkning Detta avsnitt handlar om två klassiska satser som används för att förenkla kongruensräkning: Kinesiska restsatsen och Fermats lilla sats. Den första satsen används
, S(6, 2). = = = =
1 Matematiska Institutionen KTH Lösningar till tentamensskrivning på kursen Diskret Matematik, moment A, för D2 och F, SF161 och SF160, den 17 april 2010 kl 09.00-14.00. Examinator: Olof Heden. DEL I 1.
29 Det enda heltalet n som satisfierar båda dessa villkor är n = 55. För detta värde på n får vi x = 5, y = 5.
Tentamenskrivning MATA15 Algebra: delprov 1, 6hp Lördagen den 3 november 01 Matematikcentrum Matematik NF LÖSNINGSFÖRSLAG 1 a) Lös den diofantiska ekvationen 9x + 11y 00 b) Ange alla lösningar x, y) sådana
TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 6 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 6 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Sortering Selectionsort, Bubblesort,
Lösningsförslag till tentamensskrivning i SF1610 Diskret Matematik för CINTE 30 maj 2018, kl
1 Matematiska Institutionen KTH Lösningsförslag till tentamensskrivning i SF1610 Diskret Matematik för CINTE 30 maj 2018, kl 08.00 13.00. Examinator: Petter Brändén Kursansvarig: Olof Sisask Hjälpmedel:
Teori :: Diofantiska ekvationer v1.2
Teori :: Diofantiska ekvationer v1. 1 Definitioner och inledande exempel Låt oss börja med att göra klart för vad vi menar med en diofantisk ekvation: S:def+ex Definition 1.1. Betrakta ekvationen D:diofantiskEkv
Lösningar till Algebra och kombinatorik
Lösningar till Algebra och kombinatorik 090520 1. Av a 0 = 0, a 1 = 1 och rekursionsformeln får vi successivt att a 2 = 1 4 a 1 a 0 + 3 2 = 1 4 1 0 + 32 = 4, a 3 = 1 4 a 2 a 1 + 3 2 = 1 4 4 1 + 32 = 9,
Några satser ur talteorin
Några satser ur talteorin LCB 997/2000 Fermats, Eulers och Wilsons satser Vi skall studera några klassiska satser i talteori, vilka är av betydelse bland annat i kodningsteknik och kryptoteknik. De kan
Övningsuppgifter kapitel 8
Inst. för Systemteknik Introduktion till programmering (SMD 180), 5 p Övningsuppgifter kapitel 8 1. Listor är en viktig datatyp i Python. Hur definierar kursboken lista? Vad kallas de värden som tillsammans
MA 11. Hur starkt de binder. 2 Reella tal 3 Slutledning 4 Logik 5 Mängdlära 6-7 Talteori 8 Diofantiska ekvationer 9 Fördjupning och kryptografi
MA 11 Talteori och logik 2 Reella tal 3 Slutledning 4 Logik 5 Mängdlära 6-7 Talteori 8 Diofantiska ekvationer 9 Fördjupning och kryptografi propositionssymboler: bokstäver konnektiv Paranteser konnektiv
Matematisk kommunikation för Π Problemsamling
Problemsamling Charlotte Soneson & Niels Chr. Overgaard september 200 Problem. Betrakta formeln n k = k= n(n + ). 2 Troliggör den först genom att exempelvis i summan +2+3+4+5+6 para ihop termer två och
inte följa någon enkel eller fiffig princip, vad man nu skulle mena med det. All right, men
MATEMATISKA INSTITUTIONEN STOCKHOLMS UNIVERSITET Christian Gottlieb Gymnasieskolans matematik med akademiska ögon Induktion Dag 2. Explicita formler och rekursionsformler. Dag mötte vi flera talföljder,
Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,
Uppsala universitet Institutionen för informationsteknologi Teknisk databehandling Tentamen i Beräkningsvetenskap I/KF, 5. hp, 215-3-17 Skrivtid: 14 17 (OBS! Tre timmars skrivtid!) Hjälpmedel: Bifogat
Översikt. Stegvis förfining. Stegvis förfining. Dekomposition. Algoritmer. Metod för att skapa ett program från ett analyserat problem
Översikt Stegvis förfining Pseudokod Flödesdiagram Dekomposition KISS-regeln Procedurell dekomposition DRY-regeln Algoritmer Sortering och sökning Stegvis förfining Metod för att skapa ett program från
Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad
1 Datatyper Tobias Wrigstad Det finns flera olika typer av (slags) data Olika datatyper har olika egenskaper. T.ex. är ett personnummer inte ett tal. (Den sista siffran skall stämma enligt den s.k. Luhnalgoritmen
Läsanvisning till Discrete matematics av Norman Biggs - 5B1118 Diskret matematik
Läsanvisning till Discrete matematics av Norman Biggs - 5B1118 Diskret matematik Mats Boij 28 oktober 2001 1 Heltalen Det första kapitlet handlar om heltalen och deras aritmetik, dvs deras egenskaper som
Teoretisk del. Facit Tentamen TDDC (6)
Facit Tentamen TDDC30 2014-08-29 1 (6) Teoretisk del 1. (6p) "Snabba frågor" Alla svar motiveras väl. a) Vad är skillnaden mellan synligheterna public, private och protected? (1p) Svar:public: Nåbar för
1, 2, 3, 4, 5, 6,...
Dagens nyhet handlar om talföljder, ändliga och oändliga. Talföljden 1,, 3, 4, 5, 6,... är det första vi, som barn, lär oss om matematik över huvud taget. Så småningom lär vi oss att denna talföljd inte
Övningshäfte 2: Induktion och rekursion
GÖTEBORGS UNIVERSITET MATEMATIK 1, MMG200, HT2017 INLEDANDE ALGEBRA Övningshäfte 2: Induktion och rekursion Övning D Syftet är att öva förmågan att utgående från enkla samband, aritmetiska och geometriska,
Sökning och sortering
Sökning och sortering Programmering för språkteknologer 2 Sara Stymne 2013-09-16 Idag Sökning Analys av algoritmer komplexitet Sortering Vad är sökning? Sökning innebär att hitta ett värde i en samling
Matematisk kommunikation för Π Problemsamling
Problemsamling Niels Chr. Overgaard & Johan Fredriksson 3 september 205 Problem 0. Skriv följande summor mha summationstecken. ( Dvs på formen q k=p a k där k är en räknare som löper med heltalssteg mellan
Lösning till tentamensskrivning i Diskret Matematik för CINTE och CMETE, m fl, SF1610, tisdagen den 2 juni 2015, kl
1 Matematiska Institutionen KTH Lösning till tentamensskrivning i Diskret Matematik för CINTE och CMETE, m fl, SF1610, tisdagen den juni 015, kl 1.00-19.00. Examinator: Olof Heden Hjälpmedel: Inga hjälpmedel
ARITMETIK 3. Stockholms universitet Matematiska institutionen Avd matematik Torbjörn Tambour
Stockholms universitet Matematiska institutionen Avd matematik Torbjörn Tambour ARITMETIK 3 I det här tredje aritmetikavsnittet ska vi diskutera en följd av heltal, som kallas Fibonaccis talföljd. Talen
Induktion, mängder och bevis för Introduktionskursen på I
Induktion, mängder och bevis för Introduktionskursen på I J A S, ht 04 1 Induktion Detta avsnitt handlar om en speciell teknik för att försöka bevisa riktigheten av påståenden eller formler, för alla heltalsvärden
Repetition i Python 3. Exemplen fac. Exemplen fac motivering. Exemplen fac i Python
Repetition i Python 3 Exemplen fac Orginalet I Scheme använde vi rekursion för all slags repetition. Efterom Scheme är ett funktionellt språk återsänder alla språkkonstruktioner ett värde men i Python
Algoritmanalys. Inledning. Informationsteknologi Malin Källén, Tom Smedsaas 1 september 2016
Informationsteknologi Malin Källén, Tom Smedsaas 1 september 2016 Algoritmanalys Inledning Exempel 1: x n När vi talade om rekursion presenterade vi två olika sätt att beräkna x n, ett iterativt: x n =
Linnéuniversitetet Institutionen för datavetenskap, fysik och matematik Per-Anders Svensson
Linnéuniversitetet Institutionen för datavetenskap, fysik och matematik Per-Anders Svensson Tentamen i Matematikens utveckling, 1MA163, 7,5hp fredagen den 28 maj 2010, klockan 8.00 11.00 Tentamen består
TALTEORI FÖR ALLA 1 Juliusz Brzezinski
TALTEORI FÖR ALLA 1 Juliusz Brzezinski För exakt 10 år sedan publicerade Andrew Wiles sitt bevis av Fermats Stora Sats. Nyheten om hans resultat väckte enorm uppmärksamhet i hela världen. Vägen till lösningen
Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl
1 Matematiska Institutionen KTH Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl 14.00-19.00. Examinator: Olof Heden Hjälpmedel: Inga hjälpmedel är tillåtna
Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4
Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa
Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod
Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer
Grupper och RSA-kryptering
UPPSALA UNIVERSITET Matematiska institutionen Erik Melin Specialkursen HT07 26 oktober 2007 Grupper och RSA-kryptering Dessa blad utgör skissartade föreläsningsanteckningar kombinerat med övningar. Framställningen
Vektorgeometri för gymnasister
Vektorgeometri för gymnasister Per-Anders Svensson http://homepage.lnu.se/staff/psvmsi/vektorgeometri/gymnasiet.html Fakulteten för teknik Linnéuniversitetet 27 augusti 2013 Innehåll Linjära ekvationssystem
Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 11 april, 2002
Institutionen för matematik, KTH Mats Boij och Niklas Eriksen Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 11 april, 2002 1. Bestäm det minsta positiva heltal n sådant att 31n + 13 är delbart
TDDI16 Datastrukturer och algoritmer. Algoritmanalys
TDDI16 Datastrukturer och algoritmer Algoritmanalys 2017-08-28 2 Översikt Skäl för att analysera algoritmer Olika fall att tänka på Medelfall Bästa Värsta Metoder för analys 2017-08-28 3 Skäl till att
Föreläsning 3-4 Innehåll
Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå
Material till kursen SF1679, Diskret matematik: Lite om kedjebråk. 0. Inledning
Matematik, KTH Bengt Ek november 207 Material till kursen SF679, Diskret matematik: Lite om kedjebråk 0 Inledning Talet π (kvoten mellan en cirkels omkrets och dess diameter) är inte ett rationellt tal
TALSYSTEM, DELBARHET OCH PRIMTAL
Explorativ övning 3 TALSYSTEM, DELBARHET OCH PRIMTAL Syftet med detta avsnitt är att titta närmare på positionssystemet och på heltalens multiplikativa struktur. De viktigaste begreppen är presentation
Datalogi för E Övning 3
Datalogi för E Övning 3 Mikael Huss hussm@nada.kth.se AlbaNova, Roslagstullsbacken 35 08-790 62 26 Kurshemsida: http://www.csc.kth.se/utbildning/kth/kurser/2d1343/datae06 Dagens program Att skapa egna
Lösningar till Algebra och kombinatorik
Lösningar till Algebra och kombinatorik 091214 1. Av a 0 = 1 och rekursionsformeln får vi successivt att a 1 = 1 + a 0 1 a 0 = 1 + 1 1 1 = 2, a 2 = 1 + a 1 1 a 0 + 1 a 1 = 1 + 2 1 + 1 = 4, 2 a 3 = 1 +
Lösning av tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, tisdagen den 27 maj 2014, kl
1 Matematiska Institutionen KTH Lösning av tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, tisdagen den 27 maj 2014, kl 14.00-19.00. Examinator: Olof Heden Hjälpmedel: Inga hjälpmedel
6 Derivata och grafer
6 Derivata och grafer 6.1 Dagens Teori När vi plottar funktionen f(x) = x + 1x 99x 8 med hjälp av dosan kan man få olika resultat beroende på vilka intervall man valt. 00000 100000-00 -100 100 00-100000
1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta denna följd av tal, där varje tal är dubbelt så stort som närmast föregående
MATEMATISKA INSTITUTIONEN STOCKHOLMS UNIVERSITET Christian Gottlieb Gymnasieskolans matematik med akademiska ögon Induktion Dag 1 1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta
Bonusmaterial till Lära och undervisa matematik från förskoleklass till åk 6. Ledning för att lösa problemen i Övningar för kapitel 5, sid 138-144
Bonusmaterial till Lära och undervisa matematik från förskoleklass till åk 6 Ledning för att lösa problemen i Övningar för kapitel 5, sid 138-144 Avsikten med de ledtrådar som ges nedan är att peka på
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
Prov 1 2. Ellips 12 Numeriska och algebraiska metoder lösningar till övningsproven uppdaterad 20.5.2010. a) i) Nollställen för polynomet 2x 2 3x 1:
Ellips Numeriska och algebraiska metoder lösningar till övningsproven uppdaterad.. Prov a) i) ii) iii) =,, = st 9,876 =,9876,99 = 9,9,66,66 =,7 =,7 Anmärkning. Nollor i början av decimaltal har ingen betydelse
Linjära ekvationssystem. Avsnitt 1. Vi ska lära oss en metod som på ett systematiskt sätt löser alla linjära ekvationssystem. Linjära ekvationssystem
Avsnitt Linjära ekvationssystem Elementära radoperationer Gausseliminering Exempel Räkneschema Exempel med exakt en lösning Exempel med parameterlösning Exempel utan lösning Slutschema Avläsa lösningen
Andragradsekvationer. + px + q = 0. = 3x 7 7 3x + 7 = 0. q = 7
Andragradsekvationer Tid: 70 minuter Hjälpmedel: Formelblad. Alla andragradsekvationer kan skrivas på formen Vilket värde har q i ekvationen x = 3x 7? + E Korrekt svar. B (q = 7) x + px + q = 0 (/0/0)
INDUKTION OCH DEDUKTION
AVSNITT 3 INDUKTION OCH DEDUKTION Med induktion menar man vanligen en mycket vanlig resonemangsmetod: man gör flera observationer, upptäcker ett mönster (eller något som man tror är ett mönster) och därefter
Algebra och Diskret Matematik A (svenska)
MITTUNIVERSITETET TFM Tentamen 2005 MAAA99 Algebra och Diskret Matematik A (svenska) Skrivtid: 5 timmar Datum: 2 november 2005 Denna tenta omfattar 8 frågor, där varje fråga kan ge 3 poäng. Maximalt poängantal
Institutionen för matematik, KTH Mats Boij. Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 20 december, 2000
Institutionen för matematik, KTH Mats Boij Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 20 december, 2000 1) Beräkna x 4 + 2x 3 + 3 för alla värden på x i Z 5. Lösning: Det nns bara fem
LABBA MED PRIMTAL OCH DELBARHET. Andreas Wannebo
LABBA MED PRIMTAL OCH DELBARHET Andreas Wannebo Vi ska studera egenskaper för heltalen. Det finns heltal såsom 1,2,3,4,... De är de positiva heltalen och det är dem vi vill studera. Först kan man ställa
Explorativ övning 5 MATEMATISK INDUKTION
Explorativ övning 5 MATEMATISK INDUKTION Syftet med denna övning är att introducera en av de viktigaste bevismetoderna i matematiken matematisk induktion. Termen induktion är lite olycklig därför att matematisk
Repetition ekvationer - Matematik 1
Repetition ekvationer - Matematik 1 Uppgift nr 1 I en 2-barnsfamilj är alla tillsammans 107 år. Sonen är 7 år yngre än dottern. Mamman är 4 år äldre än pappan. Pappan är 4 gånger äldre än dottern. Hur
Matematiska uppgifter
Elementa Årgång 67, 984 Årgång 67, 984 Första häftet 3340. a) Vilket av talen A = 984( + + 3 + + 984 ) är störst? b) Vilket av talen B 3 = 3 + 3 + 3 3 + + 984 3 är störst? A / = 984( + + 3 + + 984) B =
RSA-kryptering och primalitetstest
Matematik, KTH Bengt Ek augusti 2016 Material till kurserna SF1630 och SF1679, Diskret matematik: RSA-kryptering och primalitetstest Hemliga koder (dvs koder som används för att göra meddelanden oläsbara
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.
1. (a) Lös ekvationen (2p) ln(x) ln(x 3 ) = ln(x 6 ). (b) Lös olikheten. x 3 + x 2 + x 1 x 1
Högskolan i Halmstad Tentamensskrivning 6 hp ITE/MPE-lab MA2047 Algebra och diskret matematik Mikael Hindgren Onsdagen den 26 oktober 2016 035-167220 Skrivtid: 9.00-13.00 Inga hjälpmedel. Fyll i omslaget
Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12
Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 12 I torsdags: Klassen TelefonKostnad Exemplifierar objektorienterad design, metoder, konstruktorer static Standardklassen Math Matematiska
public static void mystery(int n) { if (n > 0){ mystery(n-1); System.out.print(n * 4); mystery(n-1); } }
Rekursion 25 7 Rekursion Tema: Rekursiva algoritmer. Litteratur: Avsnitt 5.1 5.5 (7.1 7.5 i gamla upplagan) samt i bilderna från föreläsning 6. U 59. Man kan definiera potensfunktionen x n (n heltal 0)
Algoritmer och datastrukturer H I HÅKAN S T R Ö M B E R G N I C K L A S B R A N D E F E L T
Algoritmer och datastrukturer H I 1 0 2 9 HÅKAN S T R Ö M B E R G N I C K L A S B R A N D E F E L T Föreläsning 1 Inledande om algoritmer Rekursion Stacken vid rekursion Rekursion iteration Möjliga vägar
Beräkningsvetenskap föreläsning 2
Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa
Föreläsningsanteckningar S6 Grafteori
HT 009 Tobias Wrigstad Introduktion till grafteori På den här föreläsningen tar vi upp elementär grafteori och försöker introducera termer och begrepp som blir viktigare i senare kurser. Subjektivt tycker
STYRANDE SATSER. 1) Skriv ett program som räknar ut hur många år du har till pensionen. Vi räknar här med att man pensioneras det år man fyller 65 år.
STYRANDE SATSER 1) Skriv ett program som räknar ut hur många år du har till pensionen. Vi räknar här med att man pensioneras det år man fyller 65 år. Vilket år är du född? 1971 Då har du bara 35 år kvar
Diskret Matematik A för CVI 4p (svenska)
MITTHÖGSKOLAN TFM Tentamen 2004 MAAA98 Diskret Matematik A för CVI 4p (svenska) Skrivtid: 5 timmar Datum: 3 juni 2004 Denna tentamen omfattar 10 frågor, där varje fråga kan ge 12 poäng. Delfrågornas poäng
För att få första och sista elementet i en lista kan man använda First och Last
Arbetsblad 3 I det tredje arbetsbladet tar vi upp rekursiva definitioner, listor och primtal. Precis som det tidigare arbetsbladet är detta en mindre modifiering av en text skriven av Rikard Bögvad för
Att förstå hur man konstruerar modulära program Att kunna skapa nya funktioner Att förstå hur data skickas mellan funktioner
Lektion 4, del 1, kapitel 10 Funktioner i JavaScript Inlärningsmål Att förstå hur man konstruerar modulära program Att kunna skapa nya funktioner Att förstå hur data skickas mellan funktioner Introduktion
MITTUNIVERSITETET TFM. Tentamen Algebra och Diskret Matematik A (svenska) Skrivtid: 5 timmar. Datum: 9 januari 2007
MITTUNIVERSITETET TFM Tentamen 2007 MAAA99 Algebra och Diskret Matematik A (svenska) Skrivtid: 5 timmar Datum: 9 januari 2007 Denna tenta omfattar 8 frågor, där varje fråga kan ge 3 poäng. Maximalt poängantal
Magnus Nielsen, IDA, Linköpings universitet
Föreläsning 7 Introduktion till sortering TDDC91,TDDE22,725G97: DALG Utskriftsversion av föreläsning i Datastrukturer och algoritmer 24 september 2018 Magnus Nielsen, IDA, Linköpings universitet 7.1 1
1. Ange samtliga uppsättningar av heltal x, y, z som uppfyller båda ekvationerna. x + 2y + 24z = 13 och x 11y + 17z = 8.
Tentamenskrivning MATA15 Algebra: delprov 1, 6hp Lördagen den mars 014 Matematikcentrum Matematik NF LÖSNINGSFÖRSLAG 1. Ange samtliga uppsättningar av heltal x, y, z som uppfyller båda ekvationerna x +
DEL I. Matematiska Institutionen KTH
1 Matematiska Institutionen KTH Lösning till tentamensskrivning på kursen Diskret Matematik, moment A, för D2 och F, SF1631 och SF1630, den 25 mars 2008. DEL I 1. (3p Bestäm antalet binära ord av längd
Objektorienterad programmering Föreläsning 9. Copyright Mahmud Al Hakim Agenda (halvdag)
Objektorienterad programmering Föreläsning 9 Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda (halvdag) Fält Grunderna Fält med komponenter av struct-typ Fält med referenser Standardklassen
Facit Tentamen TDDC (7)
Facit Tentamen TDDC30 2014-03-18 1 (7) Teoretisk del 1. (3p) "Snabba frågor" a) Varför kan man tänkas vilja dölja metoder och variabler med private? (0.5p) Svar:För att skydda interna variabler från ändringar
(A B) C = A C B C och (A B) C = A C B C. Bevis: (A B) C = A C B C : (A B) C = A C B C : B C (A B) C A C B C
Sats 1.3 De Morgans lagar för mängder För alla mängder A och B gäller att (A B) C = A C B C och (A B) C = A C B C. (A B) C = A C B C : A B A C (A B) C B C A C B C (A B) C = A C B C : A B A C (A B) C B
729G04 Programmering och diskret matematik. Python 3: Loopar
729G04 Programmering och diskret matematik Python 3: Loopar Översikt Labbar Punktnotation och strängmetoder Loopar Labb 3 Labbar? Punktnotation Punktnotation Ni har stött på punktnotation tidigare - kapitel
ANDREAS REJBRAND NV1A Matematik Linjära ekvationssystem
ANDREAS REJBRAND NVA 004-04-05 Matematik http://www.rejbrand.se Linjära ekvationssystem Innehållsförteckning LINJÄRA EKVATIONSSYSTEM... INNEHÅLLSFÖRTECKNING... DEFINITION OCH LÖSNINGSMETODER... 3 Algebraiska
Programkonstruktion och Datastrukturer
Programkonstruktion och Datastrukturer VT 2012 Tidskomplexitet Elias Castegren elias.castegren.7381@student.uu.se Problem och algoritmer Ett problem är en uppgift som ska lösas. Beräkna n! givet n>0 Räkna
Lennart Rolandsson, Uppsala universitet, Ulrica Dahlberg och Ola Helenius, NCM
Matematik Gymnasieskola Modul: Matematikundervisning med digitala verktyg II Del 1: Om programmering Aktiviteter Del 1 Lennart Rolandsson, Uppsala universitet, Ulrica Dahlberg och Ola Helenius, NCM Ni
. (2p) 2x + 2y + z = 4 y + 2z = 2 4x + 3y = 6
Kursen bedöms med betyg, 4, 5 eller underkänd, där 5 är högsta betyg För godkänt betyg krävs minst 4 poäng från uppgifterna -7 Var och en av dessa sju uppgifter kan ge maximalt poäng För var och en av
Matematiska uppgifter
Elementa Årgång 65, 982 Årgång 65, 982 Första häftet 3260. På var och en av rutorna på ett schackbräde (med 8 rutor) ligger en papperslapp. Kan man flytta papperslapparna så att samtliga kommer att ligga
Lösning till tentamensskrivning på kursen Diskret Matematik, moment A, för D2 och F, SF1631 och SF1630, den 10 januari 2011 kl
1 Matematiska Institutionen KTH Lösning till tentamensskrivning på kursen Diskret Matematik, moment A, för D2 och F, SF131 och SF130, den 10 januari 2011 kl 14.00-19.00. Examinator: Olof Heden, tel. 0730547891.
Teoretisk del. Facit Tentamen TDDC (6)
Facit Tentamen TDDC30 2013-06-05 1 (6) Teoretisk del 1. (3p) "Snabba frågor" Alla svar motiveras väl. a) Vad skiljer en statisk metod från en icke-statisk? (0.5p) Svar:En statisk metod är associerad till
Lösningar för tenta i TMV200 Diskret matematik kl. 14:00 18:00
Lösningar för tenta i TMV200 Diskret matematik 2018-08-31 kl 1:00 18:00 1 Om argumentet inte är giltigt går det att hitta ett motexempel, dvs en uppsättning sanningsvärden för vilka alla hypoteserna är
Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 22 augusti, 2001
Institutionen för matematik, KTH Mats Boij Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 22 augusti, 2001 1. Ange kvot och rest vid division av 5BE med 1F där båda talen är angivna i hexadecimal
Föreläsning 3 Programmeringsteknik och C DD1316. Innehåll i listor. Uppdateringsoperatorer. +,* och listor. Listor. Indexering
Föreläsning 3 Programmeringsteknik och C DD1316 Innehåll i listor En lista kan innehålla element av olika typer: [ hej, 151, 10.59] uppdateringsoperatorer listor tupler strängar for-slingor importera moduler
Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1
Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut
Teoretisk del. Facit Tentamen TDDC kl (6) 1. (6p) "Snabba frågor" Alla svar motiveras väl.
Facit Tentamen TDDC30 2015-08-28 kl 08-12 1 (6) Teoretisk del 1. (6p) "Snabba frågor" Alla svar motiveras väl. a) Vad är syftet med ett interface? (1p) Svar:Att ange vilka metoder som ska finnas, utan