Ismertető A középiskolában sokféle egyenlet megoldásával megismerkednek a diákok. A matematikaórán azonban csak korlátozott típusú egyenletek fordulnak elő. Nem is cél az egyenletmegoldás általános tárgyalása, nem szólva az explicit módon nem megoldható, magasabb fokú vagy transzcendens egyenletekről. A továbbiakban megtanuljuk használni a Solvert, az Excel egyenletmegoldó (illetve annál sokkal általánosabb célú) eszközét. Nem foglalkozunk az egyenlet megoldásának módjával. A gyökök értékére vagyunk kíváncsiak, hasonlóan ahhoz, mint amikor számológéppel meghatározzuk egy szám négyzetgyökét. Az Excel Célértékkeresője is lehetővé teszi bizonyos egyenletek megoldását. De a Solver inkább általános problémák megoldására használható. Ehez a témakörhöz kapcsolódóan érdemes betekintenünk még az Ms-Office Samples\Solvsapm.xls file-jába, ami az Excel telepítésekor kerül a háttértárra. A Solver telepítése, illetve indítása A Solver az Excel bővítményei közé tartozik. Első felhasználása előtt fel kell vennünk a menübe a bővítménykezelő segítségével (Eszközök/Bővítménykezelő). Jelöljük be a Solver bővítmény használatát, majd kattintsunk az OK gombra. Az Office telepítésétől függően esetenként szükség lehet a telepítő CD-re. Ezek után a Solver megjelenik az Eszközök menüben, ahonnan el tudjuk indítani. A Solver A Solver egy úgynevezett „mi lenne ha” típusú elemzőeszköz. Segítségével megkereshetjük a közvetlenül vagy közvetve - cellákban szereplő képletekkel - megadott korlátozó feltételeknek megfelelő értéket. A keresett értéket az úgynevezett célcella tartalmazza. A feltételekben szereplő cellákat módosuló celláknak nevezzük. A feltételek általában a módosuló cellákra hivatkozó képletek. A Solver úgy változtatja a módosuló cellák értékét, hogy a célcellában meghatározott érték legyen a végeredmény. Például: Az ax + b = c egyenlet megoldásánál az x-et tartalmazó cella a módosuló cella, a megoldás keresésénél a Solver ennek az értékét fogja módosítani. A célcella tartalmazza a c értékét, korlátozó feltételünk pedig az, hogy az ax + b értéke legyen egyenlő a c értékével. A Solver nem csak egyenletek, egyenletrendszerek megoldására alkalmas. Nagyon széles körű problémák vizsgálata lehetséges a segítségével. A továbbiakban az alkalmazási lehetőségek közül láthatunk néhány példát az Ms-Excel 2003 felhasználásával.
A 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
B
C
D
E
F
G
H
I
J
Egyismeretlenes, másodfokú egyenletek A megoldás menete 1. , Válasszuk ki a módosuló cellát. (áttekinthetőbb szerkezetet kapunk, ha ezt a cellát elnevezzük x-nek, vagy az ismeretlennek megfelelő más betűvel jelöljük)
2., Redukáljuk 0-ra az egyenletet. (az egyenlet nullára redukálása nem szükséges feltétele a Solver alkalmazásának, ha az egyik oldalon egy konstans áll akkor ezt is beírhatjuk a paraméterek ablak Érték szövegdobozába)
3., Írjuk be egy cellába képletként az egyenlet bal oldalát, ez lesz a célcella. 4., Indítsuk el a Solvert. 5., Adjuk meg az egyenlet bal oldalát tartalmazó célcellát. 6., Jelöljük be az Érték választógombot, és adjuk meg értékként a 0-t. 7., Módosuló cellaként adjuk meg az ismeretlenhez kijelölt cellát. 8., Kattintsunk a Megoldás gombra. A fenti eljárás alkalmazásánál nincs szükség külön korlátozó feltételek előírására. A Solver meghatározza a (közelítő) megoldást, amit a módosuló cellában láthatunk. A célcella mutatja a megoldás pontosságát. Példa: Oldjuk meg a Solverrel az f(x)=x2 – 6x = –8 másodfokú egyenletet! A nullára redukált alak: x2 – 6x + 8 = 0. x1 : 2
2
x2 :
4
27 Az egyenlet: x -6x+8=0 -9,4E-07 -2E-07 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 A további gyökök meghatározása: 45 A Solver egyetlen megoldást határoz meg. További megoldásokhoz a módosuló cella 46 kezdőértékének a megadásával juthatunk. Kezdőértéknek célszerű egy a keresett gyökhöz közel 47 eső számot beírni. 48 49 A kezdőértéket például úgy határozhatjuk meg, hogy grafikonon ábrázoljuk a nullára redukált 50 egyenletet, majd az ábrázolt tartomány megfelelő finomításával megközelítőleg leolvassuk a 51 függvény zérushelyét. 52 53 Írjunk például az előző feladatban a F26 cellába a másik gyökhöz közel eső 3,8-öt, és indítsuk el 54 így a Solvert. Megkapjuk a másik gyök közelítő értékét is. 55
A 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
B
C
D
E
F
G
H
I
Feladatok: Oldjuk meg az alábbi egyenleteket a Solver segítségével! Határozzuk meg az összes megoldást! 1., 4x – x2 = 3
2., 5x2 – x3 = 12 3., 3x4 + 1 = 9x2 4., x2 + 1/x2 = 8 5., |x – 3| + |x – 2| = x/2 + 8
J
A 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 52 53
B
C
D
E
F
G
H
I
J
Függvény szélsőértékének meghatározása A megoldás menete 1. , Vegyük fel az adatokat a függvény ábrázolásához az értelmezési tartományban. 2., Ábrázoljuk a függvényt. 3., Olvassuk le a grafikonról a szélsőérték közelítő értékét, ezt adjuk meg módosuló cellaként (xmax). (A szélsőértékek meghatározásánál fontos, hogy a grafikonról leolvasott közelítő értékből induljunk ki. A szélsőértékhelyek közelében ugyanis a függvényértékek csak kismértékben változnak, így a számítási pontosság alapján stacionárius helyekként viselkednek. A Solver tehát a szélsőérték meghatározásakor stacionárius helyeket keres.)
4., Indítsuk el a Solvert. 5., Adjuk meg a függvényt tartalmazó célcellát. 6., Jelöljük be a Max választógombot. 7., Módosuló cellaként adjuk meg az xmax celáját. 8., Kattintsunk a Megoldás gombra. A fenti eljárás alkalmazásánál nincs szükség külön korlátozó feltételek előírására. A Solver meghatározza a szélsőérték-helyet (xmax), a függvény szélsőértékét pedig a függvényt tartalmazó cella mutatja.
Példa: Adjuk meg Solverrel az f(x)=4x3-5x4 függvény szélsőértékét!
xmax: f(xmax):
0,6000 0,2160 f(x)=4x3-5x4
x: -0,5 -0,4 -0,3 -0,2 -0,1 0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 1,1 1,2 1,3
f(x): -0,8125 -0,3840 -0,1485 -0,0400 -0,0045 0,0000 0,0035 0,0240 0,0675 0,1280 0,1875 0,2160 0,1715 0,0000 -0,3645 -1,0000 -1,9965 -3,4560 -5,4925
1,0 0,0 -1,0
-0,5
0,0 -1,0 -2,0 -3,0 -4,0 -5,0 -6,0
0,5
1,0
1,5
A 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
B
C
D
E
F
G
H
Feladatok: Határozzuk meg a következő függvények minimum- illetve maximumhelyeit! 1., f(x) = 2x3 – 6x2
2., g(x) = x4 – 2x2 + 3 3., h(x) = x + 1/x 4., i(x) = 4x/(x+1)2 5., j(x) = 3x/(x+2)3
I
J
A 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 52 53 54 55
B
C
D
E
F
G
H
I
J
Lineáris egyenletrendszer megoldása A Solvernek csak egy célcellát jelölhetünk ki, ezért az egyenletrendszerek megoldása során korlátozó feltételekkel adjuk meg az egyenleteket. A megoldás menete 1. , Válasszuk ki azokat a cellákat, ahol az ismeretlenek értékét fogjuk megkapni (módosuló cellák). 2., Alakítsuk át az egyenleteket úgy, hogy a jobb oldalon csak egy konstans legyen. 3., Írjuk be a változók együtthatóit, a mellettük lévő cellákba a jobb oldalon álló konstanst, majd írjuk be a kiválasztott cellákba képletként az egyenletek bal oldalát. 4., Indítsuk el a Solvert. 5., Hagyjuk mindenképpen üresen a célcella szövegdobozát. 6., Módosuló cellaként adjuk meg az ismeretlenhez kijelölt cellatartományt. 7., Korlátozó feltételként adjuk meg, hogy az egyenleteket tartalmazó cellatartomány legyen egyenlő a jobb oldali konstansokat tartalmazó cellatartománnyal . (A Max, Min, Érték választógombok kiválasztása nincs hatással a megoldásra. A paraméterek megadása akkor válik egyszerűbbé, ha szisztematikusan helyezzük el az egyenleteket a cellákban. Az egyenletek beírása előtt pedig célszerű táblázatosan elrendezni az ismeretlenek együtthatóit, mert így az első egyenletből a képlet egyszerű másolásával kapjuk meg a többit.)
8., Kattintsunk a Megoldás gombra. Példa: Oldjuk meg a Solverrel a következő egyenletrendszert: 3x – 2y + z -12= 0; x + 4y + 2z -1= 0; 3x + 2y – 3z -4= 0! x 3
y -1
z 1
x 3 1 3
y -2 4 2
z 1 2 -3
konstans egyenletek 12 12 1 1 4 4
A 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
B
C
D
E
F
G
H
I
A megoldást az A2:C2 cellatartományban olvashatjuk le. Ha a Solverben bejelöljük a lineáris modellt, akkor pontos megoldást kapunk (Beállítás). Sokismeretlenes egyenletrendszer esetén nem "éri meg" elnevezni a módosuló cellákat.
Feladatok: Oldjuk meg a Solverrel a következő egyenletrendszereket: 1., 2x-3y+z=-1; 5x+y+2z=13; x+2y-2z=-1; 2., x+2y+3z=1;
2x+3y+z=2;
3., 2(x+y)=7-(x+2);
3x+1y+2z=3;
5(x+1)=3(z+1);
(y-1)/(z-1)=1/3;
J
A B C D E F G 1 2 Nem lineáris egyenletrendszer megoldása 3 4 A nem lineáris egyenletrendszerek megoldása a lineárishoz egyenletrendszerekhez hasonló 5 módon történik. Általában több megoldást is kereshetünk. A kezdőértékektől (a módosuló 6 celláktól) függ, hogy a Solver melyik megoldást találja meg. Az egy ismeretlenes egyenletekkel 7 ellentétben nem tudjun a megoldáshoz közeli kezdőértéket megbecsülni. 8 9 A megoldás menete: 10 1. , Válasszuk ki azokat a cellákat, ahol az ismeretlenek értékét fogjuk megkapni (módosuló 11 cellák)! 12 2., Írjuk be a kiválasztott cellákba képletként az egyenletek bal oldalát (az egyenletek eltérő 13 szerkezetűek lehetnek, az együtthatókat nincs értelme külön cellákba beírni), majd mellé az 14 egyenletek jobb oldalát! 15 3., Indítsuk el a Solvert! 16 4., Hagyjuk mindenképpen üresen a célcella szövegdobozát. 17 5., Módosuló cellaként adjuk meg az ismeretlenhez kijelölt cellatartományt. 18 6., Korlátozó feltételként adjuk meg, hogy az egyenleteket tartalmazó cellatartomány legyen 19 egyenlő a jobb oldali konstansokat tartalmazó cellatartománnyal . 20 7., Kattintsunk a Megoldás gombra. 21 (A megtalált megoldást a módusuló cellákban láthatjuk. További megoldásokat újabb korlátozó feltételek 22 alkalmazásával kaphatunk. Kereshetünk például olyan megoldást, amelynél az x > 1 . A korlátozó feltételek között 23 nem szerepel a nagyobb reláció, ezért válasszunk egy 1-nél kicsivel nagyobb számot, és az x ≥ 1,1 feltételt írjunk elő. Így újabb megoldást találhatunk. A feltételek között előírhatjuk például, hogy mindkét megoldás nagyobb vagy 24 egyenlő, illetve mindkettő kisebb vagy egyenlő legyen, mint 0. Ha a Solver leáll, mert nem talált megoldást, akkor 25 változatlanul hagyva a módosuló cellákba írt értékeket, újra elindíthatjuk. Így további megoldásokat kereshetünk.) 26 27 Példa: 28 Oldjuk meg a Solver-rel a következő nem lineáris egyenletrendszert: 29 x + xy - y = 1; 30 x2y - xy2 = -6! 31 32 x y 33 1 -1,999999964 34 35 az egyenletek bal oldalai: az egyenletek jobb oldalai: 36 1 1 37 -5,999999822 -6 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
A 56 57 58 59 60 61 62 63 64 65 66
B
C
D
Feladatok: Oldjuk meg a Solverrel a következő nem lineáris egyenletrendszereket: 1., xy + y2 = 55; 2x + y = 17; 2., x3 + y3 = 341;
x + y = 11;
3., x2 + y2 – 3x + 5y = 0;
x2 + y2 + 2x – 3y = 0!
E
F
G
A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
B
C
D
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
F
G
H
I
J
K
Bűvos négyzetek készítése, megoldása A lineáris egyenletrendszerek megoldási módszerét felhasználhatjuk bűvös négyzetek készítésére is. A megoldás menete: 1. , Írjuk be a bűvös négyzet megadott adatait! 2., Indítsuk el a Solvert! 3., Hagyjuk mindenképpen üresen a célcella szövegdobozát. 4., Módosuló cellaként adjuk meg a bűvös négyzet üres celláit! 5., Korlátozó feltételként adjuk meg, hogy a sor-, oszlop- és átlóösszegek legyenek egyenlők a második sorban álló számok összegével! 6., Kattintsunk a Megoldás gombra! Példa: Készítsük el az alábbi példa alapján a bűvös négyzetet! 444
18 19
E
21
189
177
57
444
153
81
93
117
444
105
129
141
69
444
165
45
33
201
444
444
444
444
444
444
Feladatok: Oldjuk meg a Solverrel a következő bűvös négyzetet! 31 28 26 25 23 21 19 29 16
L
A 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 52 53 54 55 56
B
C
D
E
F
G
H
I
J
Kétváltozós lineáris programozási feladat Egy példán keresztül mutatom be a feladattípust és a Solver felhasználását a megoldásban. A feladatokat grafikusan is megoldhatjuk, de tudjuk, hogy grafikusan csak a kétváltozós lineáris programozási feladatok oldhatók meg. A Solver természetesen több változó esetén is alkalmazható (szimplex-módszer). Példa: Kétféle szendvicset készítünk az osztálybulira. Az első típushoz felhasználunk 1 dkg vajat és 3 szelet szalámit. A másodikra típusra 2 dkg vajat és egy szelet szalámit teszünk. Összesen 40 dkg vajat és 70 szelet szalámit használhatunk fel. Hány darab szendvicset készítsünk az egyes típusokból, hogy a lehető legtöbb darab szendvics készüljön el?
Foglaljuk táblázatba, képletbe a feladat szövegét! 1., I. II. max. szendvics (darab) x y vaj (dkg) 1 2 40 szalámi (szelet) 3 1 70 2., Jelöljük x-szel az I. típusú, y-nal a II. típusú szendvicsek számát. A korlátozó feltételek (max): vaj (dkg): 1·x + 2·y ≤ 40; szalámi (szelet): 3·x + 1·y ≤ 70 . 3., Számunkra természetes, de a Solvernek elő kell írnunk a következő feltételeket is (pozitív értékek): x ≥ 0 és y ≥ 0 . 4., Összesen (x + y) szendvicset készítünk, tehát keressük ennek a kifejezésnek a maximumát a fenti korlátozó feltételek mellett. A megoldás menete: 1. , Adjuk meg a táblázatos adatokat! (nevezzük el az x és y értékeket tartalmazó cellákat, ezek lesznek a módosuló cellák) 2., Indítsuk el a Solvert! 3., A célcellába írjuk be az = x + y képletet tartalmazó cellahivatkozást! 4., Módosuló cellaként adjuk meg az x és y értékeket tartalmazó cellákat! 5., Vegyük fel a korlátozó feltételeket, és jelöljük be a Max választógombot. A feltételek bal oldalán álló kifejezéseket célszerű cellákba írni. Szisztematikus elrendezéssel elérhetjük, hogy elegendő legyen egyszer begépelni, majd másolni. Ne felejtsük el kikötni, hogy a változók nem lehetnek negatívak!
6., Kattintsunk a Megoldás gombra! I. x szendvics vaj szalámi
II. y 20
1 3
10 2 1
egyenletek: vaj szalámi
40 70
Összes szendvics:
30
max
40 70
A 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
B
C
D
E
F
G
H
I
J
A Solver meghatározza, hogy az I. szendvics típusból 20 db, a másik szendvics típusból pedig 10 db szendvicset kell (tudunk, célszerű) készíteni. Így éppen felhasználunk minden nyersanyagot. Nem biztos, hogy az ilyen típusú feladatokra egész megoldást kapunk. A Solverben nem lehet beállítani, hogy csak egész megoldást keressen, mert ez az egyik legnehezebb matematikai probléma. Feladatok: Oldjuk meg a Solverrel a következő lineáris programozási feladatokat: 1., Egy háziállatnak négyféle tápanyagot kell kapnia. Az etetéshez kétféle takarmányt használhatunk fel. A takarmányok tápanyagtartalmát és a napi szükségleteket az alábbi táblázat tartalmazza. Határozzuk meg a leggazdaságosabb takarmánykeverék összetételét!
1. típusú takarmány (x kg) mennyiség I. tápanyag (kg): II. tápanyag (kg): III. tápanyag (kg): IV. tápanyag (kg): Egységár(Ft/kg):
2. típusú takarmány (y kg)
0,1 0 0,1 0,7 20
0 0,2 0,2 0,6 30
Előírt 0,2 0,4 1 4,2
2., Egy asztalosműhelyben szekrényt és könyvespolcot készítenek. Egy szekrény elkészítéséhez 2 m2 cseresznyefára és 4 m2 tölgyfára van szükség. A könyvespolchoz 3 m2 cseresznye-, illetve 2 m2 tölgyfát használnak fel. A szekrényen darabonként 3000 Ft, a könyvespolcon pedig 4000 Ft a nyereség. A raktárban mindkét fajtából 160 m2 deszkalap található. Hány szekrényt, illetve könyvespolcot készítsünk a raktárkészletből, hogy a legnagyobb legyen a nyereség? 3., Keressük meg a 2x + 3y kifejezés minimumát az alábbi feltételek mellett: –x + 3y ≥ 2; x + y ≤ 6; 3x – y ≥ 2; x, y ≥ 0 ! 4., Keressük meg az x + 7y + 4z kifejezés maximumát az alábbi feltételek mellett: x + y + z ≤ 11; 2x + 3y + z ≤ 15; x, y, z ≥ 0 ! 5., Keressük meg az x maximumát az alábbi feltételek mellett: x + y ≤ 50; y + z ≥ 80; x + z ≤ 100; x, y, z ≥ 0 !
A
B
C
D
E
F
G
H
I
1 Kombinatorikaifeladat 2 3 Egy példán keresztül mutatom be a feladattípust és a Solver felhasználását a megoldásban. 4 5 Példa: 6 A diákokat év végén könyvjutalomban részesítjük. Egy diák két különböző könyvet kap ajándékba. 7 Összesen háromféle könyv áll a rendelkezésünkre. Az első típusból 10 db, a másodikból 12 db, a 8 harmadikból pedig 14 db könyvünk van. Hogyan osszuk szét a könyveket, hogy a lehető legtöbb 9 10 diák kapjon könyvjutalmat? 11 12 Foglaljuk táblázatba, képletbe a feladat szövegét! 13 1., 14 I. és II. könyv I. és III. könyv II. és III. könyv 15 diákok száma (db) x y z max. könyv 16 darabszám 17 I. könyv (db) 1 1 0 10 18 II. könyv (db) 1 0 1 12 19 III. könyv (db) 0 1 1 14 20 21 2., Jelöljük x-szel az I. és II. típusú, y-nal a I. és III. típusú , z-vel a II. és III. típusú könyveket kapó 22 diákok számát. A korlátozó feltételek (max): 23 I. és II. könyv (db): 1·x + 1·y + 0·z ≤ 10; 24 I. és III. könyv (db): 1·x + 0·y + 1·z ≤ 12; 25 II. és III. könyv (db): 0·x + 1·y + 1·z ≤ 14; 26 27 3., Számunkra természetes, de a Solvernek elő kell írnunk a következő feltételeket is (pozitív 28 értékek): 29 x ≥ 0 és y ≥ 0 és z ≥ 0. 30 31 4., Összesen (x + y+z) diáknak adhatunk könyvet, tehát keressük ennek a kifejezésnek a 32 maximumát a fenti korlátozó feltételek mellett. 33 34 A megoldás menete: 35 1. , Adjuk meg a táblázatos adatokat! 36 37 (nevezzük el az x , y és z értékeket tartalmazó cellákat, ezek lesznek a módosuló cellák) 38 2., Indítsuk el a Solvert! 39 3., A célcellába írjuk be az = x + y+z képletet tartalmazó cellahivatkozást! 40 4., Módosuló cellaként adjuk meg az x , y és z értékeket tartalmazó cellákat! 41 5., Vegyük fel a korlátozó feltételeket, és jelöljük be a Max választógombot. A feltételek bal oldalán álló kifejezéseket célszerű cellákba írni. Szisztematikus elrendezéssel elérhetjük, hogy elegendő 42 legyen egyszer begépelni, majd másolni. Ne felejtsük el kikötni, hogy a változók nem lehetnek negatívak! 43 6., Kattintsunk a Megoldás gombra! 44 45 I. és II. könyv I. és III. könyv II. és III. könyv 46 x y z 47 diákok: 4 6 8 48 max. db 49 I. könyv: 1 1 0 10 50 II. könyv: 1 0 1 12 51 III. könyv: 0 1 1 14 52 53 egyenletek: 54 I. könyv: 10 55 II. könyv: 12 56 III. könyv: 14 57 maximum: 18