Dagens Teori
1.1
Talteori
1.1.1 Några olika talmängder
Definition 1
Heltal kallas de tal som ingår i mängden
Z = {. . . , −3, −2, −1, 0, 1, 2, 3, . . .}
Definition 2
Naturliga tal kallas de tal som ingår i mängden
N = {0, 1, 2, 3, . . .}
Ibland definieras de naturliga talen som mängden {1, 2, 3, . . .}, som nog kan betraktas som
ännu mer naturligt. Vi håller oss dock till den första definitionen. Definition 3
De rationella talen är reella tal som kan skrivas som ab , där a och b är heltal med b 6= 0. Exempel 1
Dessutom finns
√ mängden av irrationella tal. Dessa tal är varken naturliga tal, heltal eller
rationella tal. 2 är ett irrationellt tal. Att detta tal inte är ett heltal inser vi direkt, men kan
det inte skrivas som ett rationellt tal? Så här bevisar man att
√
a
2 6=
b
för några heltal a och b.
√
Vi startar med att anta motsatsen, alltså att 2 är ett rationellt tal. Då kan det skrivas som
√
2 = ab , där a och b 6= 0 är heltal. Då gäller
a2
b2
Vi kan dessutom förutsätta att a och b inte har några gemensamma faktorer, eftersom ab
då skulle kunna förkortas. Vi skriver nu ekvationen på formen 2b2 = a2 . Nu är varje heltal
antingen jämnt eller udda. Alla udda tal kan skrivas som 2m + 1. Eftersom kvadraten på
ett udda tal (2m + 1)2 = 4m2 + 1 + 4m = 2(2m2 + 2m) + 1 är udda följer att a måste vara
jämnt. Då kan vi skriva a = 2c och a2 = 4c2 . Vi får 2b2 = 4c2 eller b2 = 2c2 . På samma sätt
kan vi härifrån visa att också b är jämnt. Eftersom vi visat att både a och b måste
var jämna
√
skulle bråket kunna förkortas med 2, vilket är en motsägelse och därför är 2 irrationellt.
2=
Denna typ av bevis kallas indirekt bevis eller bevis ad absurdum. Håkan Strömberg
1
KTH STH
1.1. TALTEORI
1.1.2 Heltalsdivision
Definition 4
Om a och b är naturliga tal och vi kan skriva a = qb + r för icke negativa heltal q och r
och där dessutom 0 ≤ r < b, så kallar vi q för kvoten och r för resten när a divideras med
b. Till exempel
Exempel 2
Då a = 23 och b = 5 är q = 4 och r = 3.
q och r kan inte anta några andra värden så länge 0 ≤ r < b. Vi kan då fastslå att
Sats 1
För givet a och b ger heltalsdivisionen unika värden på kvoten q och resten r 1.1.3 Delbarhet
Du vet säkert vad som menas med att ett tal är delbart med ett annat.
Definition 5
Heltalet n är en delare till heltalet m, om det finns ett heltal q, så att m = q · n. Vi säger, att m är delbart med n eller att m är en multipel av n. Vi skriver då n | m. Om
n inte är en delare till m skriver vi istället n ∤ m.
Exempel 3
7 är en delare till 84 eftersom 84 = 7 · 12. Normalt tar vi reda på om n är en delare till m
genom att dividera m med n och se om resten blir 0. Om dividerar 92 med 7 får vi kvoten
13 och resten 1 och vi kan skriva 7 ∤ 92. Delbarhetskriterier. Vi vet att alla heltal n, vars sista siffra är 0 eller 5 har 5 som delare.
Det finns delbarhetskriterier även för andra tal är 5. Här listar vi några som möjligtvis kan
vara bra att känna till
2 Heltalet m är delbart med 2 då sista siffran är delbar med 2.
3 Heltalet m är delbart med 3 då talets siffersumma är delbar med 3. Talet 123456 har
siffersumma 1 + 2 + 3 + 4 + 5 + 6 = 21 som är delbar med 3, 21 = 3 · 7.
4 Heltalet m är delbart med 4 då talet som bildas av de två sista siffrorna är delbart
med 4. Alltså är 234567724 delbart med 4.
5 Heltalet m är delbart med 5 då talets sista siffra är 0 eller 5.
6 Heltalet m är delbart med 6 då det är delbart med 2 och 3 enligt respektive kriterier
ovan.
7 Heltalet m är delbart med 7 då följande gäller. Stryk entalssiffran s och och subtrahera 2 · s från det som återstår av talet m. Är det tal vi nu får delbart med 7 är
också talet m delbart med 7. Denna regel kan användas iterativt, upprepat. Vi tar ett
exempel: Är 472724 delbart med 7? I första steget får vi 47272 − 8 = 47264, andra
4726 − 8 = 4718, tredje 471 − 16 = 455 och sista 45 − 10 = 35. Ingen effektiv metod
precis, som har tagits med för att göra listan fullständig.
Håkan Strömberg
2
KTH STH
8 Heltalet m är delbart med 8 då det tal som bildas av talets tre sista siffror är delbart
med 8. Talet 1231346816 är delbart med 8 eftersom vi enkelt kan se att 816 är delbart
med 8.
9 Heltalet m är delbart med 9 då talets siffersumma är delbar med 9. Detta kriterium
kan användas upprepade gånger, precis som för övrigt kriteriet för 3 kan göras.
4118886 är delbart med 9 eftersom 4 + 1 + 1 + 8 + 8 + 8 + 6 = 36 är delbart med 9.
Skulle man inte se det kan man alltså utföra 3 + 6 = 9 som ju är delbart med 9.
10 Heltalet m är delbart med 10 då talets sista siffra är 0.
11 Heltalet m är delbart med 11 då en lite annorlunda ’siffersumma’ är delbar med 11.
Den annorlunda siffersumman får man genom att alternera + och −. Talet 1358016
är delbart med 11 eftersom 1 − 3 + 5 − 8 + 0 − 1 + 6 = 0 och 0 är delbart med 11.
Till delbarhet hör dessa tre satser
Sats 2
a) Om för heltalen a, b och c gäller att a | b och a | c, så gäller också att a | (b + c)
b) Om för heltalen a, b och c gäller att a | b, så gäller också att a | bc
c) Om a, b, x, och y är heltal och a | b och a | c, så gäller att a | (xb + yc) Vi kommer inte alltid att bevisa de satser vi presenterar. Men dessa har enkla bevis så
därför gör vi ett undantag och bevisar Sats 1a
Eftersom a | b, så har vi lärt oss att det finns ett tal q1 sådant att b = a · q1 . På samma
sätt kan vi också skriva c = a · q2 . b + c kan nu skrivas b + c = a · q1 + a · q2 eller
b + c = a(q1 + q2 ). Ett tal som har a som en faktor måste ha a som delare.
Exempel 4
Vi ska ta reda på om 17 | 3451. Om det känns lite tungt kan det vara lite lättare, om vi
skriver 17 | (3400 + 51). Enligt sats a) ovan kan vi nu undersöka om 17 | 3400 och om
13 | 51 var för sig. Det visar sig att 200 · 17 = 3400 och att 3 · 17 = 51. Därför vet vi att även
17 | 3451 Exempel 5
Är 12 | 100024? Om vi gör omskrivningen 12 | (100000 + 24) som leder till 12 ∤ 100000,
eftersom vi direkt ser att 3 ∤ 100000 och att 12 | 24 så kan vi konstatera att 12 ∤ 100024 Exempel 6
Är 123456 | 4197505? Från divisionskriteriet för 3 får vi att att 3 | 123456 eftersom 1 + 2 +
3 + 4 + 5 + 6 = 21 och 3 | 21. Med hjälp av samma kriterium får vi att 3 ∤ 4197505 eftersom
4 + 1 + 9 + 7 + 5 + 0 + 5 = 31 och 3 ∤ 31. Därför är 123456 ∤ 4197505. Men det är nära,
eftersom 34 · 123456 + 1 = 41975054 Håkan Strömberg
3
KTH STH
1.1. TALTEORI
1.1.4 Primtal
Faktorisering
De allra flesta heltal kan uttryckas som en produkt av ett antal mindre heltal. Till exempel
10010 = 13 · 7 · 11 · 2 · 5. Funktionen FactorInteger[10010] i Mathematica ger oss
direkt svaret, i form av en lista av listor
{{2, 1}, {5, 1}, {7, 1}, {11, 1}, {13, 1}}
Som vi tolkar som 21 · 51 · 71 · 111 · 131 = 10010. Vill vi faktorisera talet 540 skriver vi
alltså FactorInteger[540] och får listan {{2,2},{3,3},{5,1}} och som tolkas
540 = 2 · 2 · 3 · 3 · 3 · 5, eller varför inte skriva 540 = 22 · 33 · 5
De tal som inte kan faktoriseras kallas primtal.
Det är inte alltid enkelt att finna faktorerna till ett heltal, speciellt då talet är stort. Inom
datalogin anses detta som ett mycket svårt problem och en stor del av den moderna
krypologin vilar på detta faktum. Teorin bygger på att multiplicera två stora primtal och få
en produkt som även för de snabbaste datorer är för svår att faktorisera inom överskådlig
tid.
Primtal
De tal som inte kan faktoriseras kallas primtal.
Definition 6
Ett heltal, p > 1, kallas primtal, om det endast har de positiva delarna 1 och talet p själv.
Många av oss kan räkna upp de första tio primtalen 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 utan att
fundera särskilt länge. Talet 4711 är inget primtal eftersom 7|4711 och 4711 = 7 · 673.
Aritmetikens fundamentalsats visar att primtalen, är de hela talens byggstenar.
Sats 3
Aritmetikens fundamentalsats. Varje positivt heltal kan på ett entydigt sätt skrivas som en
produkt av primtal, om man bortser från faktorernas ordning. Redan de gamla grekerna bevisade, för så där en 2300 år sedan, att det finns oändligt många primtal och att de är oregelbundet fördelade, det vill säga att det kan finnas godtyckligt
stora ’gap’ mellan dem, så kallade ’primtalsöknar’.
Sats 4
Det finns oändligt många primtal Bevis
Låt n vara ett godtyckligt heltal > 1. Bilda
N = 1 · 2 · 3 · ... · n + 1
då är tydligen inget av talen 2, 3, . . . , n delare till N. Den minsta delaren p > 1 till N är
alltså > n. Den minsta delaren till ett tal N måste vara ett primtal p som är > n. Hur stort
tal n vi än väljer finns det alltså ett tal p, som är > n. Därmed är satsen bevisad. Håkan Strömberg
4
KTH STH
Definition 7
Antalet primtal ≤ n definieras med funktionen π(n). Till exempel är π(10) = 4, nämligen talen 2, 3, 5, 7. π(100) = 25 betyder att det finns 25
heltal ≤ 100 som är primtal. I Mathematica kan vi använda funktionen PrimePi[n]. Till
exempel
PrimePi[300]
62
För drygt 100 år sedan visade man att
Definition 8
När n växer, närmar sig π(n) funktionen
f(n) =
n
ln(n) − 1
Därför är samtidigt n också en uppskattning av det primtal som kommer på plats
n/(ln(n) − 1) Exempel 7
Hur många primtal finns det som är < 1000. Mathematica ger oss genom kommandot
PrimePi[1000] svaret 168. Med hjälp av formeln ovan får vi
f(1000) =
1000
≈ 169.27
ln(1000) − 1
Det 168:e primtalet är 997 och 169:e är 1009, som vi tar reda på genom kommandot
Prime[n] i Mathematica. Senare har träffsäkrare funktioner än f(x) ovan tagits fram. 1200
1000
800
600
400
200
2000
4000
6000
8000
10000
Figur 1.1: En till synes ganska bra överensstämmelse – eller hur
Håkan Strömberg
5
KTH STH
1.1. TALTEORI
Eratosthenes såll
Även om det inte är möjligt att hitta alla primtal, är det möjligt att hitta alla primtal som
är mindre än ett givet tal n. Den mest klassiska metoden kallas Eratosthenes såll. Det
kallas ’såll’ därför att metoden liksom gallrar ut primtalen. Vår man Eratosthenes levde i
Alexandria för ungefär 2200 år sedan. Här ska vi visa hur metoden fungerar för n = 52.
Eftersom 1 varken är ett sammansatt tal eller ett primtal startar vi vår uppräkning från talet
2
2
19
36
3
20
37
4
21
38
5
22
39
6
23
40
7
24
41
8
25
42
9
26
43
10
27
44
11
28
45
12
29
46
13
30
47
14
31
48
15
32
49
16
33
50
17
34
51
18
35
52
Första talet i listan är 2 som är ett primtal. Vi stryker sedan vart annat tal i listan. De är ju
alla multipler av 2.
2
19
6 36
3
6 20
37
64
21
6 38
5
6 22
39
66
23
6 40
7
6 24
41
68
25
6 42
9
6 26
43
6 10
27
6 44
11
6 28
45
6 12
29
6 46
13
6 30
47
6 14
31
6 48
15
6 32
49
17
6 34
51
6 16
33
6 50
6 18
35
6 52
Första icke markerade talet i listan är nu 3, som då måste vara ett primtal. Vi stryker sedan
vart tredje tal i hela listan och får
2
19
6 36
3
6 20
37
64
6 21
6 38
5
6 22
6 39
66
23
6 40
7
6 24
41
68
25
6 42
69
6 26
43
6 10
6 27
6 44
11
6 28
6 45
6 12
29
6 46
13
6 30
47
6 14
31
6 48
6 15
6 32
49
17
6 34
6 51
6 16
6 33
6 50
6 18
35
6 52
Inget av de icke strukna talen efter 3 kan vara en multipel av 2 eller 3. Nu är nästa icke
markerade tal 5, vilket leder till att vi stryker var femte tal i listan, om de inte redan är
strukna.
2
19
6 36
3
6 20
37
64
6 21
6 38
5
6 22
6 39
66
23
6 40
7
6 24
41
68
6 25
6 42
69
6 26
43
6 10
6 27
6 44
11
6 28
6 45
6 12
29
6 46
13
6 30
47
6 14
31
6 48
6 15
6 32
49
17
6 34
6 51
6 16
6 33
6 50
6 18
6 35
6 52
Under detta varv hände det inte så mycket, men vi vandrar vidare och ser att nästa primtal
är 7. Vi stryker alla multipler till 7. Det är bara talet 49 som under detta varv blir struket. I
fortsättningen kommer vi inte att stryka några fler tal och får till slut:
2
19
6 36
3
6 20
37
64
6 21
6 38
5
6 22
6 39
66
23
6 40
7
6 24
41
68
6 25
6 42
69
6 26
43
6 10
6 27
6 44
11
6 28
6 45
6 12
29
6 46
13
6 30
47
6 14
31
6 48
6 15
6 32
6 49
17
6 34
6 51
6 16
6 33
6 50
6 18
6 35
6 52
Vi vet nu att 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47 är samtliga primtal ≤ 52.
Här ett C-program som bestämmer alla primtal mindre än 100000.
Håkan Strömberg
6
KTH STH
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#define max 100000
int main(void){
int tal[max]={0},i,s,m,start=2,n=0;
while(s∗s<max){
s=start;
while(tal[s]>0)
s++;
m=2;
while(s∗m<max)
tal[s∗m++]=1;
start++;
}
for(i=2;i<max;i++)
if(tal[i]==0){
printf("%d ",i);
n++;
}
printf("Det finns %d\n",n);
}
I arrayen tal sätts in 1:or på de platser vars index inte är ett primtal. Så när vi efter whileloopen går igenom tal och stöter på en cell med värdet 0, så vet vi att motsvarande index
är ett primtal.
Titanic Prime
1984 definierade Samuel Yates att ett titanic prime är ett primtal med åtminstone 1000
siffror. Vid den tidpunkten fanns det bara 110 kända primtal av den storleken. Idag har
man funnit fler än 100000.
Det största kända primtalet
Att finna ett nytt primtal större än alla tidigare kända, har länge varit en stor utmaning.
Att inneha ’världsrekordet’ en stor ära. Pietro Cataldi räknas som den första egentliga
världsrekordhållaren, när han 1588 visade att både 217 − 1 = 131071 och 219 − 1 = 524287
var primtal. 1951 slogs rekordet för sista gången utan hjälp av elektroniska hjälpmedel, då
Ferrier visade att
2148 + 1
= 20988936657440586486151264256610222593863921
17
var ett primtal.
Därefter har datorerna tillsammans med allt ’smartare’ algoritmer varit en förutsättning för
att slå nya rekord. Fram till mitten av 90-talet var det superdatorerna som totalt behärskade
området. 1996 var det en Cray T94, som fann primtalet 21257787 − 1, med sina 378632 siffror.
Men sedan dess är det utan undantag vanliga persondatorer och ’amatörer’, som genom
Great Internet Mersenne Prime Search, GIMPS stått för nya rekord.
Håkan Strömberg
7
KTH STH
1.1. TALTEORI
Det rekord som gällde fram till september 2006 var 230402457 − 1. Talet upptäcktes med en
vanlig Pentium 4, 3GHz, maskin 2005. Vi tar reda på hur många siffror talet innehåller.
10x
log10 (10x )
x
x
=
=
=
≈
230402457 − 1
log10 230402457 − 1
log10 230402457 − 1
9.1520514988 · 106
Det största kända primtalet kan alltså skrivas ≈ 109152051 , vilket betyder att det har cirka
9 152 051 siffror. Med hjälp av Mathematica kan vi bestämma det exakta antalet siffror och
dessutom räkna förekomsten av de olika siffrorna:
IntegerLength[2^30402457-1]
Med IntegerLength[2^30402457-1] får vi det eftersökta talet 9152052.
Genom DigitCount[2^30402457-1] kan vi ta reda på frekvensen av av siffrorna i
detta stora tal:
Siffra
0
1
2
3
4
5
6
7
8
9
Frekvens
913468
914272
916362
913997
914191
916441
915744
915905
916856
914816
Hemsidan http://primes.utm.edu/primes/ berättar mer om jakten på allt större
primtal. Där koncentrerar man sig på tal som kan uttryckas som 2n −1, så kallade Mersenne
prime.
Definition 9
När 2n − 1 är ett primtal kallas det ett Mersenne prime Håkan Strömberg
8
KTH STH
Mathematica
Under kursen ska vi använda programmet Mathematica, som tillhör kategorin CAS (Computer Algebra System). Exempel på andra program i denna kategori är Maple, Derive,
Macsyma och REDUCE. Med hjälp av dessa program kan man inte bara utföra numeriska
beräkningar utan också räkna med symboler. Normalt får man de exakta rötterna till en
ekvation eller f ′ (x) till f(x) uttryckt i elementära funktioner. Här följer en kort introduktion.
Aritmetiska uttryck skrivs med +,-,/,* och^ tillsammans med vanliga runda parenteser.
Avsluta raden med SHIFT + ENTER. Mathematica serverar resultatet på nästa rad. Precis som
i C används decimalpunkt i stället för decimalkomma.
2+3+4+7.1
16.1
Ett lite mer komplicerat uttryck med parenteser
42 + 32
5
(4^2+3^2)/5
5
Är talen i uttrycket exakta kommer Mathematica att svara exakt efter att ha reducerat ett
rationellt tal så långt möjligt. Ett tal anses inte exakt om det innehåller decimalpunkt Vi
skriver in 10/30 och datorn svarar 1/3
10/30
1/3
10.0/30
0.333333
Vill man ha resultatet som ett flyttal använder man N[].
N[10/30]
10/30//N
Är man inte nöjd med antalet signifikanta siffror, kan man ange antalet genom en extra
parameter
N[10/30,40]
0.3333333333333333333333333333333333333333
Vi jämför två skrivsätt och förstår varför det blir skillnad
2^100
1267650600228229401496703205376
N[2^100]
1.26765 10^30
Håkan Strömberg
9
KTH STH
1.1. TALTEORI
Vi studerar så några matematiska funktioner, som alla har motsvarande knappar på räknedosan.
√
Kvadratroten skrivs Sqrt[]. Sqrt[9] blir förstås 3. Sqrt[2] förblir 2 eftersom svaret
ska vara exakt. För Sqrt[2.0] däremot får man ett närmevärde. Är man inte nöjd med
antalet decimaler vet vi redan hur man gör för att få fler. sin skrivs Sin[] och förväntar
sig ett argument givet i radianer. Har man en vinkel i grader får man helt enkelt först räkna
om det till radianer.
Sqrt[9]
3
Sqrt[2.0]
1.41421
N[Sqrt[2],30]
1.41421356237309504880168872421
Sin[Pi/2]
1
N[Sin[20*Pi/180]]
0.34202
Med Log[] avses, precis som i C, det vi i matematikboken läser som ln. Uttrycket Exp(1)
betecknar det naturliga tal e. Vill man bestämma log10 10000, får man lägga till basen som
första argument eller använda Log10[]
Log[5.]
1.60944
Log[Exp[1]]
1
Log[10,10000]
4
Log10[10000]
4
För att snabba upp användningen i Mathematica har man definierat % som senaste utskrivna
resultatet, som man sedan kan använda i nästa inmatning. Två %% syftar på näst senaste
resultatet. Följdriktigt blir därför sista uttrycket nedan 3 + 66 = 46659.
1+2
3
%+3
6
%% + %^%
46659
Mathematica minns alla tilldelningar som gjorts sedan man startade. Ett sätt att rensa minnet
är att i menyn under Evluation välja Quit Kernel ← Local.
Variabler fungerar precis som i vanliga programmeringsspråk. Man kan undertrycka utskriften från en sats genom att avsluta den med semikolon, (;). Kom ihåg att till exempel
xy inte är samma sak som x*y. I det första fallet är det en variabel i andra fallet produkten
av variablerna x och y. Man tilldelar en variabel ett värde genom =.
x=1;
y=5;
x+y
Håkan Strömberg
10
KTH STH
x*y
6
5
Med hjälp av funktionen Solve kan man lösa ekvationer. För att lösa andragradsekvationen
x2 − 2x − 8 = 0
skriver vi
Solve[x^2-2x-8==0]
{{x -> -2}, {x -> 4}}
Mathematica svarar med de två rötterna x1 = 4 och x2 = −2. Löser vi istället ekvationen
x2 − 5x + 3 = 0
skriver vi
Solve[x^2-5x+3==0,x]
och får de exakta rötterna
√
5
13
x1 = +
2
2
5
x1 = −
2
√
13
2
Funktionen Simplify används för att förenkla algebraiska uttryck som till exempel
a2 − b2
c−a
1
b2 − c2
+ 2
−
+
2
a+b
c −a
b−c
c+a
Om vi exekverar uttrycket
Simplify[(a^2-b^2)/(a+b)+(c-a)/(c^2-a^2)+(b^2-c^2)/(b-c)-1/(c+a)]
a+c
förstår vi att det kan förenklas till a + c. Lyckas man hålla reda på parenteserna är det
mycket tidsbesparande att använda ett program som Mathematica!
Med hjälp av Expand kan vi utveckla parenteser som till exempel
(x + 1)(x − 2)(x + 3)(x − 4)
Vi skriver
Expand[(x+1)(x-2)(x+3)(x-4)]
och får utan väntetid
x4 − 2x3 − 13x2 + 14x + 24
Man plottar en funktion genom kommandot Plot.
Håkan Strömberg
11
KTH STH
1.1. TALTEORI
0,8
0,6
0,4
0,2
K
6
K
4
K
0
2
2
K
4
6
x
0,2
K
0,4
K
0,6
K
0,8
Figur 1.2:
Plot[Sin[x]Cos[x/3],{x,-2Pi,2Pi}]
och får kurvan i figur 1.2 Detta är den enklaste användningen av Plot. En mängd anpassningar återges i hjälpen. Mathematicas Help är mycket omfattande och kanske lite svår att
hitta i. Ägna därför lite tid till att studera vad som står att läsa om till exempel Plot.
Så till sist några funktioner vi refererat till i texten här ovan. Funktionen FactorInteger
primfaktoruppdelar ett heltal
FactorInteger[123456789]
Talet 123456789 = 32 · 3803 · 3607, där 3, 3803 och 3607 alla är primtal.
Om kommandot PrimeQ[n] returnerar True är det mycket troligt att n verkligen är ett
primtal.
Med kommandot PrimePi[n] får vi reda på hur många primtal det finns som är ≤ n.
PrimePi[30000]
3245
Det finns alltså 3245 primtal < 30000
Kommandot Prime[n] ger oss det n:te primtalet i ordningen.
Kommandot IntegerLength[n] kan användas för att ta reda på hur många siffror ett
tal n innehåller.
Håkan Strömberg
12
KTH STH
Teoriuppgifter
Problem 1
Är det sant att då ett naturligt tal n är delbart med både 3 och 4, så är det även delbart
med 12? Problem 2
Är det sant att då ett naturligt tal n är delbart med både 4 och 6, så är det även delbart
med 24? Problem 3
Talet 3 är inte delare till n, 3 ∤ n är det då möjligt att 3|2n? Problem 4
Man vet att n är jämnt. Vilket är det minsta heltal a, så att 6|a · n? Problem 5
Man vet att 6|15n. Är det då nödvändigt att 6|n? Problem 6
Faktoruppdela talen 72 och 63 utan elektroniska hjälpmedel Problem 7
Bestäm q och r då 32 divideras med 7 Problem 8
Skjortförsäljning. Adam började sälja skjortor, för 200 kr/styck. Försäljningen gick dock
inget vidare, förrän han sänkte priset med några kronor. På tre dagar hade han sålt för
totalt 60377 kr. Hur många skjortor hade han sålt och till vilket pris? Problem 9
Försäljning av radioapparater. Under säsongen har företaget sålt ett parti radioapparater.
Totalt gav försäljningen i norra distriktet 389393 kr och i södra 831119 kr. Vilket pris hade
radioapparaten och hur många hade sålts i de båda landsändarna? Problem 10
Hur många faktorer innehåller talet 4096 = 212 ? Håkan Strömberg
13
KTH STH
1.1. TALTEORI
Problem 11
Finn tre positiva heltal a, b och c, sådana att
31 | (5a + 7b + 11c)
Problem 12
Tre distrikt Tre distrikt har under julhandeln sålt jultomtemasker, alla till samma pris.
Nedan ser vi den totala omsättningen i kronor
Distrikt
Distrikt I
Distrikt II
Distrikt III
Omsättning
5083 kr
5423 kr
5117 kr
Hur mycket kostade en jultomtemask, ett helt, > 1, antal kronor? Problem 13
Stigande försäljning Försäljningen av kökspallen Palle har stigit under de senaste tre
åren, trots att priset under perioden varit detsamma (ett heltal kr). Här är omsättningssiffrorna:
År
Omsättning (kr)
2001
85963
2002
106361
2003
202429
Hur mycket kostar pallen Palle? Problem 14
Sedan texten om det största kända primtalet skrevs, har rekordet slagits och det just nu
största kända primtalet är
243112609 − 1
Hur många siffror har detta tal? Problem 15
Skriv ett C-program som tar emot ett heltal och som avgör om det är delbart med 7. Viktigt
Programmet ska använda den metod som beskrivs under rubriken Delbarhetskriterier. Problem 16
Från Adam hör vi följande: ”Välj ut 5 heltal och jag lovar att jag kommer att kunna plocka
ut tre av dessa, så att dess summa är delbar med 3. Ska vi slå vad att jag kan?”. Kommer
han att vinna vadet? Håkan Strömberg
14
KTH STH
Problem 17
Följande funktion är en naiv test av om ett tal n är primtal eller inte. Då så är fallet
returneras 1 annars 0.
a) Varför räcker det att testa upp till
√
n?
b) För vart annat varv i loopen är i jämnt. Hur kan man med små förändringar göra
funktionen mer effektiv?
1
2
3
4
5
6
7
int prime(int n){
int i;
for(i=2;i<=sqrt(n);i++)
if(n%i==0)
return 0;
return 1;
}
Problem 18
Hur många av talen 2n − 1, n < 50 är primtal? Vad kan man gissa ska gälla för n, för att
2n − 1 ska vara ett primtal? Använd funktionen PrimeQ i Mathematica Problem 19
Vilket är det största primtal man kan lagra i en dator med 32-bitars heltal? Håkan Strömberg
15
KTH STH
1.1. TALTEORI
Problemlösning
Här kommer de första problemen. Vilken poäng en korrekt lösning är värd anges inom
parentes i rubriken. Totalt ska du under kursen samla ihop 50 poäng för att få godkänt på
denna del.
Problemlösning 1. Dela bröd och pengar (1)
Två luffare, A med 3 bröd och B med 5 bröd, hade just satt sig vid vägkanten för att äta,
då en tredje luffare, C, kom förbi. C hade ingen egen mat, utan betalade sin andel med 8
kr. Hur skulle detta belopp fördelas rättvist mellan A och B, om maten delats lika mellan
de tre luffarna? Problemlösning 2. De fyra korten (1)
Det ligger fyra kort, med baksidan upp, i en rad på bordet, spaderkung, spaderdam,
hjärterkung och hjärterdam. I vilken ordning ligger korten om vi vet att:
• det ligger en kung direkt till höger om en dam
• det ligger en dam direkt till höger om en kung
• det ligger en kung direkt till höger om en kung
• det ligger en spader direkt till höger om en spader
• det ligger en spader direkt till höger om en hjärter
Problemlösning 3. Finn skeppen (1)
I figur 1.3 ser vi ett hav bestående av 10 × 10 rutor. I havet finns ett antal fyrar markerade
4
1
3
2
3
4
0
2
4
Figur 1.3:
med cirklar. Inuti cirklarna finns ett tal, som berättar hur många skepp man kan se från
fyren. Alla dessa skepp finns i samma rad eller kolumn som fyren. De åtta rutor som
omger ett skepp kan aldrig innehålla vare sig ett skepp eller en fyr. Alla skepp syns från
åtminstone en fyr. Var finns skeppen? Håkan Strömberg
16
KTH STH
Problemlösning 4. Finn skeppen igen (1)
Samma regler som i problemet ovan för figur 1.4. 6
1
2
1
3
2
1
4
3
3
Figur 1.4:
Problemlösning 5. Talet 15873 (1)
Starta med talet 15873. Multiplicera med ett tal från mängden {1 . . . 9}. Multiplicera sedan
med 7. Betrakta resultatet. Kan du förklara ”fenomenet”? Problemlösning 6. De falska mynten (2)
Framför dig på bordet ligger 13 påsar med mynt. Alla med minst 100 mynt. Mynten väger
normalt exakt 8.0 gram, utom i en påse där det finns enbart falska mynt, som alla väger
9.0 gram. Hur kan man finna den påse som innehåller de falska mynten genom en enda
vägning på en vanlig våg? Problemlösning 7. De fyra konstnärerna (2)
Adamsson, Bertilsson, Curtsson och Davidsson är fyra begåvade konstnärer. En är dansare,
en målare, sångare och en är författare.
• Adamsson och Curtsson satt i publiken då sångaren uppträdde
• Både Bertilsson och författaren satt en gång modell för målaren
• Författaren, vars biografi om Davidsson blev en storsäljare, har just påbörjat en
biografi om Adamsson
• Adamsson har aldrig hört talas om Curtsson
Kan du reda ut vilka yrken de fyra herrarna har? Problemlösning 8. Dela äpplen (2)
Adam, Bertil och Curt hade fått lov att dela på en hög äpplen. Adam kom först och tog en
1/3 av högen. När Bertil kom lite senare trodde han att han var först på plats, så därför tog
även han 1/3 av högen. Curt kom sist, men trodde han var först. Han tog en 1/3 av högen
och lämnade 8 äpplen, som låg kvar och ruttnade. Hur många äpplen fanns det från början
i högen? Hur många olika äpplen fick var och en? Håkan Strömberg
17
KTH STH
1.1. TALTEORI
Problemlösning 9. Den betande geten (2)
Vid en knut av ett 5 meter långt och 4 meter brett hus, står en get tjudrad i ett 6 meter
Figur 1.5:
långt rep. På tomten kring huset växer saftigt gräs. Hur stor area av gräsmattan har geten
tillgång till? Problemlösning 10. Den blommande trädgården (2)
a) ”I dag blommar all tre sorterna”, utbrister den förvånade trädgårdsmästaren.
”Den här sällsynta sorten från Sydamerika, blommar var 11:e dag”
”Den här rosen från Asien blommar var 13:e dag”
”Och den här liljan från Australien var 15:e dag”
Hur lång tid dröjer det, innan de tre blommorna åter blommar samma dag?
b) Samma uppgift som ovan, men nu blommar de tre blommorna var 11:e, 22:a och
15:e dag
c) Samma uppgift som ovan, men nu blommar de tre blommorna var 72:a, 48:e och
144:e dag
Problemlösning 11. KTH-basket (3)
I basket får man 1 poäng för lyckade straffkast, 2 poäng för lyckade skott inom korgområdet
och 3 poäng för lyckade distansskott. I ”KTH-basket” däremot får man a poäng för lyckade
straffar och b poäng för andra lyckade skott, alltså ingen extra bonus för distansskott som
går i korgen. Poängen är så satta att det finns 35 olika slutpoäng, som är omöjliga att
uppnå, en av dem är 58. Naturligtvis får man färre poäng för ett lyckat straffkast än för ett
målkast utifrån planen. Hur många poäng får man för de två olika poänggivande skotten?
Håkan Strömberg
18
KTH STH
Problemlösning 12. Inhägnaderna (3)
Figur 1.6: Flygbild över hagarna
En bonde hägnade in en rektangulär bit av sin åker med 139 meter stängsel. Förutom själva
omkretsen dessutom en diagonal, där alla sidor och diagonalen hade ett mått i hela meter.
Till sin fasa såg han att grannen lyckas skapa en liknade hage med mindre stängsel och
större area! Även hos grannen var alla mått i hela meter och med ett stängsel utefter en
diagonal. Bestäm måtten hos de två hagarna. Problemlösning 13. Mysteriet med kokosnötterna (3)
Fyra män hade lidit skeppsbrott på en öde ö, där det inte finns något annat ätbart än
kokosnötter. De märkte snart att öns apor satte i sig väldiga mängder, och för att undvika
att själva råka ut för kokosnötsbrist, samlade de ihop alla kokosnötter de kunde finna i en
enda stor hög. Sedan de gått och lagt sig den kvällen vaknade emellertid en av de fyra
snart igen och muttrade bistert för sig själv:
”Jag känner ju inte alls de här tre andra, och har ingen aning om huruvida de är ärliga eller
inte. Så det är nog säkrast att jag tar min andel av kokosnötterna genast.”
Han gick ut och delade upp kokosnötterna i fyra lika stora högar, upptäckte att det blev
tre över, som han kastade åt aporna, gömde sin fjärdedel och samlade ihop de återstående
tre fjärdedelarna i en hög, varefter han kröp till kojs igen.
Strax efteråt vaknade en annan av männen, funderade sig fram till samma slutledning som
den förste och delade upp de återstående kokosnötterna i fyra lika stora högar, upptäckte
att det blev tre över, som han kastade åt aporna, gömde sin fjärdedel och samlade ihop
de återstående tre fjärdedelarna i en hög igen, och kröp sedan till kojs på nytt. De båda
återstående männen upprepade i tur och ordning samma förfarande.
Nästa morgon var högen synbart mindre än den hade varit kvällen innan, men eftersom
de alla fyra led av en viss skamkänsla, var det ingen som sade någonting, utan alla gick
villigt med på det förslag som väcktes, om att var och en skulle ta sin del och använda den
efter eget gottfinnande. Alltså delade de upp de återstående kokosnötterna i fyra lika stora
delar och tog hand om var sin fjärdedel av dem. Den här gången blev det inte en enda
kokosnöt över åt aporna.
Vilket är det minsta antal kokosnötter högen ursprungligen kan ha innehållit? Håkan Strömberg
19
KTH STH
1.1. TALTEORI
Problemlösning 14. Mobilen (3)
Figur 1.7 visar en mobil med 7 vågskålar. I dessa ska placeras 40 lika tunga kulor, så att
Figur 1.7:
mobilen väger jämnt, som i figuren. Problemlösning 15. Förvirrad professor (4)
– ”Min bil är stulen”, skriker professorn i samma stund som han stormar in på polisstationen.
– ”Vilket registreringsnummer?”, undrar polismannen.
– ”Jag minns inte en enda siffra. Men det består av fyra siffror, det kommer jag ihåg”
– ”Fyra siffror, eh. . . . Det räcker nog inte.”
– ”Vänta ett tag”, säger professorn, med glansiga ögon,”jag börjar minnas en del angående
mitt bilnummer. Jag diskuterade härom dagen faktorer med min dotterdotter”.
– ”Faktorer, eh?”
– ”Ja, mitt registreringsnummer har ganska många faktorer. Jag visade henne att tre av dessa
faktorer kunde väljas, på flera sätt, så att deras summa blev 100. Anta att mitt nummer är
n.”
– ”Va, n!”, sa den oförstående polismannen.
– ”Anta att mitt nummer är n. Om ax, by och cz alla är lika med n, så kan a, b och c väljas
på ett sätt, sådant att a + b + c = 100. Även dessa val kan göras på fler än ett sätt. Av dessa
valde vi ut det fall, då x + y + z är så litet som möjligt. Vi upptäckte då, min dotterdotter
och jag, att x + y + z är en produkt av fyra primtal. Summan av dessa fyra primtal är, ganska
intressant, 1 större än a och 1 mindre än b.”
– ”Vad sa ni. . . ?”
– ”Att med hjälp av dessa ledtrådar kan ni bestämma mitt registeringsnummer, eller hur?”
– ”?"
Hjälp den stackars polisen att lista ut professorns registeringsnummer Håkan Strömberg
20
KTH STH
Lösningar – Teoriuppgifter
Lösning Teoriuppgift 1
Eftersom n kan skrivas som n = 3 · 4 · m är n|(12 · m) Lösning Teoriuppgift 2
Motexempel 36. 4|36 och 6|36, med 24 ∤ 36. Lösning Teoriuppgift 3
Nej, 2n har ingen faktor 3 Lösning Teoriuppgift 4
a = 3, 6|3n, eftersom n är jämnt Lösning Teoriuppgift 5
Nej, till exempel 6|60 → 6|(15 · 4), men 6 ∤ 4 Lösning Teoriuppgift 6
Först inser man kanske att 9 · 8 = 72 som i sin tur leder till 72 = 3 · 3 · 2 · 2 · 2 · 2.
På samma sätt får vi från multiplikationstabellen att 9 · 7 = 63. I nästa steg kan vi skriva
63 = 3 · 3 · 7 Lösning Teoriuppgift 7
32 = 4 · 7 + 4. Alltså är q = r = 4 Lösning Teoriuppgift 8
Till att börja med kan man tycka att det saknas uppgifter, men med tanke på vad vi just nu
sysslar med, kan det ligga nära till hands att i Mathematica skriva:
FactorInteger[60377]
{{173, 1}, {349, 1}}
Tydligen är detta ett väl tillrättalagt problem. Beloppet kan skrivas 60377 = 173 · 349.
Eftersom vi vet att priset var under 200 kr, vet vi nu att Adam sålde 349 skjortor till priset
173 kr. med penna och papper – fortfarande slitsamt, med räknedosa – möjligt.
Att försöka finna dessa faktorer med huvudräkning – omöjligt? Håkan Strömberg
21
KTH STH
1.1. TALTEORI
Lösning Teoriuppgift 9
Av sammanhanget att döma kan det inte vara fel att i Mathematica skriva:
FactorInteger[389393]
{{439,1},{887,1}}
FactorInteger[831119]
{{887,1},{937,1}}
Faktorn 887 är gemensam för de två beloppen och måste alltså utgöra priset. I norra delen
sålde man 439 apparater och i södra 937 Lösning Teoriuppgift 10
212 = 2 · 2 · 2 · 2 · 2 · 2 · 2 · 2 · 2 · 2 · 2 · 2
Det blir förstås 12 faktorer. Lösning Teoriuppgift 11
En direkt lösning är a = b = c = 31. Med ett enkelt C-program får vi flera lösningar:
1
2
3
4
5
6
7
8
9
#include <stdio.h>
int main(void){
int a,b,c;
for(a=1;a<10;a++)
for(b=1;b<10;b++)
for(c=1;c<10;c++)
if ((5∗a+7∗b+11∗c)%31==0)
printf("%d %d %d\n",a,b,c);
}
Där a = 1, b = 5 och c = 2 är en av många lösningar. Lösning Teoriuppgift 12
Tre distrikt Med hjälp av Mathematica och FactorInteger får vi
5083 = 13 · 17 · 23
5423 = 11 · 17 · 29
5117 = 7 · 17 · 43
Ur detta kan vi sluta oss att en tomtemask kostar 17 kr Lösning Teoriuppgift 13
Stigande försäljning
85963 = 31 · 47 · 59
106361 = 31 · 47 · 73
202429 = 47 · 59 · 73
Palle kostar 47 kr Håkan Strömberg
22
KTH STH
Lösning Teoriuppgift 14
IntegerLength[2^43112609 - 1]
12978189
ger oss svaret Lösning Teoriuppgift 15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
int main(void){
int talet,sista;
printf("Talet ? ");
scanf("%d",&talet);
while(talet>18){
sista=talet%10;
talet=talet/10;
talet=talet−2∗sista;
}
if(talet%7==0)
printf("JA");
else
printf("NEJ");
}
Lösning Teoriuppgift 16
När man dividerar ett tal n med 3 får man någon av resterna 0, 1 eller 2. Om tre av de
givna talen har samma rest, så är summan av dessa tre tal delbar med 3. Om det inte finns
tre tal med samma rest, måste det finnas minst ett med resten 0, 1 respektive 2. Summerar
vi dessa tre tal så kommer summan att bli delbar med 3. Lösning Teoriuppgift 17
Om talet n inte är ett primtal, måste det ha åtminstone två faktorer a1 och a2 . Båda dessa
√
faktorer kan inte vara större än n eftersom det skulle betyda att a1 · a2 > n. Lösning Teoriuppgift 18
För n = 2, 3, 5, 7, 13, 17, 19, 31 är 2n − 1 ett primtal. Man kan bevisa att n i sig måste vara ett
primtal för att 2n − 1 ska vara det. Om det är ett nödvändigt villkor, så är det inte tillräckligt.
Till exempel är 21 1 − 1 = 2047 = 23 · 89. Håkan Strömberg
23
KTH STH
1.1. TALTEORI
Lösning Teoriuppgift 19
Det största talet som kan skrivas med 32 binära siffror är 232 − 1 = 4294967295. Genom att
skriva
Prime[PrimePi[2^32-1]]
får vi svaret 4294967291.
Om man testar ett tal i taget med hjälp av Prime[] och börjar bakifrån. Första kandidaten
att testa blir då 4294967293, eftersom vi snabbt kan avfärda de två största talen. Detta tal
är dock inget primtal, men nästa kandidat är det. Visst är det lite tur att svaret låg så nära
det största möjliga! Laboration
I den första laborationen där du ska bekanta dig med Mathematica, ska du lösa följande,
matematiskt ganska enkla, uppgifter. Poängen för korrekt lösning anges inom parentes i
rubriken. Totalt ska du under kursen samla ihop 50 poäng för att bli godkänd på denna
del.
Laborationsuppgift 1. Fisken (förstagradsekvation) (1)
En fisk består av ett huvud, en kropp och en stjärt. Stjärten är dubbelt så lång som huvudet,
plus 5 cm. Kroppen är dubbelt så lång som som huvudet och stjärten tillsammans. Fisken
är total 105 cm lång. Hur långa är de olika delarna var för sig? Gör ett antagande. Skriv
ned ekvationen, eventuellt på papper. Ta sedan, i sista steget till Mathematica, för att lösa
ekvationen och få svaret.
Tips: Använd funktionen Solve. Om man till exempel vill lösa följande ekvation
4x2 − 8x − 60 = 0
skriver man så här
Solve[4x^2-8x-60==0]
{{x -> -3}, {x -> 5}}
Andragradsekvationen har rötterna x1 = −3 och x2 = 5. Sensmoral: Inget känt datorprogram kan ta emot problemtexten ovan, tolka den, ställa upp och lösa tillhörande ekvation.
Däremot saknar de flesta människor förmågan, att i snabbhet tävla med Mathematica att
lösa en redan uppställd ekvation. Håkan Strömberg
24
KTH STH
Laborationsuppgift 2. Ett litet ekvationssystem (1)
Jag tänker på två tal. Om jag summerar dem får jag summan 394. Om jag bestämmer
skillnaden mellan dem, får jag 118. Vilka tal tänker jag på?
Tips: När man har två ekvationer, som ska lösas i ett system
3x + 4y = 10
5x − 3y = 7
skriver man dem i en lista så här:
Solve[{3x+4y==10,5x-3y==7}]
{{x->2, y->1}}
Laborationsuppgift 3. Skärningspunkter mellan kurvor (1)
I den här uppgiften ska du plotta funktionerna:
f1 (x) = x2 − 3x + 4
och
f2 (x) = −x2 + 5x + 5
och därefter bestämma i vilka punkter de skär varandra
Tips: En funktion plottas med Plot. Ta reda på mer om parametrarna till Plot genom
hjälpen. När du lyckats få upp grafen kan du läsa av ungefärliga värden med ögat.
Ta nu reda på skärningspunkterna genom att använda Solve. Skärningspunkterna ges
exakt. Ta reda på vad som händer om man tillfogar N[Solve[...]]. Laborationsuppgift 4. Jobbig ekvation (1)
En ekvation liknande denna kunde man få i läxa när man på 1950-talet gick i realskolan,
den skolform, som ligger närmast dagens högstadium. Lös den med hjälp av Mathematica
1
1
1
+
1.5 + x 1.5 − x
+
1.5
2x2
=
−
3
x
1
1
1
+
1.5 − x 1.5 + x
Håkan Strömberg
25
KTH STH
1.1. TALTEORI
Laborationsuppgift 5. Förenkling (1)
Med hjälp av funktionen Simplify kan man få Mathematica att förenkla, bland annat,
algebraiska uttryck.
1
1
a − b + 1 + 2
a
2b
b
a
b
a
2
2
a + 4b
ab
Förenkla detta uttryck med hjälp av Mathematica
Tips: När man vill förenkla ett uttryck som
(x − y)2
x
(x − y)
−
x 2 − y2
x−y
skriver man
Simplify[(x - y)*((x + y)^2/(x^2 - y^2) - x/(x - y))]
y
och får svaret y Laborationsuppgift 6. Utveckling (1)
Uttrycket (x + y)2 får man expanderat i Mathematica med hjälp av funktionen Expand.
Man skriver helt enkelt
Expand[(x+y)^2]
x^2+2xy+y^2
En bekant företeelse i matematiken är Pascals triangel, vars topp ser ut som följer:
1
1
1
1
1
1
1
1
7
2
3
4
5
6
1
3
6
10
15
21
1
1
4
10
20
35
1
5
15
35
1
6
21
1
7
1
Expandera (x + y)n för n = 1 . . . 7 och jämför koefficienterna i de uttryck du får med talen i
Pascals triangel. Försök sedan ange utvecklingen av (x + y)8 utan att använda Mathematica.
För att klara det måste du komma på hur man bildar en ny rad i Pascals triangel, i det här
fallet den 9:e. Håkan Strömberg
26
KTH STH
För att du ska få en uppfattning om till, vad Mathematica kan användas löser vi här den
tentamen du råkade ut för i december förra året. Om man skulle tillåta Mathematica som
hjälpmedel under tentamen är det troligtvis endast uppgift 3 som har chansen att överleva. Resten av uppgifterna klarar man av med hjälp av en eller två rader Mathematica.
Uppgifterna är därför inga ’problem’ i egentlig mening, utan endast algoritm- och algebratest.
Tentamen HF1006 och HF1008 TEN2 10 dec 2012
Problem 20
Bestäm nollställena till f ′ (t), då f(t) är
f(t) =
√
t
3 − 5t
Lösning:
f[t_] := Sqrt[t]/(3 - 5 t)
Solve[f’[t] == 0]
Svar: −
3
5
Problem 21
Beräkna gränsvärdet
lim
x→0
cos x − 1
x2
Lösning:
Limit[(Cos[x] - 1)/x^2, x -> 0]
Svar:−
1
2
Problem 22
Bestäm den största möjliga omkretsen för en rektangel som är inskriven i en halvcirkel
med radien r. Rektangelns ena sida ska placeras längs halvcirkelns diameter.
Lösning:
omkr[x_, r_] := 4 x + 2 Sqrt[r^2 - x^2]
Solve[{D[omkr[x, r], x] == 0}, x]
D[omkr[2r/Sqrt[5], r], x, x]
omkr[2 r/Sqrt[5], r] // Simplify
10r
Svar: √ 5
Håkan Strömberg
27
KTH STH
1.1. TALTEORI
Problem 23
Bara en av de följande två funktionerna har någon horisontell tangent i intervallet 0 ≤ x ≤
2π. Bestäm ekvationen för denna tangent.
f1 (x) = x + sin x
f2 (x) = 2x + sin x
Lösning:
f1[x_] := x +
f2[x_] := 2 x
Solve[{f1’[x]
Solve[{f2’[x]
Sin[x]
+ Sin[x]
== 0, x >= 0, x <= 2 Pi}]
== 0, x >= 0, x <= 2 Pi}]
f1 ′ (x) = 0 då x = π. f1(π) = π. f2 ′ (x) saknar nollställen
Svar: y = π Problem 24
Bestäm samtliga asymptoter till funktionen
f(x) =
x2 + 3x − 5
x−1
Lösning:
10
5
-2
1
-1
2
3
4
f[x_] := (x^2 + 3 x - 5)/(x - 1)
Apart[f[x]]
Plot[{f[x], x + 4}, {x, -2, 4}
Svar: y = x + 4 och x = 1 Problem 25
Lös integralen
Z3
2
x2 − 5x + 7
(x − 1)(x − 4)
Lösning:
Integrate[(x^2-5x+7)/((x-1)(x-4)), {x,2,3}]
Svar:1 − ln4 Håkan Strömberg
28
KTH STH
Problem 26
Lös följande separabla differentialekvation
y ′ = (x + 1)(y2 + 25)
Lösning:
DSolve[y’[x]==(x+1)(y[x]^2+25),y[x],x]
Svar: y(x) = 5 tan
5
(2x + x2 + 2C) 2
Problem 27
Lös följande differentialekvationer
a) y ′′ − 5y ′ + 6y = 0
b) y ′′ − y ′ − 12y = x + 2
Lösning:
DSolve[y’’[x]-5y’[x]+6y[x]==0, y[x], x]
DSolve[y’’[x]-y’[x]-12y[x]==x+2, y[x], x]
Svar: y(x) = c1 e2x + c2 e3x
x
23
−
+ c1 e−3x + c2 e4x y(x) = −
144 12
Håkan Strömberg
29
KTH STH