Breuken - Wiskunde - vereenvoudigen
Volgens mij is het ook zo dat je niet altijd met de abc-formule een antwoord kan vinden.
voor x^2 - 6x + 15 zijn bijvoorbeeld geen reele oplossingen ( D = -20). Wortel -20 is 4iV5. Gaat uw gang.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
switch ($D) # D is dominant!
{
case 0; # ALS D 0 IS DAN IS ER 1 OPLOSSING
$x = -$b/(2*$a);
break;
case ($D < 0); # ALS D KLEINER ALS 0 IS DAN IS ER GEEN OPLOSSING
$x = 'geen oplossing';
break;
case ($D > 0 ); # ALS D KLEINER ALS 0 IS DAN ZIJN ER 2 OPLOSSINGEN
$x = (-$b+sqrt($D))/(2*$a);
$x .= ' of -'.$x;
break;
}
?>
switch ($D) # D is dominant!
{
case 0; # ALS D 0 IS DAN IS ER 1 OPLOSSING
$x = -$b/(2*$a);
break;
case ($D < 0); # ALS D KLEINER ALS 0 IS DAN IS ER GEEN OPLOSSING
$x = 'geen oplossing';
break;
case ($D > 0 ); # ALS D KLEINER ALS 0 IS DAN ZIJN ER 2 OPLOSSINGEN
$x = (-$b+sqrt($D))/(2*$a);
$x .= ' of -'.$x;
break;
}
?>
Gewijzigd op 24/01/2011 20:18:12 door Jasper DS
Bas gaat verder in op de theorie. D < 0 Heeft wél een oplossing. Echter niet in de reële verzameling. Eigenlijk zou er moeten staan, geen oplossing in R.
Volgens mij is er toch geen oplossing?
Een oplossing is gelijk aan de x bij het snijpunt met de x-as.
Als je bijvoorbeeld een dalparabool hebt die in zijn geheel boven de x-as staat heb je geen oplossing/snijpunt met de x-as?
En ik denk dat dit een betere berekening is:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
switch ($D) # D is dominant!
{
case 0; # ALS D 0 IS DAN IS ER 1 OPLOSSING
$x = -$b/(2*$a);
break;
case ($D < 0); # ALS D KLEINER ALS 0 IS DAN IS ER GEEN OPLOSSING
$x = 'geen oplossing';
break;
case ($D > 0 ); # ALS D KLEINER ALS 0 IS DAN ZIJN ER 2 OPLOSSINGEN
$x = (-$b+sqrt($D))/(2*$a);
$x .= ' of '.(-$b-sqrt($D))/(2*$a);
break;
}
?>
switch ($D) # D is dominant!
{
case 0; # ALS D 0 IS DAN IS ER 1 OPLOSSING
$x = -$b/(2*$a);
break;
case ($D < 0); # ALS D KLEINER ALS 0 IS DAN IS ER GEEN OPLOSSING
$x = 'geen oplossing';
break;
case ($D > 0 ); # ALS D KLEINER ALS 0 IS DAN ZIJN ER 2 OPLOSSINGEN
$x = (-$b+sqrt($D))/(2*$a);
$x .= ' of '.(-$b-sqrt($D))/(2*$a);
break;
}
?>
Gewijzigd op 24/01/2011 21:37:19 door Yea Rupie
Verder snap ik niet helemaal dat iedereen hier scripts maakt die niet aan de vereisten - vereenvoudiging - voldoen. Mijn script doet dat wel... ;)
Pim - op 24/01/2011 21:42:48:
Op de middelbare school is een antwoord in I nou eenmaal een niet-bestaand antwoord.
Verder snap ik niet helemaal dat iedereen hier scripts maakt die niet aan de vereisten - vereenvoudiging - voldoen. Mijn script doet dat wel... ;)
Verder snap ik niet helemaal dat iedereen hier scripts maakt die niet aan de vereisten - vereenvoudiging - voldoen. Mijn script doet dat wel... ;)
Je script werkt nog niet helemaal, er zitten een aantal foutmelingen in. In het begin ben je ergens een haakje vergeten en deze berekening klopt ook niet echt (foutmelding)
regel erna idem.
nog een haakje vergeten.
je hebt bij het berkenen van d perongelijk b gebruikt ipc c.
Nu heb ik al een uitkomst:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
function abc($a, $b, $c) {
$d2 = pow($b, 2) - 4 * $a * $c;
if($d2 < 0)
return 'Kan niet';
if($d2 == 0)
return 'x = '.implode('/', vereenvoudigBreuk(-$b, 2*$a));
if(is_int(sqrt($d2))) {
$x1boven = -$b + sqrt($d2);
$x1 = implode('/', vereenvoudigBreuk($x1boven, 2*$a));
$x2boven = -$b - sqrt($d2);
$x2 = implode('/', vereenvoudigBreuk($x2boven, 2*$a));
} else {
$x1 = (-$b + vereenvoudigWortel($d2) )/ 2*$a;
$x2 = (-$b - vereenvoudigWortel($d2) )/ 2*$a;
}
return 'x = '.$x1.' V x = '.$x2;
}
function vereenvoudigBreuk($a, $b) {
$positief = $a*$b >= 0;
$a = abs($a);
$b = abs($b);
for($i = min(array($a, $b)); $i > 1; --$i)
if(is_int($a/$i) && is_int($b/$i)) {
$a /= $i;
$b /= $i;
}
if(!$positief)
$a *= -1;
return array($a, $b);
}
function vereenvoudigWortel($n) {
$a = 1;
for($i = floor(sqrt($n)); $i > 1; --$i)
if(is_int($n / pow($i, 2))) {
$a *= $i;
$n /= pow($i, 2);
}
if($a != 1)
return $a.'?'.$n;
return '?'.$n;
}
echo abc(5,3,-30);
?>
function abc($a, $b, $c) {
$d2 = pow($b, 2) - 4 * $a * $c;
if($d2 < 0)
return 'Kan niet';
if($d2 == 0)
return 'x = '.implode('/', vereenvoudigBreuk(-$b, 2*$a));
if(is_int(sqrt($d2))) {
$x1boven = -$b + sqrt($d2);
$x1 = implode('/', vereenvoudigBreuk($x1boven, 2*$a));
$x2boven = -$b - sqrt($d2);
$x2 = implode('/', vereenvoudigBreuk($x2boven, 2*$a));
} else {
$x1 = (-$b + vereenvoudigWortel($d2) )/ 2*$a;
$x2 = (-$b - vereenvoudigWortel($d2) )/ 2*$a;
}
return 'x = '.$x1.' V x = '.$x2;
}
function vereenvoudigBreuk($a, $b) {
$positief = $a*$b >= 0;
$a = abs($a);
$b = abs($b);
for($i = min(array($a, $b)); $i > 1; --$i)
if(is_int($a/$i) && is_int($b/$i)) {
$a /= $i;
$b /= $i;
}
if(!$positief)
$a *= -1;
return array($a, $b);
}
function vereenvoudigWortel($n) {
$a = 1;
for($i = floor(sqrt($n)); $i > 1; --$i)
if(is_int($n / pow($i, 2))) {
$a *= $i;
$n /= pow($i, 2);
}
if($a != 1)
return $a.'?'.$n;
return '?'.$n;
}
echo abc(5,3,-30);
?>
output:
x = -7.5 V x = -7.5
Hij komt niet goed uit, bij:
a = 1 b = 1 c = -30
output: x = -0.5 V x = -0.5
UITKOMST:
Quote:
y = x²+x-30
a = 1 b = 1 c = -30
d = (1)² - 4 x 1 x -30 = 121
x = (-1 - ?121) / (2 x 1) V x = (-1 + ?121) / (2 x 1)
x = -6 V x = 5
a = 1 b = 1 c = -30
d = (1)² - 4 x 1 x -30 = 121
x = (-1 - ?121) / (2 x 1) V x = (-1 + ?121) / (2 x 1)
x = -6 V x = 5
Gewijzigd op 24/01/2011 22:18:08 door Yea Rupie
Toevoeging op 24/01/2011 22:53:56:
Karl Karl op 24/01/2011 20:13:17:
Volgens mij is het ook zo dat je niet altijd met de abc-formule een antwoord kan vinden.
x = (-b +-W(b2 - 4ac))/2a
x 2a = -b +-W(b2 - 4 a c)
x 2a + b = +-W(b2 - 4 a c)
(x 2a + b)2 = b2 - 4 a c
4a2 x2 + 4a b x + b2 = b2 - 4 a c
4a2 x2 + 4a b x + 4 a c = 0
a x2 + b x + c = 0 && a != 0
De tweedegraads vergelijking en de abc formule zijn dus 'dezelfde' en dus heb je altijd alle antwoorden.