[elektro] Modulo "szorzás"??? /levlista kavar
Acs Gabor
agabor at electrodesign.hu
Sat Sep 20 01:09:52 CEST 2008
Az nagyon érdekes, hogy erre a levélre -aminek a címzettje az 'elektro'
lista volt- válaszoltam, de a válasz itt nem jelent meg, hanem a 'retro'
listán. Nem tudom, mi az oka, de ott tudod elolvasni.
Gábor
----- Original Message -----
From: "Pyrograph Office" <office at pyrograph.hu>
To: <elektro at tesla.hu>
Cc: <retro at lists.tmp.hu>
Sent: Friday, September 19, 2008 9:49 AM
Subject: Modulo "szorzás"???
Hello, Lista!
Kellene nekem valami nagyon frappáns algoritmus a következőre:
Adott mondjuk 3 paraméter, a következő pozitiv egész értéktartományokkal:
A3 [0..2]
A5 [0..4]
A7 [0..6]
Egy konkrét példa a feladatra:
A3 = 2
A5 = 1
A7 = 3
A lehető legegyszerübb algoritmust keresném (csak összeadás, kivonás és
szorzás műveletekből álljon), amivel meg tudnám keresni azt a LEGKISEBB
pozitiv egész számot (M), amire igaz, hogy a
3-mal osztott maradéka 2 (vagyis M mod 3 = 2)
5-tel osztott maradéka 1 (vagyis M mod 5 = 1)
7-tel osztott maradéka 3 (vagyis M mod 7 = 3)
(tehát az A3, A5 és A7 jelzik, hogy az M számnak mennyi legyen a maradéka
3, 5 és 7-tel való osztáskor)
Jelen példában ugye az M = 101 lenne. De milyen algoritmussal tudnám ezt
korrektül, paraméterezhetően, gyorsan kiszámolni bármilyen esetre?
Általános (univerzális) algoritmus kellene, mert ez csak egy példa volt, a
valóságban azonban nem 3 db. paraméter lesz, hanem 8-10 db. (vagy
mégtöbb), és a paraméterek értékeinek minden lehetséges variációja
előfordulhat a saját értéktartományukon belül.
Még egy fontos kitétel lenne:
Ez az algoritmus uC-ben futna; így jó lenne (a fenti példánál maradva) ha
a számításhoz használt egyik belső változó sem lépné át számítás közben a
3*5*7=105 értéket, vagy maximum a 105*7=735 értéket (7 = a legmagasabb
paraméter a számításban). Ez több paraméternél már lényeges szempont lehet
azért, hogy ne kelljen a számításhoz szükséges belső változóknak különösen
hosszabb változótípust létrehozni.
Előre is köszönöm, ha valaki tudna valami egyszerűen nagyszerű és jó
ötletet adni.
Nyári Viktor
_______________________________________________
Retro levelezőlista
Lista címe: Retro at lists.tmp.hu
Beállítások: http://lists.tmp.hu/cgi-bin/mailman/listinfo/retro
Tagok térképe: http://lists.tmp.hu/retromap.php
_____________ NOD32 3454 (20080919) Információ _____________
Az üzenetet a NOD32 antivirus system megvizsgálta.
http://www.nod32.hu
More information about the Elektro
mailing list