Jakojäännös

Mureakuha

Loikkaa: valikkoon, hakuun

Matemaattinen määritelmä

Jakojäännös on kokonaislukujen operaatio, jolla saadaan selville osamäärän (jakolaskun) osa, joka ei mahdu kokonaislukutulokseen. Jakojäännös on kokonaisluku, joka alkuperäisen osamäärän jakajalla jaettuna antaa osamäärän "desimaaliosan".

Esimerkiksi osamäärä {6 \over 4} voidaan kirjoittaa muotoon {4 \over 4} + {2 \over 4} = 1 + {2 \over 4}, jossa koko jakojäännös on {2 \over 4}, ja tästä jakojäännöksellä tarkoitetaan osaa 2.

Yleisemmin {n \over m} = k + {q \over m},

jossa jakojäännös on q ja osamäärän tasan menevä osa k. Huom! Yleensä matematiikassa (etenkin kongruenssilaskennassa) jakojäännös määritellään hieman eri tavalla, mutta ohjelmointinäkökulmasta tämä määritelmä on selkeämpi (toim. huom. kyseinen määritelmä saadaan käytännössä yksinkertaisesti kertomalla läpi m:llä).

Jakojäännös ohjelmoinnissa

Useimmissa ohjelmointikielissä on oma operaattori jakojäännökselle. Yleisin symbooli tälle on prosenttimerkki %, joka on yleensä käytössä mm. C-sukuisissa kielissä. Pascal-sukuisissa kielissä kuten Delphi, Lazarus tai Ada jakojäännöksen ottaminen merkitään sanalla mod. Jakojäännös on tärkeä operaatio useissa yleisissä ohjelmointiratkaisuissa, joista alla esimerkkejä.

Miten erotat parillisen luvun parittomasta?

array = {1, 2, 3, 4, 5, 6, 7, 8}

foreach (array as alkio) {
     if (alkio % 2 == 0) {
          print ("Parillinen!");
     }
     else {
          print ("Pariton!");
     }
}

Taustalla on siis ajatus, että jos alkio on kahden monikerta (2*n), ei jakojäännöstä ole eli jaettaessa saadaan kokonaisluku.

Huomaa että Pascal:ssa pariton luku saadaan kätevimmin funktiolla odd(luku).

Omppuesimerkki matemaattista professorointia kaittaville

On 13 omenaa joista saat ottaa seitsemän kerralla. Yhden kerran saat seitsemän kasaan jonka jälkeen jäljelle jää kuusi, tämä on jakojäännös.

Henkilökohtaiset työkalut