[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