Division med rest är en aritmetisk operation som spelar en stor roll inom aritmetik , talteori , algebra och kryptografi . Oftast definieras denna operation för heltal eller naturliga tal enligt följande [1] . Låta och vara heltal, och division med en rest ("delbart") med ("divisor") betyder att hitta heltal och sådant att likheten gäller:
Resultaten av division med en rest är alltså två heltal: kallas den partiella kvoten av divisionen och resten av divisionen . Ett ytterligare villkor ställs på resten: det vill säga att resten av divisionen måste vara ett icke-negativt tal och i absolut värde mindre än divisorn . Detta villkor säkerställer unikheten hos resultatet av divisionen med en återstod för alla heltal, det vill säga det finns en unik lösning på ekvationen under ovanstående förhållanden. Om resten är noll sägs den vara delbar med
Att hitta partialkvoten kallas också heltalsdivision och att hitta resten av en division kallas att ta resten eller, informellt, modulo division (dock bör den senare termen undvikas, eftersom det kan leda till förväxling med division i en ring eller grupp av rester i analogi med addition eller multiplikation modulo ).
ExempelDivisionsoperationen med en rest kan definieras inte bara för heltal utan även för andra matematiska objekt (till exempel för polynom ), se nedan .
Förbli strikt inom de naturliga talen måste man skilja mellan division med en rest och division med heltal, eftersom nollresten inte är ett naturligt tal; dessutom bör den ofullständiga kvoten när man dividerar ett mindre tal med ett större vara lika med noll, vilket också leder bortom naturliga tal. Alla dessa konstgjorda begränsningar komplicerar i onödan formuleringarna, så källorna brukar antingen betrakta den utökade naturliga serien , inklusive noll [2] , eller så formuleras teorin omedelbart för heltal, som indikerat ovan [1] .
För att beräkna den partiella kvoten av division med ett positivt tal , dividera (i vanlig mening) med och avrunda resultatet nedåt till närmaste heltal:
när .där halvparenteser anger att ta heltalsdelen av . Värdet på den ofullständiga kvoten låter dig beräkna värdet på resten med hjälp av formeln:
För en negativ divisor måste du avrunda kvoten uppåt:
när .Värdet på resten kan erhållas genom den binära operationen att "ta resten" från division med , betecknad med mod :
Denna notation bör inte förväxlas med modulo-jämförelsenotation . Formeln för innebär att man utför en jämförelse:
den omvända implikationen är dock inte sant i allmänhet. Denna jämförelse innebär nämligen inte uppfyllelsen av den ojämlikhet som krävs för att vara en rest.
Språk | Ofullständig kvot |
Återstoden | Resten tecken |
---|---|---|---|
ActionScript | % | Utdelning | |
Ada | mod | Delare | |
rem | Utdelning | ||
GRUNDLÄGGANDE | \ | MOD | Odefinierad |
C (ISO 1990) | / | % | Odefinierad |
C (ISO 1999) | / | % | Delbar [3] |
C++ (ISO 2003) | / | % | Odefinierad [4] |
C++ (ISO 2011) | / | % | Delbar [5] |
C# | / | % | Utdelning |
kall fusion | MOD | Utdelning | |
Vanlig Lisp | mod | Delare | |
rem | Utdelning | ||
D | / | % | Delbar [6] |
Delphi | div | mod | Utdelning |
eiffel | // | \\ | Utdelning |
Erlang | div | rem | Utdelning |
Eufori | remainder | Utdelning | |
Microsoft Excel (engelska) | QUOTIENT() | MOD() | Delare |
Microsoft Excel (ryska) | ЧАСТНОЕ() | ОСТАТ() | |
filtillverkare | Div() | Mod() | Delare |
Fortran | mod | Utdelning | |
modulo | Delare | ||
GML (Game Maker) | div | mod | Utdelning |
gå | / | % | Utdelning |
Haskell | div | mod | Delare |
quot | rem | Utdelning | |
J | |~ | Delare | |
Java | / | % | Delbar [7] |
Math.floorDiv | Math.floorMod | Avdelare (1,8+) | |
JavaScript | .toFixed(0) | % | Utdelning |
Lua | % | Delare | |
Mathematica | Quotient | Mod | Delare |
MATLAB | idivide(?, ?, 'floor') | mod | Delare |
idivide | rem | Utdelning | |
MySQL | DIV | MOD % |
Utdelning |
Oberon | DIV | MOD | + |
Mål Caml | mod | Odefinierad | |
Pascal | div | mod | Delbar [8] |
Perl | Inte | % | Delare |
PHP | Nej [9] | % | Utdelning |
PL/I | mod | Avdelare ( ANSI PL/I ) | |
Prolog (ISO 1995) | mod | Delare | |
PureBasic | / | Mod % |
Utdelning |
Pytonorm | // | % | Delare |
QBasic | \ | MOD | Utdelning |
R | %/% | %% | Delare |
RPG | %REM | Utdelning | |
rubin | / | % | Delare |
Schema | modulo | Delare | |
SenseTalk | modulo | Delare | |
rem | Utdelning | ||
tcl | % | Delare | |
Verilog (2001) | % | Utdelning | |
VHDL | mod | Delare | |
rem | Utdelning | ||
Visual Basic | \ | Mod | Utdelning |
Att hitta resten av en division används ofta i datorteknik och telekommunikationsutrustning för att generera kontrollnummer och generera slumptal inom ett begränsat intervall, till exempel i en kongruent slumptalsgenerator .
Beteckningarna för operationen att ta resten på olika programmeringsspråk presenteras i tabellen till höger. Till exempel i Pascal beräknar operationen modresten av en division, och operationen divutför en heltalsdivision, där resten av divisionen kasseras:
78 mod 33 = 12 78 div 33 = 2Operationen med att ta resten i programmeringsspråk kan ge ett negativt resultat (för en negativ utdelning eller divisor). Det finns två alternativ här:
Om ett språk har båda typerna av rester, har var och en av dem sin egen partiella kvotoperation. Båda operationerna är viktiga.
Den ofullständiga kvoten kan beräknas genom att dividera och ta heltalsdelen: , där , beroende på uppgiften, kan vara ett " golv " eller en trunkering. Däremot är divisionen här bråkdel , vilket är mycket långsammare än heltal. En sådan algoritm används i språk som inte har heltalstyper (separata kalkylblad , programmerbara miniräknare och matematiska program), såväl som i skriptspråk , där tolkningskostnaderna vida överstiger overheaden för fraktionerad aritmetik ( Perl , PHP ).
Om det inte finns något kommando, programmeras modresten som .
Om positivt, och tecknet sammanfaller med utdelningens tecken, inte är definierat eller okänt, kan du använda formeln för att hitta den minsta icke-negativa återstoden .
Den ofullständiga kvoten och den icke-negativa resten av division med en potens av två är en bitförskjutning (för tecken med tecken , aritmetik) och .
Om två tal och (annat än noll ) tillhör uppsättningen av reella tal , kan delas med utan rest, och kvoten är också ett reellt tal. Om kvoten per villkor måste vara ett heltal , i det här fallet kommer resten att vara ett reellt tal, det vill säga det kan visa sig vara bråktal .
Formellt:
om , då , var . ExempelAtt dividera 7,9 med 2,1 med en rest ger:
(ofullständig kvot); (återstoden).Ett Gaussiskt tal är ett komplext tal av formen , där är heltal. För dem kan division med en rest definieras: vilket gaussiskt tal som helst kan delas med en rest med valfritt Gaussiskt tal som inte är noll , det vill säga representeras som:
,där kvoten och återstoden är gaussiska tal, och dock, till skillnad från heltal, är resten av divisionen inte unikt definierad. Kan till exempel delas in i tre sätt:
När man dividerar med en återstod av två polynom och för att resultatet ska vara unikt, införs ett villkor: graden av återstodspolynomet måste vara strikt mindre än graden av divisor:
, och . Exempel (återstoden 3 ), eftersom: .