Vad är ett mod b om en < b? [stängd]

<åt sidan class = "s-notice s-notice__info js-post-notice mb16" role = "status">

Stängd. Denna fråga är utanför ämnet . För närvarande accepteras inte svar.

Kommentarer

  • Frågor om C ++ i synnerhet är offtopic här, och den allmänna frågan är en ren matematisk fråga. Vill du att jag migrerar detta till Stackoverflow eller Matematik ?

Svar

Om $ a, b $ är båda positiva heltal, kan vi alltid skriva $ a = kb + \ ell $ där $ 0 \ leq \ ell < b $. Vi kallar $ \ ell $ resten och $ k $ kvoten . I ditt första exempel, $ 5 = 2 \ cdot 2 + 1 $ så 5 % 2 == 1. I ditt andra exempel, $ 2 = 0 \ cdot 9 + 2 $, så 2 % 9 == 2. Mer allmänt, om $ a < b $ då a % b == a.

Det finns också en regel för signerade heltal, men tyvärr kan jag inte komma ihåg det. Dessutom kommer 0 % x == 0 när $ x \ neq 0 $ och x % 0 orsakar ett undantag (” division med noll ”).

Kommentarer

  • Med signerade heltal blir det rörigt och olika programmeringsspråk använder en annan operator.

Svar

Svaret är 9. 2/9 är 0r9. Moduloperatören returnerar återstoden av heltal, eftersom 9 går till 2 gånger gånger operatören returnerar 9.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *