Bevezető példa

iDevice ikon Bevezető példa

Az alábbi táblázat segítségével szemléltetjük, hogy melyik partnernek (P1, P2, P3, P4) melyik áruból (A1, A2, A3) mennyit kell szállítani:

 


A1

A2

A3

P1

5

3

5

P2

1

0

0

P3

0

2

5

P4

3

0

4

 

Arra a kérdésre, hogy „Összesen mennyi A2-t kell kiszállítani?", mindenki azonnal megválaszolja, hogy ötöt. Megállapodás nélkül is tudjuk, hogy egy konkrét partner sorának és egy konkrét áru oszlopának találkozásában szereplő számértékek a kért szállítási mennyiségek. Tehát a válasz az egyes partnerekre vonatkozó, az A2 termék oszlopában szereplő számok összege; jelen esetben a 3+0+2+0=5. Természetesen más típusú kérdést is feltehetnénk, melyre egészen más algoritmus szerint kellene a vezérsortól lefelé és a vezéroszloptól jobbra található számokat feldolgozni.

 

Például:


iDevice ikon Feladat

Melyik partnernek kell az összes áruból szállítani?

Melyik áruból kell a legtöbbet szállítani P4-nek?

Kinek kell kizárólag egyféle áruból szállítani?



iDevice ikon

Egy biztos: a konkrét partner sorának és a konkrét áru oszlopának metszéspontjában éppen a közöttük definiált kapcsolat (a partnernek az áruból szállítandó mennyiség) számosított alakja áll. Egy program számára az előre definiált kapcsolat adatainak ideiglenes tárolása a vezérsor és -oszlop nélkül kerül felhasználásra. Tisztázzuk, hogy az ilyen, 4 sorból és 3 oszlopból álló számtáblázat pontosan azért nevezhető majd mátrixnak, mert előre rögzített a sorok és az oszlopok száma.


iDevice ikon Kiegészítő anyag

A mátrix számítógépes megfelelője a kétdimenziós tömb. A tömb fogalma már magában hordozza a fix számú sor és oszlop meglétét. Számítógépes háttértárolón viszont nem lehet tömbben tárolni a partnerek és áruk viszonyának adatait, hiszen számuk olyannyira bizonytalan, hogy nem is korlátozható. (A partnerek és az áruk halmaza általában bővülhet.) A szükséges adatfájlok szerkezetét ilyen esetben körültekintően kell megtervezni. Egy speciális adatfájl az adattábla, melynek csak a sorai bővülhetnek, de az oszlopai előre pontosan rögzítettek. Persze rögzített számban kiválasztott partner illetve áru adatait - akárcsak a példában - már kétdimenziós tömbben fogjuk feldolgozni a memóriába történő beolvasás után.



iDevice ikon

Előfordulhat, hogy a kapcsolatok tárolására nem számot használunk. Az alábbi táblázat segítségével például azt szemléltetjük, hogy melyik cégtől (C1, C2, C3) melyik tanfolyamon (T1, T2, T3) volt már résztvevő:

 

 

T1

T2

T3

C1

+

-

-

C2

-

+

+

C3

-

+

-

 

Azonnal tudjuk, hogy csak kétféle érték használható fel, és a táblázatban szereplő + jelet az igenhez, a - jelet pedig a nemhez kötjük. A „Melyik cég nem küldött résztvevőt a T3-as tanfolyamra?" kérdés megválaszolásához azokat a cégeket soroljuk fel, melyeknek a T3-as tanfolyammal való metszéspontjában a '-' jel található: C1 és a C3.

Amikor további vagy hatékonyabb feldolgozásra is szükség van, gyakran számosítjuk a logikai értékeket is. Jelen esetben lehetne az igen 1-es és a nem 0 vagy -1, és akkor még nem voltunk tekintettel az ismeretlen értékre (a 'nincs információ' esetére).

 

További kérdés:


iDevice ikon Feladat

Melyik cégtől nem volt még résztvevő a T2 tanfolyamon?

Melyik tanfolyamon voltak a résztvevők egyetlen cégtől?



iDevice ikon

A továbbiakban csak olyan táblázatról lesz szó, melyben az értékek számok, és mind a sorok, mind az oszlopok száma fix.