Sida 1 av 2
Matematikexempel (kombinatorik)
Postat: 9 september 2010, 18:10:06
av sonite
Jösses, min matte är inte var den var.
Hur får jag reda hur många utfall dessa variabler kan anta samt dess värden! Utan att sitta å plussa!! ^^ (har redan gjort det, men är intresserad av formler för att kontrollera om jag har rätt).
0,0
0,05
0,10
0,15
0,27
0,56
Jag tror att det är 28st ink 0,0
Mvh
Sonite

Re: Matematikexempel
Postat: 9 september 2010, 18:20:56
av Andax
Du får nog förtydliga lite. Vilka variabler?
Re: Matematikexempel
Postat: 9 september 2010, 18:25:30
av sonite
Variabel 1: 0,0
Variabel 2: 0,05
Variabel 3: 0,10
Variabel 4: 0,15
Variabel 5: 0,27
Variabel 6: 0,56
Vi kör bara med positiva värden, hur många olika kombinationer finns det då av dessa samt vilka värden kan de anta?
Ex. det lägsta värdet är 0,0 då är det ett utfall
Det högsta uppnårbara värdet är 0,56 + 0,27 + 0,15 + 0,15 + 0,10 + 0,05 + 0,0 = 1,13
Där är 2st fall. hur måga till av dessa värden finns det?
Mvh
Sonite
Re: Matematikexempel
Postat: 9 september 2010, 18:31:03
av Icecap
Om du menar OLIKA värden måste du nog räkna ihop först, t.ex. 0,05 + 0,10 = 0,15 (som redan finns)
Men om det du vill räkna ut bara är antal kombinationer som är möjligt finns det en formel.
Re: Matematikexempel
Postat: 9 september 2010, 18:45:08
av sonite
haha... ok men vi börjar där Icecap. Vad är antalet möjliga kombinationer

Re: Matematikexempel
Postat: 9 september 2010, 18:52:06
av sonite
Har jag missat någon?
0,00
0,05
0,10
0,15
0,20
0,25
0,27
0,30
0,32
0,37
0,42
0,47
0,52
0,56
0,57
0,61
0,66
0,71
0,76
0,81
0,83
0,86
0,88
0,93
0,98
1,03
1,08
1,13
Re: Matematikexempel
Postat: 9 september 2010, 19:03:07
av 4kTRB
Känns som en algoritm typ lite bubblesort skulle kunna fixa biffen?
Re: Matematikexempel
Postat: 9 september 2010, 19:20:45
av Icecap
Bubbelsort kan bara sortera, inte räkna ut antal möjliga kombinationer.
Egentligen är det ju ett binärt problem. De 6 värden kan vara med eller inte, om man då inte bekymrer sig om lika värden i första hand är det ett helt vanligt 6-bit tal vilket ger 63 kombinationer.
Sedan är det värden som överlappar, dessa ska räknas bort, ett typisk jobb för Excel eller liknande.
Varje bit motsvarar ett värde och sedan är det bara att köra på.
Men först måste man göra lite tankejobb. Ett av värden är 0,0, alltså kan man ta bort detta värde i tabellen, det kvittar ju totalt om man adderar detta eller inte.
Kvar blir 5 bit, alltså 32 kombinationer. Men då '00000' inte är någon av värden ska den tas bort, alltså 31 kombinationer.
Sedan är det bara att räkna ihop och kolla efter samma värden.
Re: Matematikexempel
Postat: 9 september 2010, 19:24:53
av bit96
2 upphöjt till antal variabler, minus ett. Alltså (2^6)-1 = 63.
Det ger dock kanske (eller helt säkert i ditt exempel) flera lika värden.
Som föreslogs innan, bubbelsortera och stryk sen de närliggande lika värdena.
Edit: Jaha, Icecap hann före innan jag tryckte på Enter.
Ja, nollor kan optimeras bort, dock skall talet noll i så fall ingå en gång i resultatet.
Re: Matematikexempel (kombinatorik)
Postat: 9 september 2010, 20:08:28
av TomasL
För att räkna ut maximalt antal kombinationer kan du använda n x (n+1)/2.
Dock vet jag inte hur man kan räkna ut antalet unika summor, tveksam om det går.
Re: Matematikexempel (kombinatorik)
Postat: 9 september 2010, 20:45:45
av nablaman
Följande lilla PHP-script
Kod: Markera allt
$powerset = array(array());
foreach (array(0.0, 0.05, 0.10, 0.15, 0.27, 0.56) as $x)
foreach ($powerset as $p) {
$powerset[] = $s = array_merge(array($x), $p);
$sums[] = array_sum($s);
}
sort(($sums = array_unique($sums)));
print_r(array_values($sums));
ger
[0] => 0
[1] => 0.05
[2] => 0.1
[3] => 0.15
[4] => 0.2
[5] => 0.25
[6] => 0.3
[7] => 0.27
∞ => 0.32
[9] => 0.37
[10] => 0.42
[11] => 0.47
[12] => 0.52
[13] => 0.57
[14] => 0.56
[15] => 0.61
[16] => 0.66
[17] => 0.71
[18] => 0.76
[19] => 0.81
[20] => 0.86
[21] => 0.83
[22] => 0.88
[23] => 0.93
[24] => 0.98
[25] => 1.03
[26] => 1.08
[27] => 1.13
28 unika summor. Hoppas jag uppfattade rätt vad du ville åt

Re: Matematikexempel (kombinatorik)
Postat: 9 september 2010, 22:07:27
av snigelen
Jag fick samma resultat
Kod: Markera allt
octave3.2:93> unique(sum(repmat([0 5 10 15 27 56],63,1).*(dec2bin((1:63)')-'0'), 2))/100
ans =
0.00000
0.05000
0.10000
0.15000
0.20000
0.25000
0.27000
0.30000
0.32000
0.37000
0.42000
0.47000
0.52000
0.56000
0.57000
0.61000
0.66000
0.71000
0.76000
0.81000
0.83000
0.86000
0.88000
0.93000
0.98000
1.03000
1.08000
1.13000
Edit: Fixade bugg (som inte spelar någon roll när något av talen är noll).
Re: Matematikexempel (kombinatorik)
Postat: 9 september 2010, 22:08:46
av nablaman
Grym oneliner!

Re: Matematikexempel (kombinatorik)
Postat: 9 september 2010, 22:09:33
av TomasL
Det är säkert bra, men TS ville väl ha en formel, eller nått liknande.
Re: Matematikexempel (kombinatorik)
Postat: 9 september 2010, 22:29:41
av nablaman
Jag tror man får nöja sig med en "dator-lösning" på detta problem, eftersom vi inte har någon ytterligare information om hur in-värdena förhåller sig till varandra.