Author name: dr. Dobreff Csaba

Élelmiszerpolc lejárati dátum szerinti rendezésének modellezése

Élelmiszert mindenki szokott vásárolni, és a legtöbben tudják azt is, hogy a polcra kitett azonos márkájú termékek úgy vannak elhelyezve, hogy a fogyaszthatósági idő szerint később lejárók hátrébb, a korábban lejárók előrébb, a vásárlók számára könnyebben elérhetően vannak a polcon. Ez természetes, hiszen, ha nem így lenne, és a később lejárók fogynának hamarabb, akkor megnőne …

Élelmiszerpolc lejárati dátum szerinti rendezésének modellezése Read More »

Mikroprobléma

Ha mértékegységekkel dolgozunk, akkor szükség lehet egy olyan függvényre, amely ellenőrzi, hogy az argumentumként megadott karaktersorozat egy, a mértékegységek nagyságrendjét meghatározó SI előtag jele-e, és ha igen, akkor visszaadja az előtag által jelölt szorzótényezőt. Ez elég egyszerű feladatnak tűnik, mert az előtagjel és szorzótényező megfeleltetéseket egy szótárban kell tárolni, és a függvény e szótárnak a …

Mikroprobléma Read More »

Miért kell az óvatosság az eval() függvény használatakor?

Tegyük fel, hogy egy olyan alkalmazást szeretnénk írni, amelyben a felhasználó által grafikus felületen vagy más, szövegbevitelre alkalmas eszközön megadott egyváltozós matematikai kifejezést (képletet) kell kiértékelni a független változó adott értékénél, majd pedig az eredményt feldolgozni. Ahhoz, hogy fel tudja a programunk ismerni a független változót, ezért annak jelölését előre rögzítjük: legyen a matematikában szokásos …

Miért kell az óvatosság az eval() függvény használatakor? Read More »

Melyik átlagoló függvény legyen a választás: mean() vagy fmean()?

Ha egy adatsor számtani középértékét akarjuk meghatározni, akkor erre a célra használhatjuk a szabványos könyvtár statistics moduljának mean() és fmean() függvényeit. Az átlagolandó adatokat véges számú elemet szolgáltató iterálható objektumként kell megadni a függvényeknek. Kérdésként merülhet fel, hogy mi a két függvény között a különbség, melyiket válasszuk? A Python hivatalos dokumentációja szerint az fmean() az …

Melyik átlagoló függvény legyen a választás: mean() vagy fmean()? Read More »

Két kör metszéspontjának meghatározása numerikus, iteratív eljárással

Két kör metszéspontjai analitikusan, képlettel kiszámíthatók. De most nem így oldjuk meg a feladatot, hanem a két kör adott számú pontjának felvételével, és ezek közül a legközelebbi pontok meghatározásával, majd e térrészben egyre több újabb pont generálásával és újabb közelségvizsgálattal. Ezt ismételjük addig, amíg a körök két vizsgált pontjának távolsága egy előre meghatározott hibahatáron belül …

Két kör metszéspontjának meghatározása numerikus, iteratív eljárással Read More »

Megbízható értékkeresés float elemeket tartalmazó konténerekben

Az, hogy float típusú számok egyenlőségvizsgálatánál körültekintően kell eljárni általában ismert. A véges számú biten történő ábrázolás miatt ugyanis a számítási műveletek eredménye nem biztos, hogy meg fog egyezni a matematikailag várható egzakt értékkel.  Például elvben a 0.1+0.2 == 0.3 kifejezés igaz (True) értékű kellene, hogy legyen, de lefuttatva mégis hamis (False) értéket kapunk. Éppen …

Megbízható értékkeresés float elemeket tartalmazó konténerekben Read More »

Szótárak egyesítése az azonos kulcsokhoz tartozó értékek összegyűjtésével

Tegyük fel, hogy egy kérdőívet a megkérdezettek különböző helyszíneken töltenek ki. A kérdéseket és a válaszokat fájlba (pl. JSON fájlba) mentik. Ezeket kell összegyűjteni, és az egyes kérdésekre adott összes választ feldolgozni (például a számszerű értékeléseket átlagolni vagy más statisztikai jellemzőt számolni). Ezt meg lehet úgy oldani, hogy a fájlok tartalmát szótárakba olvassuk be, ahol …

Szótárak egyesítése az azonos kulcsokhoz tartozó értékek összegyűjtésével Read More »

Sorozatok feldarabolása és feldolgozása automatikus szakaszhosszal

Előfordulhat, hogy egy adatfolyamból, egy sorozatból kell bizonyos hosszú szakaszokat kialakítani, és ezen sorozatrészek elemein valamilyen műveletet végezni. Például egy érzékelőből származó mérési adatok három egymást követő értéke tartozik össze, és ezekből szeretnénk kiszámítani valamilyen jellemzőt. Vagy több négyszög oldalai állnak sorban egymás után rendelkezésre, és minden egyes négyszög kerületét kell kiszámolni. Egy másik gyakori …

Sorozatok feldarabolása és feldolgozása automatikus szakaszhosszal Read More »

Szakaszok és sokszögek metszéspontjának meghatározása

Egyenes szakaszok vagy sokszögek metszéspontjának meghatározása nem csupán egy iskolai matematikai feladvány, hanem számos gyakorlati esetben lehet szükség erre. A számítógépes grafikában például minden ütközésvizsgálat – legyen szó egy játékban elrepülő lövedékről vagy egy karakter mozgásáról – ilyen számításokra épül. Térinformatikai rendszerekben is szükséges ellenőrizni, hogy egy tervezett útvonal keresztezi-e egy zóna határát. A robotikában …

Szakaszok és sokszögek metszéspontjának meghatározása Read More »

Hogyan ellenőrizzük, hogy egy sokszög konvex?

Sokszögekkel számos területen találkozhatunk a számítógépes grafikától és a geometriai algoritmusoktól kezdve egészen a matematikai optimalizálásig (konvex optimalizáció). Ezekben az alkalmazásokban gyakran felmerül, hogy egy adott pontsorozat konvex vagy konkáv sokszöget határoz-e meg. Elsőre a kérdés nem is tűnik bonyolultnak: ránézésre, vizuálisan az emberi szem általában könnyen megállapítja, hogy egy sokszög konvex vagy konkáv. Ha …

Hogyan ellenőrizzük, hogy egy sokszög konvex? Read More »