Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: -2 mod 42 = ?

Matso [09.02.2010 18:26:19]

#

Mikä on oikee vastaus XXD?

Googlen mukaan: 40
Windows laskimen mukaan: -2
Java virtuaalikoneen mukaan: -2

Grez [09.02.2010 18:37:52]

#

Tuolta voit katsoa kumman (jakajan vai jaettavan) etumerkkiä jakojäännös palauttaa eri kielissä http://en.wikipedia.org/wiki/Modulo_operation

Muutama kieli palauttaa myös aina positiivisen ja joillakin kielillä on toteutuskohtaista. Joissakin kielissä on erillinen operaattori eri vaihtoehdoille.

Metabolix [09.02.2010 19:24:55]

#

Otsikosta ja Grezin linkistä tuli mieleeni: Modulo ei lähtökohtaisesti ole laskutoimitus vaan kongruenssiin liittyvä termi. Esimerkiksi seuraavat kongruenssit pitävät paikkansa:
-2 ≡ 40 (modulo 42)
82 ≡ 208 (modulo 42)

Jos tarkoitetaan laskutoimitusta, suomeksi kannattaa selkeyden vuoksi puhua jakojäännöksestä. Kummatkin tulkinnat tuloksesta ovat aivan kelvollisia; näistä negatiivinen ehkä jäljittelee enemmän jakojäännöstä fyysisenä tapauksena, kun taas positiivinen on yksinkertaisemmin määriteltävissä kongruenssin kautta.

Ei-negatiivisen tuloksen voi varmistaa esimerkiksi näin: (((x % M) + M) % M).

Jaska [09.02.2010 21:28:46]

#

Metabolix kirjoitti:

Jos tarkoitetaan laskutoimitusta, suomeksi kannattaa selkeyden vuoksi puhua jakojäännöksestä.

Mielestäni ei kannata puhua laskutoimituksesta jakolaskun yhteydessä. Laskutoimitus on kuvaus XxX->X, missä X on jokin joukko. Koska on mielekästä suorittaa jakolasku 0/1, niin luvun nolla voisi olettaa kuuluvan X:ään. Toisaalta 1/0 ei ole määritelty perinteisessä aritmetiikassa. Siten jos haluaa puhua laskutoimituksesta, on X:stä poistettava nolla tai määriteltävä nollalla jako.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta