CINXE.COM

Modulo - Wikipedia

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>Modulo - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"2e042d27-4d52-4233-9320-1d7a4061b0ab","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Modulo","wgTitle":"Modulo","wgCurRevisionId":1271710337,"wgRevisionId":1271710337,"wgArticleId":1352428,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["CS1 maint: numeric names: authors list","Articles with short description","Short description matches Wikidata","Articles with example C++ code","Computer arithmetic","Operators (programming)","Modular arithmetic","Operations on numbers"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Modulo","wgRelevantArticleId":1352428,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[], "wgRedirectedFrom":"Modulo_operator","wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":50000,"wgInternalRedirectTargetUrl":"/wiki/Modulo","wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q1799665","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false, "wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.math.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.tablesorter.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["mediawiki.action.view.redirect","ext.cite.ux-enhancements","ext.pygments.view","mediawiki.page.media","site","mediawiki.page.ready","jquery.tablesorter","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar", "ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=ext.cite.styles%7Cext.math.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cjquery.tablesorter.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/w/load.php?lang=en&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.16"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Modulo - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/Modulo"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=Modulo&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/Modulo"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&amp;feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Modulo rootpage-Modulo skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" title="Main menu" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li><li id="n-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages"><span>Special pages</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page&#039;s font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/?wmf_source=donate&amp;wmf_medium=sidebar&amp;wmf_campaign=en.wikipedia.org&amp;uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&amp;returnto=Modulo" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&amp;returnto=Modulo" title="You&#039;re encouraged to log in; however, it&#039;s not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/?wmf_source=donate&amp;wmf_medium=sidebar&amp;wmf_campaign=en.wikipedia.org&amp;uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&amp;returnto=Modulo" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&amp;returnto=Modulo" title="You&#039;re encouraged to log in; however, it&#039;s not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-Variants_of_the_definition" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Variants_of_the_definition"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Variants of the definition</span> </div> </a> <ul id="toc-Variants_of_the_definition-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Notation" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Notation"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Notation</span> </div> </a> <ul id="toc-Notation-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Common_pitfalls" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Common_pitfalls"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Common pitfalls</span> </div> </a> <ul id="toc-Common_pitfalls-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Performance_issues" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Performance_issues"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Performance issues</span> </div> </a> <ul id="toc-Performance_issues-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Properties_(identities)" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Properties_(identities)"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Properties (identities)</span> </div> </a> <ul id="toc-Properties_(identities)-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-In_programming_languages" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#In_programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>In programming languages</span> </div> </a> <ul id="toc-In_programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Generalizations" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Generalizations"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Generalizations</span> </div> </a> <button aria-controls="toc-Generalizations-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Generalizations subsection</span> </button> <ul id="toc-Generalizations-sublist" class="vector-toc-list"> <li id="toc-Modulo_with_offset" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Modulo_with_offset"> <div class="vector-toc-text"> <span class="vector-toc-numb">7.1</span> <span>Modulo with offset</span> </div> </a> <ul id="toc-Modulo_with_offset-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Implementing_other_modulo_definitions_using_truncation" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Implementing_other_modulo_definitions_using_truncation"> <div class="vector-toc-text"> <span class="vector-toc-numb">7.2</span> <span>Implementing other modulo definitions using truncation</span> </div> </a> <ul id="toc-Implementing_other_modulo_definitions_using_truncation-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-See_also" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#See_also"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>See also</span> </div> </a> <ul id="toc-See_also-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Notes" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Notes"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>Notes</span> </div> </a> <ul id="toc-Notes-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">10</span> <span>References</span> </div> </a> <ul id="toc-References-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-External_links" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#External_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">11</span> <span>External links</span> </div> </a> <ul id="toc-External_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" title="Table of Contents" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Modulo</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Go to an article in another language. Available in 26 languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-26" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">26 languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D8%B9%D8%A7%D9%85%D9%84_%D9%82%D8%B3%D9%85%D8%A9_%D9%85%D8%B9_%D8%A8%D8%A7%D9%82%D9%8A" title="عامل قسمة مع باقي – Arabic" lang="ar" hreflang="ar" data-title="عامل قسمة مع باقي" data-language-autonym="العربية" data-language-local-name="Arabic" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Operaci%C3%B3_m%C3%B2dul" title="Operació mòdul – Catalan" lang="ca" hreflang="ca" data-title="Operació mòdul" data-language-autonym="Català" data-language-local-name="Catalan" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-da mw-list-item"><a href="https://da.wikipedia.org/wiki/Modulo" title="Modulo – Danish" lang="da" hreflang="da" data-title="Modulo" data-language-autonym="Dansk" data-language-local-name="Danish" class="interlanguage-link-target"><span>Dansk</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo" title="Division mit Rest – German" lang="de" hreflang="de" data-title="Division mit Rest" data-language-autonym="Deutsch" data-language-local-name="German" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Operaci%C3%B3n_m%C3%B3dulo" title="Operación módulo – Spanish" lang="es" hreflang="es" data-title="Operación módulo" data-language-autonym="Español" data-language-local-name="Spanish" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA_%D9%BE%DB%8C%D9%85%D8%A7%D9%86%D9%87" title="عملیات پیمانه – Persian" lang="fa" hreflang="fa" data-title="عملیات پیمانه" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Modulo_(op%C3%A9ration)" title="Modulo (opération) – French" lang="fr" hreflang="fr" data-title="Modulo (opération)" data-language-autonym="Français" data-language-local-name="French" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EB%AA%A8%EB%93%88%EB%A1%9C" title="모듈로 – Korean" lang="ko" hreflang="ko" data-title="모듈로" data-language-autonym="한국어" data-language-local-name="Korean" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-hy mw-list-item"><a href="https://hy.wikipedia.org/wiki/%D5%84%D5%B8%D5%A4%D5%B8%D6%82%D5%AC%D5%B8_%D5%A3%D5%B8%D6%80%D5%AE%D5%B8%D5%B2%D5%B8%D6%82%D5%A9%D5%B5%D5%B8%D6%82%D5%B6" title="Մոդուլո գործողություն – Armenian" lang="hy" hreflang="hy" data-title="Մոդուլո գործողություն" data-language-autonym="Հայերեն" data-language-local-name="Armenian" class="interlanguage-link-target"><span>Հայերեն</span></a></li><li class="interlanguage-link interwiki-id mw-list-item"><a href="https://id.wikipedia.org/wiki/Operasi_modulus" title="Operasi modulus – Indonesian" lang="id" hreflang="id" data-title="Operasi modulus" data-language-autonym="Bahasa Indonesia" data-language-local-name="Indonesian" class="interlanguage-link-target"><span>Bahasa Indonesia</span></a></li><li class="interlanguage-link interwiki-is mw-list-item"><a href="https://is.wikipedia.org/wiki/M%C3%B3dular" title="Módular – Icelandic" lang="is" hreflang="is" data-title="Módular" data-language-autonym="Íslenska" data-language-local-name="Icelandic" class="interlanguage-link-target"><span>Íslenska</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Operazione_modulo" title="Operazione modulo – Italian" lang="it" hreflang="it" data-title="Operazione modulo" data-language-autonym="Italiano" data-language-local-name="Italian" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-kk mw-list-item"><a href="https://kk.wikipedia.org/wiki/MOD_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D1%8F%D1%81%D1%8B" title="MOD операциясы – Kazakh" lang="kk" hreflang="kk" data-title="MOD операциясы" data-language-autonym="Қазақша" data-language-local-name="Kazakh" class="interlanguage-link-target"><span>Қазақша</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/%E5%89%B0%E4%BD%99%E6%BC%94%E7%AE%97" title="剰余演算 – Japanese" lang="ja" hreflang="ja" data-title="剰余演算" data-language-autonym="日本語" data-language-local-name="Japanese" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/Modulus" title="Modulus – Norwegian Bokmål" lang="nb" hreflang="nb" data-title="Modulus" data-language-autonym="Norsk bokmål" data-language-local-name="Norwegian Bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Modulo" title="Modulo – Polish" lang="pl" hreflang="pl" data-title="Modulo" data-language-autonym="Polski" data-language-local-name="Polish" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo" title="Operação módulo – Portuguese" lang="pt" hreflang="pt" data-title="Operação módulo" data-language-autonym="Português" data-language-local-name="Portuguese" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/Modulo" title="Modulo – Romanian" lang="ro" hreflang="ro" data-title="Modulo" data-language-autonym="Română" data-language-local-name="Romanian" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-simple mw-list-item"><a href="https://simple.wikipedia.org/wiki/Modulation_(mathematics)" title="Modulation (mathematics) – Simple English" lang="en-simple" hreflang="en-simple" data-title="Modulation (mathematics)" data-language-autonym="Simple English" data-language-local-name="Simple English" class="interlanguage-link-target"><span>Simple English</span></a></li><li class="interlanguage-link interwiki-sl mw-list-item"><a href="https://sl.wikipedia.org/wiki/Modulo" title="Modulo – Slovenian" lang="sl" hreflang="sl" data-title="Modulo" data-language-autonym="Slovenščina" data-language-local-name="Slovenian" class="interlanguage-link-target"><span>Slovenščina</span></a></li><li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://sr.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D0%B3%D1%80%D1%83%D0%B5%D0%BD%D1%86%D0%B8%D1%98%D0%B0" title="Конгруенција – Serbian" lang="sr" hreflang="sr" data-title="Конгруенција" data-language-autonym="Српски / srpski" data-language-local-name="Serbian" class="interlanguage-link-target"><span>Српски / srpski</span></a></li><li class="interlanguage-link interwiki-sv badge-Q70893996 mw-list-item" title=""><a href="https://sv.wikipedia.org/wiki/Modulor%C3%A4kning" title="Moduloräkning – Swedish" lang="sv" hreflang="sv" data-title="Moduloräkning" data-language-autonym="Svenska" data-language-local-name="Swedish" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/Modulo_i%C5%9Flemi" title="Modulo işlemi – Turkish" lang="tr" hreflang="tr" data-title="Modulo işlemi" data-language-autonym="Türkçe" data-language-local-name="Turkish" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/Ph%C3%A9p_to%C3%A1n_modulo" title="Phép toán modulo – Vietnamese" lang="vi" hreflang="vi" data-title="Phép toán modulo" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnamese" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/%E5%95%86%E9%A4%98" title="商餘 – Cantonese" lang="yue" hreflang="yue" data-title="商餘" data-language-autonym="粵語" data-language-local-name="Cantonese" class="interlanguage-link-target"><span>粵語</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E6%A8%A1%E9%99%A4" title="模除 – Chinese" lang="zh" hreflang="zh" data-title="模除" data-language-autonym="中文" data-language-local-name="Chinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q1799665#sitelinks-wikipedia" title="Edit interlanguage links" class="wbc-editpage">Edit links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Modulo" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:Modulo" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Modulo"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Modulo&amp;action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Modulo&amp;action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Modulo"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Modulo&amp;action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Modulo&amp;action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/Modulo" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/Modulo" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Modulo&amp;oldid=1271710337" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Modulo&amp;action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&amp;page=Modulo&amp;id=1271710337&amp;wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&amp;url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FModulo"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&amp;url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FModulo"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&amp;page=Modulo&amp;action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Modulo&amp;printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q1799665" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"><span class="mw-redirectedfrom">(Redirected from <a href="/w/index.php?title=Modulo_operator&amp;redirect=no" class="mw-redirect" title="Modulo operator">Modulo operator</a>)</span></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style><div role="note" class="hatnote navigation-not-searchable">This article is about the binary operation <i>mod(<span class="texhtml mvar" style="font-style:italic;">a,n</span>)</i>. For the <i>(mod <span class="texhtml mvar" style="font-style:italic;">n</span>)</i> notation, see <a href="/wiki/Modular_arithmetic" title="Modular arithmetic">Modular arithmetic</a>. For other uses, see <a href="/wiki/Modulo_(disambiguation)" class="mw-disambig" title="Modulo (disambiguation)">Modulo (disambiguation)</a>.</div> <div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none">Computational operation</div> <p>In <a href="/wiki/Computing" title="Computing">computing</a>, the <b>modulo operation</b> returns the <a href="/wiki/Remainder" title="Remainder">remainder</a> or signed remainder of a <a href="/wiki/Division_(mathematics)" title="Division (mathematics)">division</a>, after one number is divided by another, called the <i><a href="/wiki/Modular_arithmetic" title="Modular arithmetic">modulus</a></i> of the operation. </p><p>Given two positive numbers <span class="texhtml"><i>a</i></span> and <span class="texhtml"><i>n</i></span>, <span class="texhtml"><i>a</i></span> modulo <span class="texhtml"><i>n</i></span> (often abbreviated as <span class="texhtml"><i>a</i> mod <i>n</i></span>) is the remainder of the <a href="/wiki/Euclidean_division" title="Euclidean division">Euclidean division</a> of <span class="texhtml"><i>a</i></span> by <span class="texhtml"><i>n</i></span>, where <span class="texhtml"><i>a</i></span> is the <a href="/wiki/Division_(mathematics)" title="Division (mathematics)">dividend</a> and <span class="texhtml"><i>n</i></span> is the <a href="/wiki/Divisor" title="Divisor">divisor</a>.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup> </p><p>For example, the expression "5 mod 2" evaluates to 1, because 5 divided by 2 has a <a href="/wiki/Quotient" title="Quotient">quotient</a> of 2 and a remainder of 1, while "9 mod 3" would evaluate to 0, because 9 divided by 3 has a quotient of 3 and a remainder of 0. </p><p>Although typically performed with <span class="texhtml"><i>a</i></span> and <span class="texhtml"><i>n</i></span> both being <a href="/wiki/Integer" title="Integer">integers</a>, many computing systems now allow other types of numeric operands. The range of values for an integer modulo operation of <span class="texhtml"><i>n</i></span> is 0 to <span class="texhtml"><i>n</i> − 1</span>. <span class="texhtml"><i>a</i></span> mod 1 is always 0. </p><p>When exactly one of <span class="texhtml"><i>a</i></span> or <span class="texhtml"><i>n</i></span> is negative, the basic definition breaks down, and <a href="/wiki/Programming_languages" class="mw-redirect" title="Programming languages">programming languages</a> differ in how these values are defined. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Variants_of_the_definition">Variants of the definition</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=1" title="Edit section: Variants of the definition"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In <a href="/wiki/Mathematics" title="Mathematics">mathematics</a>, the result of the <a href="/wiki/Modular_arithmetic" title="Modular arithmetic">modulo</a> operation is an <a href="/wiki/Equivalence_class" title="Equivalence class">equivalence class</a>, and any member of the class may be chosen as <a href="/wiki/Representative_(mathematics)" class="mw-redirect" title="Representative (mathematics)">representative</a>; however, the usual representative is the <b>least positive residue</b>, the smallest non-negative integer that belongs to that class (i.e., the remainder of the <a href="/wiki/Euclidean_division" title="Euclidean division">Euclidean division</a>).<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup> However, other conventions are possible. Computers and calculators have various ways of storing and representing numbers; thus their definition of the modulo operation depends on the <a href="/wiki/Programming_language" title="Programming language">programming language</a> or the underlying <a href="/wiki/Computer_hardware" title="Computer hardware">hardware</a>. </p><p>In nearly all computing systems, the quotient <span class="texhtml"><i>q</i></span> and the remainder <span class="texhtml"><i>r</i></span> of <span class="texhtml"><i>a</i></span> divided by <span class="texhtml"><i>n</i></span> satisfy the following conditions: </p> <style data-mw-deduplicate="TemplateStyles:r1266403038">.mw-parser-output table.numblk{border-collapse:collapse;border:none;margin-top:0;margin-right:0;margin-bottom:0}.mw-parser-output table.numblk>tbody>tr>td{vertical-align:middle;padding:0}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2){width:99%}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table{border-collapse:collapse;margin:0;border:none;width:100%}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table>tbody>tr:first-child>td:first-child,.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table>tbody>tr:first-child>td:last-child{padding:0 0.4ex}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table>tbody>tr:first-child>td:nth-child(2){width:100%;padding:0}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table>tbody>tr:last-child>td{padding:0}.mw-parser-output table.numblk>tbody>tr>td:last-child{font-weight:bold}.mw-parser-output table.numblk.numblk-raw-n>tbody>tr>td:last-child{font-weight:unset}.mw-parser-output table.numblk>tbody>tr>td:last-child::before{content:"("}.mw-parser-output table.numblk>tbody>tr>td:last-child::after{content:")"}.mw-parser-output table.numblk.numblk-raw-n>tbody>tr>td:last-child::before,.mw-parser-output table.numblk.numblk-raw-n>tbody>tr>td:last-child::after{content:none}.mw-parser-output table.numblk>tbody>tr>td{border:none}.mw-parser-output table.numblk.numblk-border>tbody>tr>td{border:thin solid}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table>tbody>tr:first-child>td{border:none}.mw-parser-output table.numblk.numblk-border>tbody>tr>td:nth-child(2)>table>tbody>tr:first-child>td{border:thin solid}.mw-parser-output table.numblk>tbody>tr>td:nth-child(2)>table>tbody>tr:last-child>td{border-left:none;border-right:none;border-bottom:none}.mw-parser-output table.numblk.numblk-border>tbody>tr>td:nth-child(2)>table>tbody>tr:last-child>td{border-left:thin solid;border-right:thin solid;border-bottom:thin solid}.mw-parser-output table.numblk:target{color:var(--color-base,#202122);background-color:#cfe8fd}@media screen{html.skin-theme-clientpref-night .mw-parser-output table.numblk:target{color:var(--color-base,#eaecf0);background-color:#301702}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output table.numblk:target{color:var(--color-base,#eaecf0);background-color:#301702}}</style><table role="presentation" class="numblk" style="margin-left: 3.2em;"><tbody><tr><td class="nowrap"><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle {\begin{aligned}&amp;q\in \mathbb {Z} \\&amp;a=nq+r\\&amp;|r|&lt;|n|\end{aligned}}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mrow class="MJX-TeXAtom-ORD"> <mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"> <mtr> <mtd /> <mtd> <mi>q</mi> <mo>&#x2208;<!-- ∈ --></mo> <mrow class="MJX-TeXAtom-ORD"> <mi mathvariant="double-struck">Z</mi> </mrow> </mtd> </mtr> <mtr> <mtd /> <mtd> <mi>a</mi> <mo>=</mo> <mi>n</mi> <mi>q</mi> <mo>+</mo> <mi>r</mi> </mtd> </mtr> <mtr> <mtd /> <mtd> <mi></mi> <mrow class="MJX-TeXAtom-ORD"> <mo stretchy="false">|</mo> </mrow> <mi>r</mi> <mrow class="MJX-TeXAtom-ORD"> <mo stretchy="false">|</mo> </mrow> <mo>&lt;</mo> <mrow class="MJX-TeXAtom-ORD"> <mo stretchy="false">|</mo> </mrow> <mi>n</mi> <mrow class="MJX-TeXAtom-ORD"> <mo stretchy="false">|</mo> </mrow> </mtd> </mtr> </mtable> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle {\begin{aligned}&amp;q\in \mathbb {Z} \\&amp;a=nq+r\\&amp;|r|&lt;|n|\end{aligned}}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/385ef8ce0954e0cf4067ba7b29b11bd829a0e280" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -3.838ex; width:11.433ex; height:8.843ex;" alt="{\displaystyle {\begin{aligned}&amp;q\in \mathbb {Z} \\&amp;a=nq+r\\&amp;|r|&lt;|n|\end{aligned}}}"></span></td> <td></td> <td class="nowrap"><span id="math_1" class="reference nourlexpansion" style="font-weight:bold;">1</span></td></tr></tbody></table> <p>This still leaves a sign ambiguity if the remainder is non-zero: two possible choices for the remainder occur, one negative and the other positive; that choice determines which of the two consecutive quotients must be used to satisfy equation (1). In number theory, the positive remainder is always chosen, but in computing, programming languages choose depending on the language and the signs of <span class="texhtml"><i>a</i></span> or <span class="texhtml"><i>n</i></span>.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">&#91;</span>a<span class="cite-bracket">&#93;</span></a></sup> Standard <a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> and <a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a>, for example, give a positive remainder (or 0) even for negative divisors, and some programming languages, such as C90, leave it to the implementation when either of <span class="texhtml"><i>n</i></span> or <span class="texhtml"><i>a</i></span> is negative (see the table under <a href="#In_programming_languages">§&#160;In programming languages</a> for details). Some systems leave <span class="texhtml"><i>a</i></span> modulo 0 undefined, though others define it as <span class="texhtml"><i>a</i></span>. </p> <div><ul><li><figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Divmod_truncated.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Divmod_truncated.svg/260px-Divmod_truncated.svg.png" decoding="async" width="260" height="135" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Divmod_truncated.svg/390px-Divmod_truncated.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Divmod_truncated.svg/520px-Divmod_truncated.svg.png 2x" data-file-width="411" data-file-height="213" /></a><figcaption><style data-mw-deduplicate="TemplateStyles:r981673959">.mw-parser-output .legend{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .legend-color{display:inline-block;min-width:1.25em;height:1.25em;line-height:1.25;margin:1px 0;text-align:center;border:1px solid black;background-color:transparent;color:black}.mw-parser-output .legend-text{}</style><span class="legend-color mw-no-invert" style="background-color:red; color:black;">&#160;</span> Quotient (<span class="texhtml"><i>q</i></span>) and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r981673959"><span class="legend-color mw-no-invert" style="background-color:lightgreen; color:black;">&#160;</span> remainder (<span class="texhtml"><i>r</i></span>) as functions of dividend (<span class="texhtml"><i>a</i></span>), using truncated division</figcaption></figure> <p>Many implementations use <i>truncated division</i>, for which the quotient is defined by </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle q=\operatorname {trunc} \left({\frac {a}{n}}\right)}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>q</mi> <mo>=</mo> <mi>trunc</mi> <mo>&#x2061;<!-- ⁡ --></mo> <mrow> <mo>(</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>)</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle q=\operatorname {trunc} \left({\frac {a}{n}}\right)}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/5feb729ea32f718e78b3a8e49dacb1ca391f2bc4" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:14.608ex; height:4.843ex;" alt="{\displaystyle q=\operatorname {trunc} \left({\frac {a}{n}}\right)}"></span></dd></dl> <p>where <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {trunc} }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>trunc</mi> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \operatorname {trunc} }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/69473479d8f591cfd14c480ab725aac0c2229d8d" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:5.434ex; height:2.009ex;" alt="{\displaystyle \operatorname {trunc} }"></span> is the <a href="/wiki/Integral_part" class="mw-redirect" title="Integral part">integral part function</a> (<a href="/wiki/Rounding#Rounding_toward_zero" title="Rounding">rounding toward zero</a>), i.e. the <a href="/wiki/Truncation" title="Truncation">truncation</a> to zero significant digits. Thus according to equation (<b><a href="#math_1">1</a></b>), the remainder has the <i>same sign as the dividend</i> <var style="padding-right: 1px;">a</var> so can take <span class="texhtml">2|<i>n</i>| − 1</span> values: </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle r=a-n\operatorname {trunc} \left({\frac {a}{n}}\right)}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>r</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mi>trunc</mi> <mo>&#x2061;<!-- ⁡ --></mo> <mrow> <mo>(</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>)</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle r=a-n\operatorname {trunc} \left({\frac {a}{n}}\right)}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/883e082a5405c785bd79385c89571b70e88f7fb2" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:20.439ex; height:4.843ex;" alt="{\displaystyle r=a-n\operatorname {trunc} \left({\frac {a}{n}}\right)}"></span></dd></dl></li><li><figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Divmod_floored.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Divmod_floored.svg/260px-Divmod_floored.svg.png" decoding="async" width="260" height="135" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Divmod_floored.svg/390px-Divmod_floored.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Divmod_floored.svg/520px-Divmod_floored.svg.png 2x" data-file-width="411" data-file-height="213" /></a><figcaption>Quotient and remainder using floored division</figcaption></figure> <p><a href="/wiki/Donald_Knuth" title="Donald Knuth">Donald Knuth</a><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup> promotes <i>floored division</i>, for which the quotient is defined by </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle q=\left\lfloor {\frac {a}{n}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>q</mi> <mo>=</mo> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle q=\left\lfloor {\frac {a}{n}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/19bd75a99c368ba756c7c1037ddc5531f7580775" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:8.854ex; height:4.843ex;" alt="{\displaystyle q=\left\lfloor {\frac {a}{n}}\right\rfloor }"></span></dd></dl> <p>where <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \lfloor \,\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo fence="false" stretchy="false">&#x230A;<!-- ⌊ --></mo> <mspace width="thinmathspace" /> <mo fence="false" stretchy="false">&#x230B;<!-- ⌋ --></mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \lfloor \,\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/3084289cca849fb18ec6407b9de5faa5846d8607" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:2.452ex; height:2.843ex;" alt="{\displaystyle \lfloor \,\rfloor }"></span> is the <a href="/wiki/Floor_function" class="mw-redirect" title="Floor function">floor function</a> (<a href="/wiki/Rounding#Rounding_down" title="Rounding">rounding down</a>). Thus according to equation (<b><a href="#math_1">1</a></b>), the remainder has the <i>same sign as the divisor</i> <var style="padding-right: 1px;">n</var>: </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle r=a-n\left\lfloor {\frac {a}{n}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>r</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle r=a-n\left\lfloor {\frac {a}{n}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/ca1ad1c9a2d7af2202b14284c0262355bad5cdb6" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:14.685ex; height:4.843ex;" alt="{\displaystyle r=a-n\left\lfloor {\frac {a}{n}}\right\rfloor }"></span></dd></dl></li><li><figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Divmod_Euclidean.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Divmod_Euclidean.svg/260px-Divmod_Euclidean.svg.png" decoding="async" width="260" height="135" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Divmod_Euclidean.svg/390px-Divmod_Euclidean.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Divmod_Euclidean.svg/520px-Divmod_Euclidean.svg.png 2x" data-file-width="411" data-file-height="213" /></a><figcaption>Quotient and remainder using Euclidean division</figcaption></figure> <p>Raymond T. Boute<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup> promotes <i><a href="/wiki/Euclidean_division" title="Euclidean division">Euclidean division</a></i>, for which the quotient is defined by </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle q=\operatorname {sgn}(n)\left\lfloor {\frac {a}{\left|n\right|}}\right\rfloor ={\begin{cases}\left\lfloor {\frac {a}{n}}\right\rfloor &amp;{\text{if }}n&gt;0\\\left\lceil {\frac {a}{n}}\right\rceil &amp;{\text{if }}n&lt;0\\\end{cases}}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>q</mi> <mo>=</mo> <mi>sgn</mi> <mo>&#x2061;<!-- ⁡ --></mo> <mo stretchy="false">(</mo> <mi>n</mi> <mo stretchy="false">)</mo> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mrow> <mo>|</mo> <mi>n</mi> <mo>|</mo> </mrow> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> <mo>=</mo> <mrow class="MJX-TeXAtom-ORD"> <mrow> <mo>{</mo> <mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"> <mtr> <mtd> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mtd> <mtd> <mrow class="MJX-TeXAtom-ORD"> <mtext>if&#xA0;</mtext> </mrow> <mi>n</mi> <mo>&gt;</mo> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>&#x2308;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>&#x2309;</mo> </mrow> </mtd> <mtd> <mrow class="MJX-TeXAtom-ORD"> <mtext>if&#xA0;</mtext> </mrow> <mi>n</mi> <mo>&lt;</mo> <mn>0</mn> </mtd> </mtr> </mtable> <mo fence="true" stretchy="true" symmetric="true"></mo> </mrow> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle q=\operatorname {sgn}(n)\left\lfloor {\frac {a}{\left|n\right|}}\right\rfloor ={\begin{cases}\left\lfloor {\frac {a}{n}}\right\rfloor &amp;{\text{if }}n&gt;0\\\left\lceil {\frac {a}{n}}\right\rceil &amp;{\text{if }}n&lt;0\\\end{cases}}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/7ee5d36b5d3186ddd85c92de8ad4e410e1f469a1" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -2.671ex; width:36.893ex; height:6.509ex;" alt="{\displaystyle q=\operatorname {sgn}(n)\left\lfloor {\frac {a}{\left|n\right|}}\right\rfloor ={\begin{cases}\left\lfloor {\frac {a}{n}}\right\rfloor &amp;{\text{if }}n&gt;0\\\left\lceil {\frac {a}{n}}\right\rceil &amp;{\text{if }}n&lt;0\\\end{cases}}}"></span></dd></dl> <p>where <span class="texhtml">sgn</span> is the <a href="/wiki/Sign_function" title="Sign function">sign function</a>, <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \lfloor \,\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo fence="false" stretchy="false">&#x230A;<!-- ⌊ --></mo> <mspace width="thinmathspace" /> <mo fence="false" stretchy="false">&#x230B;<!-- ⌋ --></mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \lfloor \,\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/3084289cca849fb18ec6407b9de5faa5846d8607" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:2.452ex; height:2.843ex;" alt="{\displaystyle \lfloor \,\rfloor }"></span> is the <a href="/wiki/Floor_function" class="mw-redirect" title="Floor function">floor function</a> (<a href="/wiki/Rounding#Rounding_down" title="Rounding">rounding down</a>), and <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \lceil \,\rceil }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo fence="false" stretchy="false">&#x2308;<!-- ⌈ --></mo> <mspace width="thinmathspace" /> <mo fence="false" stretchy="false">&#x2309;<!-- ⌉ --></mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \lceil \,\rceil }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/5d2a7e2cf4cbfa5a2507240f4d3f15350c171d72" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:2.452ex; height:2.843ex;" alt="{\displaystyle \lceil \,\rceil }"></span> is the <a href="/wiki/Ceiling_function" class="mw-redirect" title="Ceiling function">ceiling function</a> (<a href="/wiki/Rounding#Rounding_up" title="Rounding">rounding up</a>). Thus according to equation (<b><a href="#math_1">1</a></b>), the remainder is <i>non negative</i>: </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle r=a-|n|\left\lfloor {\frac {a}{\left|n\right|}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>r</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mrow class="MJX-TeXAtom-ORD"> <mo stretchy="false">|</mo> </mrow> <mi>n</mi> <mrow class="MJX-TeXAtom-ORD"> <mo stretchy="false">|</mo> </mrow> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mrow> <mo>|</mo> <mi>n</mi> <mo>|</mo> </mrow> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle r=a-|n|\left\lfloor {\frac {a}{\left|n\right|}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/3ab7a5aa1dac63cd7fa2b5a41095fdcd2500bf3c" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -2.671ex; width:17.528ex; height:6.343ex;" alt="{\displaystyle r=a-|n|\left\lfloor {\frac {a}{\left|n\right|}}\right\rfloor }"></span></dd></dl></li><li><figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Divmod_rounding.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/4/48/Divmod_rounding.svg/260px-Divmod_rounding.svg.png" decoding="async" width="260" height="135" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/48/Divmod_rounding.svg/390px-Divmod_rounding.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/48/Divmod_rounding.svg/520px-Divmod_rounding.svg.png 2x" data-file-width="411" data-file-height="213" /></a><figcaption>Quotient and remainder using rounded division</figcaption></figure> <p>Common Lisp and <a href="/wiki/IEEE_754-1985" title="IEEE 754-1985">IEEE 754</a> use <i>rounded division</i>, for which the quotient is defined by </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle q=\operatorname {round} \left({\frac {a}{n}}\right)}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>q</mi> <mo>=</mo> <mi>round</mi> <mo>&#x2061;<!-- ⁡ --></mo> <mrow> <mo>(</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>)</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle q=\operatorname {round} \left({\frac {a}{n}}\right)}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/f001dd60b59e4f44c5c44a2f2853dc33a8015a01" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:15.126ex; height:4.843ex;" alt="{\displaystyle q=\operatorname {round} \left({\frac {a}{n}}\right)}"></span></dd></dl> <p>where <span class="texhtml">round</span> is the <a href="/wiki/Rounding" title="Rounding">round function</a> (<a href="/wiki/Rounding#Rounding_half_to_even" title="Rounding">rounding half to even</a>). Thus according to equation (<b><a href="#math_1">1</a></b>), the remainder falls between <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle -{\frac {n}{2}}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo>&#x2212;<!-- − --></mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>n</mi> <mn>2</mn> </mfrac> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle -{\frac {n}{2}}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/b28ab851ef83cb88352dc199323826d4095709c4" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:4.039ex; height:4.676ex;" alt="{\displaystyle -{\frac {n}{2}}}"></span> and <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle {\frac {n}{2}}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>n</mi> <mn>2</mn> </mfrac> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle {\frac {n}{2}}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/1216d48de276dc45542cb80b1e49037131ec9624" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:2.231ex; height:4.676ex;" alt="{\displaystyle {\frac {n}{2}}}"></span>, and its sign depends on which side of zero it falls to be within these boundaries: </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle r=a-n\operatorname {round} \left({\frac {a}{n}}\right)}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>r</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mi>round</mi> <mo>&#x2061;<!-- ⁡ --></mo> <mrow> <mo>(</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>)</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle r=a-n\operatorname {round} \left({\frac {a}{n}}\right)}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/5229d5b5d726332e30acd9ebb9c98823cf43f10d" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:20.957ex; height:4.843ex;" alt="{\displaystyle r=a-n\operatorname {round} \left({\frac {a}{n}}\right)}"></span></dd></dl></li><li><figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Divmod_ceiling.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/a/af/Divmod_ceiling.svg/260px-Divmod_ceiling.svg.png" decoding="async" width="260" height="135" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/a/af/Divmod_ceiling.svg/390px-Divmod_ceiling.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/a/af/Divmod_ceiling.svg/520px-Divmod_ceiling.svg.png 2x" data-file-width="411" data-file-height="213" /></a><figcaption>Quotient and remainder using ceiling division</figcaption></figure> <p>Common Lisp also uses <i>ceiling division</i>, for which the quotient is defined by </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle q=\left\lceil {\frac {a}{n}}\right\rceil }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>q</mi> <mo>=</mo> <mrow> <mo>&#x2308;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>&#x2309;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle q=\left\lceil {\frac {a}{n}}\right\rceil }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/d7a842cab18be465dda3798f42dd382e3057859c" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:8.854ex; height:4.843ex;" alt="{\displaystyle q=\left\lceil {\frac {a}{n}}\right\rceil }"></span></dd></dl> <p>where ⌈⌉ is the <a href="/wiki/Ceiling_function" class="mw-redirect" title="Ceiling function">ceiling function</a> (<a href="/wiki/Rounding#Rounding_up" title="Rounding">rounding up</a>). Thus according to equation (<b><a href="#math_1">1</a></b>), the remainder has the <i>opposite sign of that of the divisor</i>: </p> <dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle r=a-n\left\lceil {\frac {a}{n}}\right\rceil }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>r</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mrow> <mo>&#x2308;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mi>a</mi> <mi>n</mi> </mfrac> </mrow> <mo>&#x2309;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle r=a-n\left\lceil {\frac {a}{n}}\right\rceil }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/11bd7c338a1cee1ab548508404dc460df2b7077d" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:14.685ex; height:4.843ex;" alt="{\displaystyle r=a-n\left\lceil {\frac {a}{n}}\right\rceil }"></span></dd></dl></li></ul></div> <p>If both the dividend and divisor are positive, then the truncated, floored, and Euclidean definitions agree. If the dividend is positive and the divisor is negative, then the truncated and Euclidean definitions agree. If the dividend is negative and the divisor is positive, then the floored and Euclidean definitions agree. If both the dividend and divisor are negative, then the truncated and floored definitions agree. </p><p>As described by Leijen, </p> <style data-mw-deduplicate="TemplateStyles:r1244412712">.mw-parser-output .templatequote{overflow:hidden;margin:1em 0;padding:0 32px}.mw-parser-output .templatequotecite{line-height:1.5em;text-align:left;margin-top:0}@media(min-width:500px){.mw-parser-output .templatequotecite{padding-left:1.6em}}</style><blockquote class="templatequote"><p>Boute argues that Euclidean division is superior to the other ones in terms of regularity and useful mathematical properties, although floored division, promoted by Knuth, is also a good definition. Despite its widespread use, truncated division is shown to be inferior to the other definitions.</p><div class="templatequotecite">—&#8202;<cite>Daan Leijen, <i>Division and Modulus for Computer Scientists</i><sup id="cite_ref-Leijen_6-0" class="reference"><a href="#cite_note-Leijen-6"><span class="cite-bracket">&#91;</span>5<span class="cite-bracket">&#93;</span></a></sup></cite></div></blockquote> <p>However, truncated division satisfies the identity <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle ({-a})/b={-(a/b)}=a/({-b})}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo stretchy="false">(</mo> <mrow class="MJX-TeXAtom-ORD"> <mo>&#x2212;<!-- − --></mo> <mi>a</mi> </mrow> <mo stretchy="false">)</mo> <mrow class="MJX-TeXAtom-ORD"> <mo>/</mo> </mrow> <mi>b</mi> <mo>=</mo> <mrow class="MJX-TeXAtom-ORD"> <mo>&#x2212;<!-- − --></mo> <mo stretchy="false">(</mo> <mi>a</mi> <mrow class="MJX-TeXAtom-ORD"> <mo>/</mo> </mrow> <mi>b</mi> <mo stretchy="false">)</mo> </mrow> <mo>=</mo> <mi>a</mi> <mrow class="MJX-TeXAtom-ORD"> <mo>/</mo> </mrow> <mo stretchy="false">(</mo> <mrow class="MJX-TeXAtom-ORD"> <mo>&#x2212;<!-- − --></mo> <mi>b</mi> </mrow> <mo stretchy="false">)</mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle ({-a})/b={-(a/b)}=a/({-b})}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/0c17b403df86515893e20dc9a2eb128516de8312" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:27.219ex; height:2.843ex;" alt="{\displaystyle ({-a})/b={-(a/b)}=a/({-b})}"></span>.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Notation">Notation</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=2" title="Edit section: Notation"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">This section is about the binary <i>mod</i> operation. For the <i>(mod</i> m<i>)</i> notation, see <a href="/wiki/Congruence_relation" title="Congruence relation">congruence relation</a>.</div> <p>Some calculators have a <span class="texhtml">mod()</span> function button, and many programming languages have a similar function, expressed as <span class="texhtml">mod(<i>a</i>, <i>n</i>)</span>, for example. Some also support expressions that use "%", "mod", or "Mod" as a modulo or remainder <a href="/wiki/Operator_(programming)" class="mw-redirect" title="Operator (programming)">operator</a>, such as <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">a&#160;% n</code> or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">a mod n</code>. </p><p>For environments lacking a similar function, any of the three definitions above can be used. </p> <div class="mw-heading mw-heading2"><h2 id="Common_pitfalls">Common pitfalls</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=3" title="Edit section: Common pitfalls"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>When the result of a modulo operation has the sign of the dividend (truncated definition), it can lead to surprising mistakes. </p><p>For example, to test if an integer is <a href="/wiki/Parity_(mathematics)" title="Parity (mathematics)">odd</a>, one might be inclined to test if the remainder by 2 is equal to 1: </p> <div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="kt">bool</span><span class="w"> </span><span class="nf">is_odd</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">%</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span> <span class="p">}</span> </pre></div> <p>But in a language where modulo has the sign of the dividend, that is incorrect, because when <span class="texhtml"><i>n</i></span> (the dividend) is negative and odd, <span class="texhtml"><i>n</i></span> mod 2 returns −1, and the function returns false. </p><p>One correct alternative is to test that the remainder is not 0 (because remainder 0 is the same regardless of the signs): </p> <div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="kt">bool</span><span class="w"> </span><span class="nf">is_odd</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">%</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span> <span class="p">}</span> </pre></div> <p>Or with the binary arithmetic: </p> <div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="kt">bool</span><span class="w"> </span><span class="nf">is_odd</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">&amp;</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span> <span class="p">}</span> </pre></div> <div class="mw-heading mw-heading2"><h2 id="Performance_issues">Performance issues</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=4" title="Edit section: Performance issues"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Modulo operations might be implemented such that a division with a remainder is calculated each time. For special cases, on some hardware, faster alternatives exist. For example, the modulo of <a href="/wiki/Powers_of_2" class="mw-redirect" title="Powers of 2">powers of 2</a> can alternatively be expressed as a <a href="/wiki/Bitwise_operation" title="Bitwise operation">bitwise</a> AND operation (assuming <span class="texhtml"><i>x</i></span> is a positive integer, or using a non-truncating definition): </p> <dl><dd><code>x&#160;% 2<sup>n</sup> == x &amp; (2<sup>n</sup> - 1)</code></dd></dl> <p>Examples: </p> <dl><dd><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">x&#160;% 2 == x &amp; 1</code></dd> <dd><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">x&#160;% 4 == x &amp; 3</code></dd> <dd><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">x&#160;% 8 == x &amp; 7</code></dd></dl> <p>In devices and software that implement bitwise operations more efficiently than modulo, these alternative forms can result in faster calculations.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">&#91;</span>7<span class="cite-bracket">&#93;</span></a></sup> </p><p><a href="/wiki/Compiler_optimization" class="mw-redirect" title="Compiler optimization">Compiler optimizations</a> may recognize expressions of the form <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">expression&#160;% constant</code> where <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">constant</code> is a power of two and automatically implement them as <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">expression &amp; (constant-1)</code>, allowing the programmer to write clearer code without compromising performance. This simple optimization is not possible for languages in which the result of the modulo operation has the sign of the dividend (including <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>), unless the dividend is of an <a href="/wiki/Signedness" title="Signedness">unsigned</a> integer type. This is because, if the dividend is negative, the modulo will be negative, whereas <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">expression &amp; (constant-1)</code> will always be positive. For these languages, the equivalence <code>x&#160;% 2<sup>n</sup> == x &lt; 0&#160;? x | ~(2<sup>n</sup> - 1)&#160;: x &amp; (2<sup>n</sup> - 1)</code> has to be used instead, expressed using bitwise OR, NOT and AND operations. </p><p>Optimizations for general constant-modulus operations also exist by calculating the division first using the <a href="/wiki/Division_algorithm#Division_by_a_constant" title="Division algorithm">constant-divisor optimization</a>. </p> <div class="mw-heading mw-heading2"><h2 id="Properties_(identities)"><span id="Properties_.28identities.29"></span>Properties (identities)</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=5" title="Edit section: Properties (identities)"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Modular_arithmetic#Properties" title="Modular arithmetic">Modular arithmetic §&#160;Properties</a></div> <p>Some modulo operations can be factored or expanded similarly to other mathematical operations. This may be useful in <a href="/wiki/Cryptography" title="Cryptography">cryptography</a> proofs, such as the <a href="/wiki/Diffie%E2%80%93Hellman_key_exchange" title="Diffie–Hellman key exchange">Diffie–Hellman key exchange</a>. The properties involving multiplication, division, and exponentiation generally require that <span class="texhtml"><i>a</i></span> and <span class="texhtml"><i>n</i></span> are integers. </p> <ul><li>Identity: <ul><li><span class="texhtml">(<i>a</i> mod <i>n</i>) mod <i>n</i> = <i>a</i> mod <i>n</i></span>.</li> <li><span class="texhtml"><i>n</i><sup><i>x</i></sup> mod <i>n</i> = 0</span> for all positive integer values of <span class="texhtml"><i>x</i></span>.</li> <li>If <span class="texhtml"><i>p</i></span> is a <a href="/wiki/Prime_number" title="Prime number">prime number</a> which is not a <a href="/wiki/Divisor" title="Divisor">divisor</a> of <span class="texhtml"><i>b</i></span>, then <span class="texhtml"><i>ab</i><span style="padding-left:0.12em;"><sup><i>p</i>−1</sup></span> mod <i>p</i> = <i>a</i> mod <i>p</i></span>, due to <a href="/wiki/Fermat%27s_little_theorem" title="Fermat&#39;s little theorem">Fermat's little theorem</a>.</li></ul></li> <li>Inverse: <ul><li><span class="texhtml">[(−<i>a</i> mod <i>n</i>) + (<i>a</i> mod <i>n</i>)] mod <i>n</i> = 0</span>.</li> <li><span class="texhtml"><i>b</i><sup>−1</sup> mod <i>n</i></span> denotes the <a href="/wiki/Modular_multiplicative_inverse" title="Modular multiplicative inverse">modular multiplicative inverse</a>, which is defined <a href="/wiki/If_and_only_if" title="If and only if">if and only if</a> <span class="texhtml"><i>b</i></span> and <span class="texhtml"><i>n</i></span> are <a href="/wiki/Relatively_prime" class="mw-redirect" title="Relatively prime">relatively prime</a>, which is the case when the left hand side is defined: <span class="texhtml">[(<i>b</i><sup>−1</sup> mod <i>n</i>)(<i>b</i> mod <i>n</i>)] mod <i>n</i> = 1</span>.</li></ul></li> <li>Distributive: <ul><li><span class="texhtml">(<i>a</i> + <i>b</i>) mod <i>n</i> = [(<i>a</i> mod <i>n</i>) + (<i>b</i> mod <i>n</i>)] mod <i>n</i></span>.</li> <li><span class="texhtml"><i>ab</i> mod <i>n</i> = [(<i>a</i> mod <i>n</i>)(<i>b</i> mod <i>n</i>)] mod <i>n</i></span>.</li></ul></li> <li>Division (definition): <span class="texhtml"><style data-mw-deduplicate="TemplateStyles:r1214402035">.mw-parser-output .sfrac{white-space:nowrap}.mw-parser-output .sfrac.tion,.mw-parser-output .sfrac .tion{display:inline-block;vertical-align:-0.5em;font-size:85%;text-align:center}.mw-parser-output .sfrac .num{display:block;line-height:1em;margin:0.0em 0.1em;border-bottom:1px solid}.mw-parser-output .sfrac .den{display:block;line-height:1em;margin:0.1em 0.1em}.mw-parser-output .sr-only{border:0;clip:rect(0,0,0,0);clip-path:polygon(0px 0px,0px 0px,0px 0px);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}</style><span class="sfrac">&#8288;<span class="tion"><span class="num"><i>a</i></span><span class="sr-only">/</span><span class="den"><i>b</i></span></span>&#8288;</span> mod <i>n</i> = [(<i>a</i> mod <i>n</i>)(<i>b</i><sup>−1</sup> mod <i>n</i>)] mod <i>n</i></span>, when the right hand side is defined (that is when <span class="texhtml"><i>b</i></span> and <span class="texhtml"><i>n</i></span> are <a href="/wiki/Coprime" class="mw-redirect" title="Coprime">coprime</a>), and undefined otherwise.</li> <li>Inverse multiplication: <span class="texhtml">[(<i>ab</i> mod <i>n</i>)(<i>b</i><sup>−1</sup> mod <i>n</i>)] mod <i>n</i> = <i>a</i> mod <i>n</i></span>.</li></ul> <div class="mw-heading mw-heading2"><h2 id="In_programming_languages">In programming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=6" title="Edit section: In programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable sortable"> <caption>Modulo operators in various programming languages </caption> <tbody><tr> <th scope="col"><a href="/wiki/Programming_language" title="Programming language">Language</a> </th> <th scope="col">Operator </th> <th scope="col">Integer </th> <th scope="col">Floating-point </th> <th abbr="Sign" scope="col"><a href="#Variants_of_the_definition">Definition</a> </th></tr> <tr> <td><a href="/wiki/ABAP" title="ABAP">ABAP</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Euclidean </td></tr> <tr> <td><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-Ada_9-0" class="reference"><a href="#cite_note-Ada-9"><span class="cite-bracket">&#91;</span>8<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-Ada_9-1" class="reference"><a href="#cite_note-Ada-9"><span class="cite-bracket">&#91;</span>8<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">÷×</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean </td></tr> <tr> <td><a href="/wiki/AMPL" title="AMPL">AMPL</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a> </td> <td><code>|</code><sup id="cite_ref-rev_10-0" class="reference"><a href="#cite_note-rev-10"><span class="cite-bracket">&#91;</span>b<span class="cite-bracket">&#93;</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/AppleScript" title="AppleScript">AppleScript</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/AutoLISP" title="AutoLISP">AutoLISP</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">(rem d n)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/AWK" title="AWK">AWK</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/BASIC" title="BASIC">BASIC</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Varies by implementation </td></tr> <tr> <td><a href="/wiki/Bc_(programming_language)" title="Bc (programming language)">bc</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="3"><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a><br /><a href="/wiki/C%2B%2B" title="C++">C++</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">div</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-c_13-0" class="reference"><a href="#cite_note-c-13"><span class="cite-bracket">&#91;</span>c<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fmod</code> (C)<br /><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">std::fmod</code> (C++) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> (C)<br /><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">std::remainder</code> (C++) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded </td></tr> <tr> <td rowspan="2"><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Math.IEEERemainder</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded<sup id="cite_ref-.NET_15-0" class="reference"><a href="#cite_note-.NET-15"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Clarion_(programming_language)" title="Clarion (programming language)">Clarion</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Clean_(programming_language)" title="Clean (programming language)">Clean</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Clojure" title="Clojure">Clojure</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">&#91;</span>13<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/COBOL" title="COBOL">COBOL</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">FUNCTION MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-isocobol_18-0" class="reference"><a href="#cite_note-isocobol-18"><span class="cite-bracket">&#91;</span>15<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">FUNCTION REM</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-isocobol_18-1" class="reference"><a href="#cite_note-isocobol-18"><span class="cite-bracket">&#91;</span>15<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/CoffeeScript" title="CoffeeScript">CoffeeScript</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-CoffeeScript_19-0" class="reference"><a href="#cite_note-CoffeeScript-19"><span class="cite-bracket">&#91;</span>16<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/ColdFusion" class="mw-redirect" title="ColdFusion">ColdFusion</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Common_Intermediate_Language" title="Common Intermediate Language">Common Intermediate Language</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> (signed) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">&#91;</span>17<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem.un</code> (unsigned) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td></tr> <tr> <td rowspan="2"><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Crystal_(programming_language)" title="Crystal (programming language)">Crystal</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/CSS" title="CSS">CSS</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">&#91;</span>18<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">&#91;</span>19<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">&#91;</span>20<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Euclidean<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">&#91;</span>21<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">&#91;</span>22<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\\</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem/2</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">&#91;</span>23<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Integer.mod/2</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">&#91;</span>24<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Elm_(programming_language)" title="Elm (programming language)">Elm</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modBy</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">&#91;</span>25<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainderBy</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">&#91;</span>26<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">math:fmod/2</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated (same as C)<sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">&#91;</span>27<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Euphoria_(programming_language)" title="Euphoria (programming language)">Euphoria</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Math.IEEERemainder</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded<sup id="cite_ref-.NET_15-1" class="reference"><a href="#cite_note-.NET-15"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Factor_(programming_language)" title="Factor (programming language)">Factor</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/FileMaker" title="FileMaker">FileMaker</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="3"><a href="/wiki/Forth_(programming_language)" title="Forth (programming language)">Forth</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Implementation defined </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fm/mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">sm/rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Fortran" title="Fortran">Fortran</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Frink_(programming_language)" title="Frink (programming language)">Frink</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/Full_BASIC" title="Full BASIC">Full BASIC</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored<sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">&#91;</span>28<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">REMAINDER</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">&#91;</span>29<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/GLSL" class="mw-redirect" title="GLSL">GLSL</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Undefined<sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">&#91;</span>30<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored<sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">&#91;</span>31<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/GameMaker_Studio" class="mw-redirect" title="GameMaker Studio">GameMaker Studio</a> (GML) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="4"><a href="/wiki/Godot_(game_engine)" title="Godot (game engine)">GDScript (Godot)</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">posmod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fposmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Euclidean </td></tr> <tr> <td rowspan="4"><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">&#91;</span>32<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">math.Mod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">&#91;</span>33<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">big.Int.Mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean<sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">&#91;</span>34<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">big.Int.Rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">&#91;</span>35<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Apache_Groovy" title="Apache Groovy">Groovy</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="3"><a href="/wiki/Haskell_(programming_language)" class="mw-redirect" title="Haskell (programming language)">Haskell</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-Haskell_2010_39-0" class="reference"><a href="#cite_note-Haskell_2010-39"><span class="cite-bracket">&#91;</span>36<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-Haskell_2010_39-1" class="reference"><a href="#cite_note-Haskell_2010-39"><span class="cite-bracket">&#91;</span>36<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Data.Fixed.mod&#39;</code> (<a href="/wiki/Glasgow_Haskell_Compiler" title="Glasgow Haskell Compiler">GHC</a>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Haxe" title="Haxe">Haxe</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/HLSL" class="mw-redirect" title="HLSL">HLSL</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Undefined<sup id="cite_ref-40" class="reference"><a href="#cite_note-40"><span class="cite-bracket">&#91;</span>37<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a> </td> <td><code>|</code><sup id="cite_ref-rev_10-1" class="reference"><a href="#cite_note-rev-10"><span class="cite-bracket">&#91;</span>b<span class="cite-bracket">&#93;</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Math.floorMod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a><br /><a href="/wiki/TypeScript" title="TypeScript">TypeScript</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored<sup id="cite_ref-41" class="reference"><a href="#cite_note-41"><span class="cite-bracket">&#91;</span>38<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-42" class="reference"><a href="#cite_note-42"><span class="cite-bracket">&#91;</span>39<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-43" class="reference"><a href="#cite_note-43"><span class="cite-bracket">&#91;</span>40<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored<sup id="cite_ref-44" class="reference"><a href="#cite_note-44"><span class="cite-bracket">&#91;</span>41<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/KornShell" title="KornShell">ksh</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated (same as POSIX sh) </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/LibreOffice" title="LibreOffice">LibreOffice</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">=MOD()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/Logo_(programming_language)" title="Logo (programming language)">Logo</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MODULO</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">REMAINDER</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a> 5 </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a> 4 </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod(x,y)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Liberty_BASIC" title="Liberty BASIC">Liberty BASIC</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Mathcad" title="Mathcad">Mathcad</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod(x,y)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="3"><a href="/wiki/Maple_(software)" title="Maple (software)">Maple</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">e mod m</code> (by default), <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modp(e, m)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mods(e, m)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Rounded </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">frem(e, m)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded </td></tr> <tr> <td><a href="/wiki/Mathematica" class="mw-redirect" title="Mathematica">Mathematica</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod[a, b]</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Maxima_(software)" title="Maxima (software)">Maxima</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Maya_Embedded_Language" title="Maya Embedded Language">Maya Embedded Language</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Microsoft_Excel" title="Microsoft Excel">Microsoft Excel</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">=MOD()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Minitab" title="Minitab">Minitab</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">REM</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/MUMPS" title="MUMPS">MUMPS</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">#</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/Netwide_Assembler" title="Netwide Assembler">Netwide Assembler</a> (<a href="/wiki/Netwide_Assembler" title="Netwide Assembler">NASM</a>, <a href="/wiki/Netwide_Assembler" title="Netwide Assembler">NASMX</a>) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">div</code> (unsigned) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%%</code> (signed) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Implementation-defined<sup id="cite_ref-45" class="reference"><a href="#cite_note-45"><span class="cite-bracket">&#91;</span>42<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored-like<sup id="cite_ref-46" class="reference"><a href="#cite_note-46"><span class="cite-bracket">&#91;</span>d<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated (same as C99) </td></tr> <tr> <td><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a>, <a href="/wiki/Delphi_(programming_language)" class="mw-redirect" title="Delphi (programming language)">Delphi</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/OCaml" title="OCaml">OCaml</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-47" class="reference"><a href="#cite_note-47"><span class="cite-bracket">&#91;</span>43<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod_float</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-48" class="reference"><a href="#cite_note-48"><span class="cite-bracket">&#91;</span>44<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Occam_(programming_language)" title="Occam (programming language)">Occam</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> (ISO-7185 and -10206) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean-like<sup id="cite_ref-49" class="reference"><a href="#cite_note-49"><span class="cite-bracket">&#91;</span>e<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Perl" title="Perl">Perl</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored<sup id="cite_ref-51" class="reference"><a href="#cite_note-51"><span class="cite-bracket">&#91;</span>f<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">POSIX::fmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/w/index.php?title=Phix&amp;action=edit&amp;redlink=1" class="new" title="Phix (page does not exist)">Phix</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/PHP" title="PHP">PHP</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-52" class="reference"><a href="#cite_note-52"><span class="cite-bracket">&#91;</span>46<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-53" class="reference"><a href="#cite_note-53"><span class="cite-bracket">&#91;</span>47<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td>PIC <a href="/wiki/BASIC" title="BASIC">BASIC</a> Pro </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\\</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/PL/I" title="PL/I">PL/I</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored (ANSI PL/I) </td></tr> <tr> <td><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td>Programming Code (<a href="/wiki/PRC_(Palm_OS)" title="PRC (Palm OS)">PRC</a>) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MATH.OP - &#39;MOD; (\)&#39;</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Undefined </td></tr> <tr> <td><a href="/wiki/OpenEdge_Advanced_Business_Language" title="OpenEdge Advanced Business Language">Progress</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Prolog" title="Prolog">Prolog</a> (<a rel="nofollow" class="external text" href="https://www.iso.org/standard/21413.html">ISO 1995</a>) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/PureBasic" title="PureBasic">PureBasic</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod(x,y)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/PureScript" title="PureScript">PureScript</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">`mod`</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean<sup id="cite_ref-purescript_euclid_54-0" class="reference"><a href="#cite_note-purescript_euclid-54"><span class="cite-bracket">&#91;</span>48<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Pure_Data" title="Pure Data">Pure Data</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated (same as C) </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td rowspan="3"><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">math.fmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">math.remainder</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded </td></tr> <tr> <td><a href="/wiki/Q_Sharp" title="Q Sharp">Q#</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-55" class="reference"><a href="#cite_note-55"><span class="cite-bracket">&#91;</span>49<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored<sup id="cite_ref-56" class="reference"><a href="#cite_note-56"><span class="cite-bracket">&#91;</span>50<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Racket_(programming_language)" title="Racket (programming language)">Racket</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/RealBasic" class="mw-redirect" title="RealBasic">RealBasic</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Reason_(programming_language)" title="Reason (programming language)">Reason</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Rexx" title="Rexx">Rexx</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">//</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/RPG_(programming_language)" class="mw-redirect" title="RPG (programming language)">RPG</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%REM</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem_euclid()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Euclidean<sup id="cite_ref-rust_rem_euclid_57-0" class="reference"><a href="#cite_note-rust_rem_euclid-57"><span class="cite-bracket">&#91;</span>51<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/SAS_language" title="SAS language">SAS</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">MOD</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="4"><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a> <a href="/wiki/Scheme_(programming_language)#R6RS" title="Scheme (programming language)">R<sup>6</sup>RS</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean<sup id="cite_ref-r6rs_58-0" class="reference"><a href="#cite_note-r6rs-58"><span class="cite-bracket">&#91;</span>52<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod0</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Rounded<sup id="cite_ref-r6rs_58-1" class="reference"><a href="#cite_note-r6rs-58"><span class="cite-bracket">&#91;</span>52<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">flmod</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Euclidean </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">flmod0</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded </td></tr> <tr> <td><a href="/wiki/Scratch_(programming_language)" title="Scratch (programming language)">Scratch</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td rowspan="2"><a href="/wiki/Seed7" title="Seed7">Seed7</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/SenseTalk" title="SenseTalk">SenseTalk</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">modulo</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/POSIX_shell" class="mw-redirect" title="POSIX shell"><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">sh</code> (POSIX)</a> (includes <a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a>, <a href="/wiki/Mksh" class="mw-redirect" title="Mksh">mksh</a>, &amp;c.) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated (same as C)<sup id="cite_ref-59" class="reference"><a href="#cite_note-59"><span class="cite-bracket">&#91;</span>53<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\\</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem:</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Snap!_(programming_language)" title="Snap! (programming language)">Snap!</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Parallax_Propeller#Built_in_Spin_byte_code_interpreter" title="Parallax Propeller">Spin</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">//</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Solidity" title="Solidity">Solidity</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-60" class="reference"><a href="#cite_note-60"><span class="cite-bracket">&#91;</span>54<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/SQL" title="SQL">SQL</a> (<a href="/wiki/SQL:1999" title="SQL:1999">SQL:1999</a>) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod(x,y)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/SQL" title="SQL">SQL</a> (<a href="/wiki/SQL:2011" title="SQL:2011">SQL:2011</a>) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="3"><a href="/wiki/Standard_ML" title="Standard ML">Standard ML</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Int.rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Real.rem</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Stata" title="Stata">Stata</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod(x,y)</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean </td></tr> <tr> <td rowspan="3"><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-61" class="reference"><a href="#cite_note-61"><span class="cite-bracket">&#91;</span>55<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">remainder(dividingBy:)</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Rounded<sup id="cite_ref-62" class="reference"><a href="#cite_note-62"><span class="cite-bracket">&#91;</span>56<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">truncatingRemainder(dividingBy:)</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-63" class="reference"><a href="#cite_note-63"><span class="cite-bracket">&#91;</span>57<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td rowspan="2"><a href="/wiki/Tcl" title="Tcl">Tcl</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">fmod()</code> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated (as C) </td></tr> <tr> <td><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Torque_(game_engine)" title="Torque (game engine)">Torque</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Turing_(programming_language)" title="Turing (programming language)">Turing</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Verilog" title="Verilog">Verilog</a> (2001) </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/VHDL" title="VHDL">VHDL</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Floored </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">rem</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Vimscript" class="mw-redirect" title="Vimscript">VimL</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td><a href="/wiki/Visual_Basic_.NET" class="mw-redirect" title="Visual Basic .NET">Visual Basic</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/WebAssembly" title="WebAssembly">WebAssembly</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">i32.rem_u</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">i64.rem_u</code> (unsigned) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">—<sup id="cite_ref-wasmcs2_64-0" class="reference"><a href="#cite_note-wasmcs2-64"><span class="cite-bracket">&#91;</span>58<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">i32.rem_s</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">i64.rem_s</code> (signed) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated<sup id="cite_ref-wasmcs2_64-1" class="reference"><a href="#cite_note-wasmcs2-64"><span class="cite-bracket">&#91;</span>58<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/X86_assembly_language" title="X86 assembly language">x86 assembly</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">IDIV</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Truncated </td></tr> <tr> <td rowspan="2"><a href="/wiki/XBase%2B%2B" title="XBase++">XBase++</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated </td></tr> <tr> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod()</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Floored </td></tr> <tr> <td><a href="/wiki/Zig_(programming_language)" title="Zig (programming language)">Zig</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code>, <p><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">@mod</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">@rem</code> </p> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Truncated<sup id="cite_ref-65" class="reference"><a href="#cite_note-65"><span class="cite-bracket">&#91;</span>59<span class="cite-bracket">&#93;</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Z3_Theorem_Prover" title="Z3 Theorem Prover">Z3 theorem prover</a> </td> <td><code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">div</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Euclidean </td></tr></tbody></table> <p>In addition, many computer systems provide a <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">divmod</code> functionality, which produces the quotient and the remainder at the same time. Examples include the <a href="/wiki/X86_architecture" class="mw-redirect" title="X86 architecture">x86 architecture</a>'s <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">IDIV</code> instruction, the C programming language's <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">div()</code> function, and <a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a>'s <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">divmod()</code> function. </p> <div class="mw-heading mw-heading2"><h2 id="Generalizations">Generalizations</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=7" title="Edit section: Generalizations"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Modulo_with_offset">Modulo with offset</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=8" title="Edit section: Modulo with offset"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Sometimes it is useful for the result of <span class="texhtml mvar" style="font-style:italic;">a</span> modulo <span class="texhtml mvar" style="font-style:italic;">n</span> to lie not between 0 and <span class="texhtml"><i>n</i> − 1</span>, but between some number <span class="texhtml mvar" style="font-style:italic;">d</span> and <span class="texhtml"><i>d</i> + <i>n</i> − 1</span>. In that case, <span class="texhtml mvar" style="font-style:italic;">d</span> is called an <i>offset</i> and <span class="texhtml"><i>d</i> = 1</span> is particularly common. </p><p>There does not seem to be a standard notation for this operation, so let us tentatively use <span class="texhtml"><i>a</i> mod<sub><i>d</i></sub> <i>n</i></span>. We thus have the following definition:<sup id="cite_ref-Mathematica_Mod_66-0" class="reference"><a href="#cite_note-Mathematica_Mod-66"><span class="cite-bracket">&#91;</span>60<span class="cite-bracket">&#93;</span></a></sup> <span class="texhtml"><i>x</i> = <i>a</i> mod<sub><i>d</i></sub> <i>n</i></span> just in case <span class="texhtml"><i>d</i> ≤ <i>x</i> ≤ <i>d</i> + <i>n</i> − 1</span> and <span class="texhtml"><i>x</i> mod <i>n</i> = <i>a</i> mod <i>n</i></span>. Clearly, the usual modulo operation corresponds to zero offset: <span class="texhtml"><i>a</i> mod <i>n</i> = <i>a</i> mod<sub>0</sub> <i>n</i></span>. </p><p>The operation of modulo with offset is related to the <a href="/wiki/Floor_and_ceiling_functions" title="Floor and ceiling functions">floor function</a> as follows: </p> <dl><dd><dl><dd><span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle a\operatorname {mod} _{d}n=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor .}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>a</mi> <msub> <mi>mod</mi> <mrow class="MJX-TeXAtom-ORD"> <mi>d</mi> </mrow> </msub> <mo>&#x2061;<!-- ⁡ --></mo> <mi>n</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>d</mi> </mrow> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> <mo>.</mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle a\operatorname {mod} _{d}n=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor .}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/2295c23019fdd9ab8984f08bc8919006923080fd" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -2.505ex; width:27.699ex; height:6.176ex;" alt="{\displaystyle a\operatorname {mod} _{d}n=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor .}"></span></dd></dl></dd></dl> <p>To see this, let <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle x=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mi>x</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>d</mi> </mrow> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle x=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/cecb12b97c06c7fec21b9f083c9922f75b323b3f" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:16.579ex; height:4.843ex;" alt="{\textstyle x=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor }"></span>. We first show that <span class="texhtml"><i>x</i> mod <i>n</i> = <i>a</i> mod <i>n</i></span>. It is in general true that <span class="texhtml">(<i>a</i> + <i>bn</i>) mod <i>n</i> = <i>a</i> mod <i>n</i></span> for all integers <span class="texhtml mvar" style="font-style:italic;">b</span>; thus, this is true also in the particular case when <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle b=-\!\left\lfloor {\frac {a-d}{n}}\right\rfloor }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mi>b</mi> <mo>=</mo> <mo>&#x2212;<!-- − --></mo> <mspace width="negativethinmathspace" /> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>d</mi> </mrow> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle b=-\!\left\lfloor {\frac {a-d}{n}}\right\rfloor }</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/5cf3e6789718c0a36c6b0aae5dbe04b93f08f941" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:12.203ex; height:4.843ex;" alt="{\textstyle b=-\!\left\lfloor {\frac {a-d}{n}}\right\rfloor }"></span>; but that means that <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle x{\bmod {n}}=\left(a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor \right)\!{\bmod {n}}=a{\bmod {n}}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mi>x</mi> <mrow class="MJX-TeXAtom-ORD"> <mo lspace="thickmathspace" rspace="thickmathspace">mod</mo> <mrow class="MJX-TeXAtom-ORD"> <mi>n</mi> </mrow> </mrow> <mo>=</mo> <mrow> <mo>(</mo> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>d</mi> </mrow> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> </mrow> <mo>)</mo> </mrow> <mspace width="negativethinmathspace" /> <mrow class="MJX-TeXAtom-ORD"> <mo lspace="thickmathspace" rspace="thickmathspace">mod</mo> <mrow class="MJX-TeXAtom-ORD"> <mi>n</mi> </mrow> </mrow> <mo>=</mo> <mi>a</mi> <mrow class="MJX-TeXAtom-ORD"> <mo lspace="thickmathspace" rspace="thickmathspace">mod</mo> <mrow class="MJX-TeXAtom-ORD"> <mi>n</mi> </mrow> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle x{\bmod {n}}=\left(a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor \right)\!{\bmod {n}}=a{\bmod {n}}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/55dbae6aaf1928432910a9a06191e870c3cf228c" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:44.911ex; height:4.843ex;" alt="{\textstyle x{\bmod {n}}=\left(a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor \right)\!{\bmod {n}}=a{\bmod {n}}}"></span>, which is what we wanted to prove. It remains to be shown that <span class="texhtml"><i>d</i> ≤ <i>x</i> ≤ <i>d</i> + <i>n</i> − 1</span>. Let <span class="texhtml mvar" style="font-style:italic;">k</span> and <span class="texhtml mvar" style="font-style:italic;">r</span> be the integers such that <span class="texhtml"><i>a</i> − <i>d</i> = <i>kn</i> + <i>r</i></span> with <span class="texhtml">0 ≤ <i>r</i> ≤ <i>n</i> − 1</span> (see <a href="/wiki/Euclidean_division" title="Euclidean division">Euclidean division</a>). Then <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle \left\lfloor {\frac {a-d}{n}}\right\rfloor =k}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>d</mi> </mrow> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> <mo>=</mo> <mi>k</mi> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle \left\lfloor {\frac {a-d}{n}}\right\rfloor =k}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/c7588602c0a11bb9742f4c6edf3c740a1b55dd0f" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:10.609ex; height:4.843ex;" alt="{\textstyle \left\lfloor {\frac {a-d}{n}}\right\rfloor =k}"></span>, thus <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle x=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor =a-nk=d+r}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mi>x</mi> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mrow> <mo>&#x230A;</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>d</mi> </mrow> <mi>n</mi> </mfrac> </mrow> <mo>&#x230B;</mo> </mrow> <mo>=</mo> <mi>a</mi> <mo>&#x2212;<!-- − --></mo> <mi>n</mi> <mi>k</mi> <mo>=</mo> <mi>d</mi> <mo>+</mo> <mi>r</mi> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle x=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor =a-nk=d+r}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/1d428438128efb6d26627bf91adfaeca82b1a743" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.838ex; width:34.557ex; height:4.843ex;" alt="{\textstyle x=a-n\left\lfloor {\frac {a-d}{n}}\right\rfloor =a-nk=d+r}"></span>. Now take <span class="texhtml">0 ≤ <i>r</i> ≤ <i>n</i> − 1</span> and add <span class="texhtml mvar" style="font-style:italic;">d</span> to both sides, obtaining <span class="texhtml"><i>d</i> ≤ <i>d</i> + <i>r</i> ≤ <i>d</i> + <i>n</i> − 1</span>. But we've seen that <span class="texhtml"><i>x</i> = <i>d</i> + <i>r</i></span>, so we are done. </p><p>The modulo with offset <span class="texhtml"><i>a</i> mod<sub><i>d</i></sub> <i>n</i></span> is implemented in <a href="/wiki/Mathematica" class="mw-redirect" title="Mathematica">Mathematica</a> as <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Mod[a, n, d]</code>&#8201;.<sup id="cite_ref-Mathematica_Mod_66-1" class="reference"><a href="#cite_note-Mathematica_Mod-66"><span class="cite-bracket">&#91;</span>60<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Implementing_other_modulo_definitions_using_truncation">Implementing other modulo definitions using truncation</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=9" title="Edit section: Implementing other modulo definitions using truncation"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Despite the mathematical elegance of Knuth's floored division and Euclidean division, it is generally much more common to find a truncated division-based modulo in programming languages. Leijen provides the following algorithms for calculating the two divisions given a truncated integer division:<sup id="cite_ref-Leijen_6-1" class="reference"><a href="#cite_note-Leijen-6"><span class="cite-bracket">&#91;</span>5<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><pre><span></span><span class="cm">/* Euclidean and Floored divmod, in the style of C&#39;s ldiv() */</span> <span class="k">typedef</span><span class="w"> </span><span class="k">struct</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="cm">/* This structure is part of the C stdlib.h, but is reproduced here for clarity */</span> <span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">quot</span><span class="p">;</span> <span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">rem</span><span class="p">;</span> <span class="p">}</span><span class="w"> </span><span class="kt">ldiv_t</span><span class="p">;</span> <span class="cm">/* Euclidean division */</span> <span class="kr">inline</span><span class="w"> </span><span class="kt">ldiv_t</span><span class="w"> </span><span class="nf">ldivE</span><span class="p">(</span><span class="kt">long</span><span class="w"> </span><span class="n">numer</span><span class="p">,</span><span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">denom</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="cm">/* The C99 and C++11 languages define both of these as truncating. */</span> <span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">numer</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">numer</span><span class="w"> </span><span class="o">%</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">r</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">denom</span><span class="w"> </span><span class="o">&gt;</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span> <span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span> <span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="p">}</span> <span class="w"> </span><span class="p">}</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="p">(</span><span class="kt">ldiv_t</span><span class="p">){.</span><span class="n">quot</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">q</span><span class="p">,</span><span class="w"> </span><span class="p">.</span><span class="n">rem</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">r</span><span class="p">};</span> <span class="p">}</span> <span class="cm">/* Floored division */</span> <span class="kr">inline</span><span class="w"> </span><span class="kt">ldiv_t</span><span class="w"> </span><span class="nf">ldivF</span><span class="p">(</span><span class="kt">long</span><span class="w"> </span><span class="n">numer</span><span class="p">,</span><span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">denom</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">numer</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">numer</span><span class="w"> </span><span class="o">%</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">((</span><span class="n">r</span><span class="w"> </span><span class="o">&gt;</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">denom</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="p">(</span><span class="n">r</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">denom</span><span class="w"> </span><span class="o">&gt;</span><span class="w"> </span><span class="mi">0</span><span class="p">))</span><span class="w"> </span><span class="p">{</span> <span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span> <span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">r</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">denom</span><span class="p">;</span> <span class="w"> </span><span class="p">}</span> <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="p">(</span><span class="kt">ldiv_t</span><span class="p">){.</span><span class="n">quot</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">q</span><span class="p">,</span><span class="w"> </span><span class="p">.</span><span class="n">rem</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">r</span><span class="p">};</span> <span class="p">}</span> </pre></div> <p>For both cases, the remainder can be calculated independently of the quotient, but not vice versa. The operations are combined here to save screen space, as the logical branches are the same. </p> <div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=10" title="Edit section: See also"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Modulo_(disambiguation)" class="mw-disambig" title="Modulo (disambiguation)">Modulo (disambiguation)</a> – many uses of the word <i>modulo</i>, all of which grew out of <a href="/wiki/Carl_F._Gauss" class="mw-redirect" title="Carl F. Gauss">Carl F. Gauss</a>' approach to <i><a href="/wiki/Modular_arithmetic" title="Modular arithmetic">modular arithmetic</a></i> in 1801.</li> <li><a href="/wiki/Modulo_(mathematics)" title="Modulo (mathematics)">Modulo (mathematics)</a>, general use of the term in mathematics</li> <li><a href="/wiki/Modular_exponentiation" title="Modular exponentiation">Modular exponentiation</a></li> <li><a href="/wiki/Turn_(angle)" title="Turn (angle)">Turn (angle)</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Notes">Notes</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=11" title="Edit section: Notes"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist reflist-lower-alpha"> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text">Mathematically, these two choices are but two of the infinite number of choices available for <a href="/wiki/Remainder" title="Remainder">the inequality satisfied by a remainder</a>.</span> </li> <li id="cite_note-rev-10"><span class="mw-cite-backlink">^ <a href="#cite_ref-rev_10-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-rev_10-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">Argument order reverses, i.e., <code>α|ω</code> computes <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \omega {\bmod {\alpha }}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mi>&#x03C9;<!-- ω --></mi> <mrow class="MJX-TeXAtom-ORD"> <mo lspace="thickmathspace" rspace="thickmathspace">mod</mo> <mrow class="MJX-TeXAtom-ORD"> <mi>&#x03B1;<!-- α --></mi> </mrow> </mrow> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \omega {\bmod {\alpha }}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/43850a0844eb494d3a6100bc0c24e84277614ac0" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:8.615ex; height:2.176ex;" alt="{\displaystyle \omega {\bmod {\alpha }}}"></span>, the remainder when dividing <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">ω</code> by <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">α</code>.</span> </li> <li id="cite_note-c-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-c_13-0">^</a></b></span> <span class="reference-text"><a href="/wiki/C99" title="C99">C99</a> and <a href="/wiki/C%2B%2B11" title="C++11">C++11</a> define the behavior of <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%</code> to be truncated.<sup id="cite_ref-C99_11-0" class="reference"><a href="#cite_note-C99-11"><span class="cite-bracket">&#91;</span>9<span class="cite-bracket">&#93;</span></a></sup> The standards before then leave the behavior implementation-defined.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup></span> </li> <li id="cite_note-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-46">^</a></b></span> <span class="reference-text">Divisor must be positive, otherwise undefined.</span> </li> <li id="cite_note-49"><span class="mw-cite-backlink"><b><a href="#cite_ref-49">^</a></b></span> <span class="reference-text">As discussed by Boute, ISO Pascal's definitions of <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">div</code> and <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">mod</code> do not obey the Division Identity of <span class="texhtml"><i>D</i> = <i>d</i> · (<i>D</i> / <i>d</i>) + <i>D</i>&#160;% <i>d</i></span>, and are thus fundamentally broken.</span> </li> <li id="cite_note-51"><span class="mw-cite-backlink"><b><a href="#cite_ref-51">^</a></b></span> <span class="reference-text">Perl usually uses arithmetic modulo operator that is machine-independent. For examples and exceptions, see the Perl documentation on multiplicative operators.<sup id="cite_ref-50" class="reference"><a href="#cite_note-50"><span class="cite-bracket">&#91;</span>45<span class="cite-bracket">&#93;</span></a></sup></span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=12" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239543626"><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite id="CITEREFWeisstein" class="citation web cs1">Weisstein, Eric W. <a rel="nofollow" class="external text" href="https://mathworld.wolfram.com/Congruence.html">"Congruence"</a>. <i>Wolfram MathWorld</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-08-27</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Wolfram+MathWorld&amp;rft.atitle=Congruence&amp;rft.aulast=Weisstein&amp;rft.aufirst=Eric+W.&amp;rft_id=https%3A%2F%2Fmathworld.wolfram.com%2FCongruence.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFCaldwell" class="citation web cs1">Caldwell, Chris. <a rel="nofollow" class="external text" href="https://primes.utm.edu/glossary/page.php?sort=Residue">"residue"</a>. <i>Prime Glossary</i><span class="reference-accessdate">. Retrieved <span class="nowrap">August 27,</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Prime+Glossary&amp;rft.atitle=residue&amp;rft.aulast=Caldwell&amp;rft.aufirst=Chris&amp;rft_id=https%3A%2F%2Fprimes.utm.edu%2Fglossary%2Fpage.php%3Fsort%3DResidue&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFKnuth1972" class="citation book cs1">Knuth, Donald. E. (1972). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/artofcomputerpro0003knut"><i>The Art of Computer Programming</i></a></span>. Addison-Wesley.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=The+Art+of+Computer+Programming&amp;rft.pub=Addison-Wesley&amp;rft.date=1972&amp;rft.aulast=Knuth&amp;rft.aufirst=Donald.+E.&amp;rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fartofcomputerpro0003knut&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFBoute1992" class="citation journal cs1">Boute, Raymond T. (April 1992). <a rel="nofollow" class="external text" href="http://portal.acm.org/citation.cfm?id=128862&amp;coll=portal&amp;dl=ACM">"The Euclidean definition of the functions div and mod"</a>. <i>ACM Transactions on Programming Languages and Systems</i>. <b>14</b> (2). ACM Press (New York, NY, USA): <span class="nowrap">127–</span>144. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F128861.128862">10.1145/128861.128862</a>. <a href="/wiki/Hdl_(identifier)" class="mw-redirect" title="Hdl (identifier)">hdl</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://hdl.handle.net/1854%2FLU-314490">1854/LU-314490</a></span>. <a href="/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&#160;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:8321674">8321674</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=ACM+Transactions+on+Programming+Languages+and+Systems&amp;rft.atitle=The+Euclidean+definition+of+the+functions+div+and+mod&amp;rft.volume=14&amp;rft.issue=2&amp;rft.pages=%3Cspan+class%3D%22nowrap%22%3E127-%3C%2Fspan%3E144&amp;rft.date=1992-04&amp;rft_id=info%3Ahdl%2F1854%2FLU-314490&amp;rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A8321674%23id-name%3DS2CID&amp;rft_id=info%3Adoi%2F10.1145%2F128861.128862&amp;rft.aulast=Boute&amp;rft.aufirst=Raymond+T.&amp;rft_id=http%3A%2F%2Fportal.acm.org%2Fcitation.cfm%3Fid%3D128862%26coll%3Dportal%26dl%3DACM&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-Leijen-6"><span class="mw-cite-backlink">^ <a href="#cite_ref-Leijen_6-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Leijen_6-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFLeijen2001" class="citation web cs1">Leijen, Daan (December 3, 2001). <a rel="nofollow" class="external text" href="https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/divmodnote-letter.pdf">"Division and Modulus for Computer Scientists"</a> <span class="cs1-format">(PDF)</span>. <i><a href="/wiki/Microsoft" title="Microsoft">Microsoft</a></i><span class="reference-accessdate">. Retrieved <span class="nowrap">2014-12-25</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Microsoft&amp;rft.atitle=Division+and+Modulus+for+Computer+Scientists&amp;rft.date=2001-12-03&amp;rft.aulast=Leijen&amp;rft.aufirst=Daan&amp;rft_id=https%3A%2F%2Fwww.microsoft.com%2Fen-us%2Fresearch%2Fwp-content%2Fuploads%2F2016%2F02%2Fdivmodnote-letter.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFPeterson2001" class="citation web cs1">Peterson, Doctor (5 July 2001). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20191022160922/http://mathforum.org/library/drmath/view/52343.html">"Mod Function and Negative Numbers"</a>. <i>Math Forum - Ask Dr. Math</i>. Archived from <a rel="nofollow" class="external text" href="http://mathforum.org/library/drmath/view/52343.html">the original</a> on 2019-10-22<span class="reference-accessdate">. Retrieved <span class="nowrap">22 October</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Math+Forum+-+Ask+Dr.+Math&amp;rft.atitle=Mod+Function+and+Negative+Numbers&amp;rft.date=2001-07-05&amp;rft.aulast=Peterson&amp;rft.aufirst=Doctor&amp;rft_id=http%3A%2F%2Fmathforum.org%2Flibrary%2Fdrmath%2Fview%2F52343.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFHorvath2012" class="citation web cs1">Horvath, Adam (July 5, 2012). <a rel="nofollow" class="external text" href="http://blog.teamleadnet.com/2012/07/faster-division-and-modulo-operation.html">"Faster division and modulo operation - the power of two"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Faster+division+and+modulo+operation+-+the+power+of+two&amp;rft.date=2012-07-05&amp;rft.aulast=Horvath&amp;rft.aufirst=Adam&amp;rft_id=http%3A%2F%2Fblog.teamleadnet.com%2F2012%2F07%2Ffaster-division-and-modulo-operation.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-Ada-9"><span class="mw-cite-backlink">^ <a href="#cite_ref-Ada_9-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Ada_9-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><i>ISO/IEC 8652:2012 - Information technology — Programming languages — Ada</i>. <a href="/wiki/International_Organization_for_Standardization" title="International Organization for Standardization">ISO</a>, <a href="/wiki/International_Electrotechnical_Commission" title="International Electrotechnical Commission">IEC</a>. 2012. sec. 4.5.5 Multiplying Operators.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=ISO%2FIEC+8652%3A2012+-+Information+technology+%E2%80%94+Programming+languages+%E2%80%94+Ada&amp;rft.pages=sec.+4.5.5+Multiplying+Operators&amp;rft.pub=ISO%2C+IEC&amp;rft.date=2012&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-C99-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-C99_11-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf">"C99 specification (ISO/IEC 9899:TC2)"</a> <span class="cs1-format">(PDF)</span>. 2005-05-06. sec. 6.5.5 Multiplicative operators<span class="reference-accessdate">. Retrieved <span class="nowrap">16 August</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=C99+specification+%28ISO%2FIEC+9899%3ATC2%29&amp;rft.pages=sec.+6.5.5+Multiplicative+operators&amp;rft.date=2005-05-06&amp;rft_id=http%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg14%2Fwww%2Fdocs%2Fn1124.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><i>ISO/IEC 14882:2003: Programming languages – C++</i>. <a href="/wiki/International_Organization_for_Standardization" title="International Organization for Standardization">International Organization for Standardization</a> (ISO), <a href="/wiki/International_Electrotechnical_Commission" title="International Electrotechnical Commission">International Electrotechnical Commission</a> (IEC). 2003. sec. 5.6.4. <q>the binary&#160;% operator yields the remainder from the division of the first expression by the second. .... If both operands are nonnegative then the remainder is nonnegative; if not, the sign of the remainder is implementation-defined</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=ISO%2FIEC+14882%3A2003%3A+Programming+languages+%E2%80%93+C%2B%2B&amp;rft.pages=sec.+5.6.4&amp;rft.pub=International+Organization+for+Standardization+%28ISO%29%2C+International+Electrotechnical+Commission+%28IEC%29&amp;rft.date=2003&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><i>ISO/IEC 9899:1990: Programming languages – C</i>. <a href="/wiki/International_Organization_for_Standardization" title="International Organization for Standardization">ISO</a>, <a href="/wiki/International_Electrotechnical_Commission" title="International Electrotechnical Commission">IEC</a>. 1990. sec. 7.5.6.4. <q>The <span class="texhtml">fmod</span> function returns the value <span class="texhtml">x - i * y</span>, for some integer <span class="texhtml">i</span> such that, if <span class="texhtml">y</span> is nonzero, the result has the same sign as <span class="texhtml">x</span> and magnitude less than the magnitude of <span class="texhtml">y</span>.</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=ISO%2FIEC+9899%3A1990%3A+Programming+languages+%E2%80%93+C&amp;rft.pages=sec.+7.5.6.4&amp;rft.pub=ISO%2C+IEC&amp;rft.date=1990&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-.NET-15"><span class="mw-cite-backlink">^ <a href="#cite_ref-.NET_15-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-.NET_15-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFdotnet-bot" class="citation web cs1">dotnet-bot. <a rel="nofollow" class="external text" href="https://learn.microsoft.com/en-us/dotnet/api/system.math.ieeeremainder?view=net-7.0">"Math.IEEERemainder(Double, Double) Method (System)"</a>. <i>Microsoft Learn</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-10-04</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Microsoft+Learn&amp;rft.atitle=Math.IEEERemainder%28Double%2C+Double%29+Method+%28System%29&amp;rft.au=dotnet-bot&amp;rft_id=https%3A%2F%2Flearn.microsoft.com%2Fen-us%2Fdotnet%2Fapi%2Fsystem.math.ieeeremainder%3Fview%3Dnet-7.0&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://clojure.github.io/clojure/clojure.core-api.html#clojure.core/mod">"clojure.core - Clojure v1.10.3 API documentation"</a>. <i>clojure.github.io</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-16</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=clojure.github.io&amp;rft.atitle=clojure.core+-+Clojure+v1.10.3+API+documentation&amp;rft_id=https%3A%2F%2Fclojure.github.io%2Fclojure%2Fclojure.core-api.html%23clojure.core%2Fmod&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://clojure.github.io/clojure/clojure.core-api.html#clojure.core/rem">"clojure.core - Clojure v1.10.3 API documentation"</a>. <i>clojure.github.io</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-16</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=clojure.github.io&amp;rft.atitle=clojure.core+-+Clojure+v1.10.3+API+documentation&amp;rft_id=https%3A%2F%2Fclojure.github.io%2Fclojure%2Fclojure.core-api.html%23clojure.core%2Frem&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-isocobol-18"><span class="mw-cite-backlink">^ <a href="#cite_ref-isocobol_18-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-isocobol_18-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFISO/IEC_JTC_1/SC_22/WG_42023" class="citation book cs1">ISO/IEC JTC 1/SC 22/WG 4 (January 2023). <span class="id-lock-subscription" title="Paid subscription required"><a rel="nofollow" class="external text" href="https://www.iso.org/standard/74527.html"><i>ISO/IEC 1989:2023 – Programming language COBOL</i></a></span>. <a href="/wiki/ISO" class="mw-redirect" title="ISO">ISO</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=ISO%2FIEC+1989%3A2023+%E2%80%93+Programming+language+COBOL&amp;rft.pub=ISO&amp;rft.date=2023-01&amp;rft.au=ISO%2FIEC+JTC+1%2FSC+22%2FWG+4&amp;rft_id=https%3A%2F%2Fwww.iso.org%2Fstandard%2F74527.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span><span class="cs1-maint citation-comment"><code class="cs1-code">{{<a href="/wiki/Template:Cite_book" title="Template:Cite book">cite book</a>}}</code>: CS1 maint: numeric names: authors list (<a href="/wiki/Category:CS1_maint:_numeric_names:_authors_list" title="Category:CS1 maint: numeric names: authors list">link</a>)</span></span> </li> <li id="cite_note-CoffeeScript-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-CoffeeScript_19-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://coffeescript.org/#operators">CoffeeScript operators</a></span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFISO/IEC_JTC_1/SC_222012" class="citation book cs1">ISO/IEC JTC 1/SC 22 (February 2012). <a rel="nofollow" class="external text" href="https://www.iso.org/standard/58046.html"><i>ISO/IEC 23271:2012 — Information technology — Common Language Infrastructure (CLI)</i></a>. <a href="/wiki/ISO" class="mw-redirect" title="ISO">ISO</a>. §§ III.3.55–56.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=ISO%2FIEC+23271%3A2012+%E2%80%94+Information+technology+%E2%80%94+Common+Language+Infrastructure+%28CLI%29&amp;rft.pages=%C2%A7%C2%A7+III.3.55-56&amp;rft.pub=ISO&amp;rft.date=2012-02&amp;rft.au=ISO%2FIEC+JTC+1%2FSC+22&amp;rft_id=https%3A%2F%2Fwww.iso.org%2Fstandard%2F58046.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span><span class="cs1-maint citation-comment"><code class="cs1-code">{{<a href="/wiki/Template:Cite_book" title="Template:Cite book">cite book</a>}}</code>: CS1 maint: numeric names: authors list (<a href="/wiki/Category:CS1_maint:_numeric_names:_authors_list" title="Category:CS1 maint: numeric names: authors list">link</a>)</span></span> </li> <li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.mozilla.org/en-US/docs/Web/CSS/mod">"mod() - CSS: Cascading Style Sheets | MDN"</a>. <i>developer.mozilla.org</i>. 2024-06-22<span class="reference-accessdate">. Retrieved <span class="nowrap">2024-10-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=developer.mozilla.org&amp;rft.atitle=mod%28%29+-+CSS%3A+Cascading+Style+Sheets+%7C+MDN&amp;rft.date=2024-06-22&amp;rft_id=https%3A%2F%2Fdeveloper.mozilla.org%2Fen-US%2Fdocs%2FWeb%2FCSS%2Fmod&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.mozilla.org/en-US/docs/Web/CSS/rem">"rem() - CSS: Cascading Style Sheets | MDN"</a>. <i>developer.mozilla.org</i>. 2024-10-15<span class="reference-accessdate">. Retrieved <span class="nowrap">2024-10-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=developer.mozilla.org&amp;rft.atitle=rem%28%29+-+CSS%3A+Cascading+Style+Sheets+%7C+MDN&amp;rft.date=2024-10-15&amp;rft_id=https%3A%2F%2Fdeveloper.mozilla.org%2Fen-US%2Fdocs%2FWeb%2FCSS%2Frem&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://dlang.org/spec/expression.html#mul_expressions">"Expressions - D Programming Language"</a>. <i>dlang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-06-01</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=dlang.org&amp;rft.atitle=Expressions+-+D+Programming+Language&amp;rft_id=https%3A%2F%2Fdlang.org%2Fspec%2Fexpression.html%23mul_expressions&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://api.dart.dev/stable/2.13.1/dart-core/num/operator_modulo.html">"operator&#160;% method - num class - dart:core library - Dart API"</a>. <i>api.dart.dev</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-06-01</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=api.dart.dev&amp;rft.atitle=operator+%25+method+-+num+class+-+dart%3Acore+library+-+Dart+API&amp;rft_id=https%3A%2F%2Fapi.dart.dev%2Fstable%2F2.13.1%2Fdart-core%2Fnum%2Foperator_modulo.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://api.dart.dev/stable/2.13.1/dart-core/num/remainder.html">"remainder method - num class - dart:core library - Dart API"</a>. <i>api.dart.dev</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-06-01</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=api.dart.dev&amp;rft.atitle=remainder+method+-+num+class+-+dart%3Acore+library+-+Dart+API&amp;rft_id=https%3A%2F%2Fapi.dart.dev%2Fstable%2F2.13.1%2Fdart-core%2Fnum%2Fremainder.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://hexdocs.pm/elixir/Kernel.html#rem/2">"Kernel — Elixir v1.11.3"</a>. <i>hexdocs.pm</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-01-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=hexdocs.pm&amp;rft.atitle=Kernel+%E2%80%94+Elixir+v1.11.3&amp;rft_id=https%3A%2F%2Fhexdocs.pm%2Felixir%2FKernel.html%23rem%2F2&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://hexdocs.pm/elixir/Integer.html#mod/2">"Integer — Elixir v1.11.3"</a>. <i>hexdocs.pm</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-01-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=hexdocs.pm&amp;rft.atitle=Integer+%E2%80%94+Elixir+v1.11.3&amp;rft_id=https%3A%2F%2Fhexdocs.pm%2Felixir%2FInteger.html%23mod%2F2&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://package.elm-lang.org/packages/elm/core/latest/Basics#modBy">"Basics - core 1.0.5"</a>. <i>package.elm-lang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-16</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=package.elm-lang.org&amp;rft.atitle=Basics+-+core+1.0.5&amp;rft_id=https%3A%2F%2Fpackage.elm-lang.org%2Fpackages%2Felm%2Fcore%2Flatest%2FBasics%23modBy&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-29">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://package.elm-lang.org/packages/elm/core/latest/Basics#remainderBy">"Basics - core 1.0.5"</a>. <i>package.elm-lang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-16</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=package.elm-lang.org&amp;rft.atitle=Basics+-+core+1.0.5&amp;rft_id=https%3A%2F%2Fpackage.elm-lang.org%2Fpackages%2Felm%2Fcore%2Flatest%2FBasics%23remainderBy&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-30">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://erlang.org/doc/man/math.html#fmod-2">"Erlang -- math"</a>. <i>erlang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-06-01</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=erlang.org&amp;rft.atitle=Erlang+--+math&amp;rft_id=https%3A%2F%2Ferlang.org%2Fdoc%2Fman%2Fmath.html%23fmod-2&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFANSI1987" class="citation book cs1"><a href="/wiki/ANSI" class="mw-redirect" title="ANSI">ANSI</a> (28 January 1987). <a rel="nofollow" class="external text" href="https://archive.org/details/federalinformat6821nati_0"><i>Programming Languages — Full BASIC</i></a>. New York: American National Standards Institute. § 5.4.4. <q>X modulo Y, i.e., X-Y*INT(X/Y).</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Programming+Languages+%E2%80%94+Full+BASIC&amp;rft.place=New+York&amp;rft.pages=%C2%A7+5.4.4&amp;rft.pub=American+National+Standards+Institute&amp;rft.date=1987-01-28&amp;rft.au=ANSI&amp;rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Ffederalinformat6821nati_0&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFANSI1987" class="citation book cs1"><a href="/wiki/ANSI" class="mw-redirect" title="ANSI">ANSI</a> (28 January 1987). <a rel="nofollow" class="external text" href="https://archive.org/details/federalinformat6821nati_0"><i>Programming Languages — Full BASIC</i></a>. New York: American National Standards Institute. § 5.4.4. <q>The remainder function, i.e., X-Y*IP(X/Y).</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Programming+Languages+%E2%80%94+Full+BASIC&amp;rft.place=New+York&amp;rft.pages=%C2%A7+5.4.4&amp;rft.pub=American+National+Standards+Institute&amp;rft.date=1987-01-28&amp;rft.au=ANSI&amp;rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Ffederalinformat6821nati_0&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.khronos.org/registry/OpenGL/specs/gl/GLSLangSpec.4.50.pdf">"GLSL Language Specification, Version 4.50.7"</a> <span class="cs1-format">(PDF)</span>. section 5.9 Expressions. <q>If both operands are non-negative, then the remainder is non-negative. Results are undefined if one or both operands are negative.</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=GLSL+Language+Specification%2C+Version+4.50.7&amp;rft.pages=section+5.9+Expressions&amp;rft_id=https%3A%2F%2Fwww.khronos.org%2Fregistry%2FOpenGL%2Fspecs%2Fgl%2FGLSLangSpec.4.50.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.khronos.org/registry/OpenGL/specs/gl/GLSLangSpec.4.50.pdf">"GLSL Language Specification, Version 4.50.7"</a> <span class="cs1-format">(PDF)</span>. section 8.3 Common Functions.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=GLSL+Language+Specification%2C+Version+4.50.7&amp;rft.pages=section+8.3+Common+Functions&amp;rft_id=https%3A%2F%2Fwww.khronos.org%2Fregistry%2FOpenGL%2Fspecs%2Fgl%2FGLSLangSpec.4.50.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://go.dev/ref/spec#Integer_operators">"The Go Programming Language Specification - The Go Programming Language"</a>. <i>go.dev</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-02-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=go.dev&amp;rft.atitle=The+Go+Programming+Language+Specification+-+The+Go+Programming+Language&amp;rft_id=https%3A%2F%2Fgo.dev%2Fref%2Fspec%23Integer_operators&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pkg.go.dev/math#Mod">"math package - math - pkg.go.dev"</a>. <i>pkg.go.dev</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-02-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=pkg.go.dev&amp;rft.atitle=math+package+-+math+-+pkg.go.dev&amp;rft_id=https%3A%2F%2Fpkg.go.dev%2Fmath%23Mod&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pkg.go.dev/math/big#Int.Mod">"big package - math/big - pkg.go.dev"</a>. <i>pkg.go.dev</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-02-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=pkg.go.dev&amp;rft.atitle=big+package+-+math%2Fbig+-+pkg.go.dev&amp;rft_id=https%3A%2F%2Fpkg.go.dev%2Fmath%2Fbig%23Int.Mod&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pkg.go.dev/math/big#Int.Rem">"big package - math/big - pkg.go.dev"</a>. <i>pkg.go.dev</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2024-04-12</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=pkg.go.dev&amp;rft.atitle=big+package+-+math%2Fbig+-+pkg.go.dev&amp;rft_id=https%3A%2F%2Fpkg.go.dev%2Fmath%2Fbig%23Int.Rem&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-Haskell_2010-39"><span class="mw-cite-backlink">^ <a href="#cite_ref-Haskell_2010_39-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Haskell_2010_39-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.haskell.org/onlinereport/haskell2010/haskellch6.html#x13-1370006.4.2">"6 Predefined Types and Classes"</a>. <i>www.haskell.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-05-22</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.haskell.org&amp;rft.atitle=6+Predefined+Types+and+Classes&amp;rft_id=https%3A%2F%2Fwww.haskell.org%2Fonlinereport%2Fhaskell2010%2Fhaskellch6.html%23x13-1370006.4.2&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-40">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-operators#additive-and-multiplicative-operators">"Operators"</a>. <a href="/wiki/Microsoft" title="Microsoft">Microsoft</a>. 30 June 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-07-19</span></span>. <q>The&#160;% operator is defined only in cases where either both sides are positive or both sides are negative. Unlike C, it also operates on floating-point data types, as well as integers.</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Operators&amp;rft.pub=Microsoft&amp;rft.date=2021-06-30&amp;rft_id=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fwin32%2Fdirect3dhlsl%2Fdx-graphics-hlsl-operators%23additive-and-multiplicative-operators&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-41">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.julialang.org/en/v1/base/math/#Base.mod">"Mathematics · The Julia Language"</a>. <i>docs.julialang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=docs.julialang.org&amp;rft.atitle=Mathematics+%C2%B7+The+Julia+Language&amp;rft_id=https%3A%2F%2Fdocs.julialang.org%2Fen%2Fv1%2Fbase%2Fmath%2F%23Base.mod&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-42">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.julialang.org/en/v1/base/math/#Base.rem">"Mathematics · The Julia Language"</a>. <i>docs.julialang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=docs.julialang.org&amp;rft.atitle=Mathematics+%C2%B7+The+Julia+Language&amp;rft_id=https%3A%2F%2Fdocs.julialang.org%2Fen%2Fv1%2Fbase%2Fmath%2F%23Base.rem&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-43">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/rem.html">"rem - Kotlin Programming Language"</a>. <i>Kotlin</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-05-05</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin&amp;rft.atitle=rem+-+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fapi%2Flatest%2Fjvm%2Fstdlib%2Fkotlin%2F-int%2Frem.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-44">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/mod.html">"mod - Kotlin Programming Language"</a>. <i>Kotlin</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-05-05</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin&amp;rft.atitle=mod+-+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fapi%2Flatest%2Fjvm%2Fstdlib%2Fkotlin%2Fmod.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-45"><span class="mw-cite-backlink"><b><a href="#cite_ref-45">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://nasm.us/doc/nasmdoc3.html#section-3.5.11">"Chapter 3: The NASM Language"</a>. <i>NASM - The Netwide Assembler version 2.15.05</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=NASM+-+The+Netwide+Assembler+version+2.15.05&amp;rft.atitle=Chapter+3%3A+The+NASM+Language&amp;rft_id=https%3A%2F%2Fnasm.us%2Fdoc%2Fnasmdoc3.html%23section-3.5.11&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-47"><span class="mw-cite-backlink"><b><a href="#cite_ref-47">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://ocaml.org/releases/4.13/api/Stdlib.html#VAL(mod)">"OCaml library&#160;: Stdlib"</a>. <i>ocaml.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-02-19</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=ocaml.org&amp;rft.atitle=OCaml+library+%3A+Stdlib&amp;rft_id=https%3A%2F%2Focaml.org%2Freleases%2F4.13%2Fapi%2FStdlib.html%23VAL%28mod%29&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-48">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://ocaml.org/releases/4.13/api/Stdlib.html#VALmod_float">"OCaml library&#160;: Stdlib"</a>. <i>ocaml.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-02-19</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=ocaml.org&amp;rft.atitle=OCaml+library+%3A+Stdlib&amp;rft_id=https%3A%2F%2Focaml.org%2Freleases%2F4.13%2Fapi%2FStdlib.html%23VALmod_float&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-50">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://perldoc.perl.org/perlop.html#Multiplicative-Operators">Perl documentation</a></span> </li> <li id="cite_note-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-52">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.php.net/manual/en/language.operators.arithmetic.php">"PHP: Arithmetic Operators - Manual"</a>. <i>www.php.net</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.php.net&amp;rft.atitle=PHP%3A+Arithmetic+Operators+-+Manual&amp;rft_id=https%3A%2F%2Fwww.php.net%2Fmanual%2Fen%2Flanguage.operators.arithmetic.php&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-53"><span class="mw-cite-backlink"><b><a href="#cite_ref-53">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.php.net/manual/en/function.fmod.php">"PHP: fmod - Manual"</a>. <i>www.php.net</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.php.net&amp;rft.atitle=PHP%3A+fmod+-+Manual&amp;rft_id=https%3A%2F%2Fwww.php.net%2Fmanual%2Fen%2Ffunction.fmod.php&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-purescript_euclid-54"><span class="mw-cite-backlink"><b><a href="#cite_ref-purescript_euclid_54-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pursuit.purescript.org/packages/purescript-prelude/5.0.1/docs/Data.EuclideanRing#t:EuclideanRing">"EuclideanRing"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=EuclideanRing&amp;rft_id=https%3A%2F%2Fpursuit.purescript.org%2Fpackages%2Fpurescript-prelude%2F5.0.1%2Fdocs%2FData.EuclideanRing%23t%3AEuclideanRing&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-55"><span class="mw-cite-backlink"><b><a href="#cite_ref-55">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFQuantumWriter" class="citation web cs1">QuantumWriter. <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/quantum/quantum-qr-expressions?view=qsharp-preview#numeric-expressions">"Expressions"</a>. <i>docs.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2018-07-11</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=docs.microsoft.com&amp;rft.atitle=Expressions&amp;rft.au=QuantumWriter&amp;rft_id=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fquantum%2Fquantum-qr-expressions%3Fview%3Dqsharp-preview%23numeric-expressions&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-56">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://search.r-project.org/R/refmans/base/html/Arithmetic.html">"R: Arithmetic Operators"</a>. <i>search.r-project.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-12-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=search.r-project.org&amp;rft.atitle=R%3A+Arithmetic+Operators&amp;rft_id=https%3A%2F%2Fsearch.r-project.org%2FR%2Frefmans%2Fbase%2Fhtml%2FArithmetic.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-rust_rem_euclid-57"><span class="mw-cite-backlink"><b><a href="#cite_ref-rust_rem_euclid_57-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://doc.rust-lang.org/std/primitive.f32.html#method.rem_euclid">"F32 - Rust"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=F32+-+Rust&amp;rft_id=https%3A%2F%2Fdoc.rust-lang.org%2Fstd%2Fprimitive.f32.html%23method.rem_euclid&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-r6rs-58"><span class="mw-cite-backlink">^ <a href="#cite_ref-r6rs_58-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-r6rs_58-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-14.html#node_sec_11.7.3.1">r6rs.org</a></span> </li> <li id="cite_note-59"><span class="mw-cite-backlink"><b><a href="#cite_ref-59">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_04">"Shell Command Language"</a>. <i>pubs.opengroup.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-02-05</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=pubs.opengroup.org&amp;rft.atitle=Shell+Command+Language&amp;rft_id=https%3A%2F%2Fpubs.opengroup.org%2Fonlinepubs%2F9699919799%2Futilities%2FV3_chap02.html%23tag_18_06_04&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-60">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.soliditylang.org/en/v0.8.28/types.html">"Solidity Documentation"</a>. <i>docs.soliditylang.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2024-10-17</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=docs.soliditylang.org&amp;rft.atitle=Solidity+Documentation&amp;rft_id=https%3A%2F%2Fdocs.soliditylang.org%2Fen%2Fv0.8.28%2Ftypes.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-61"><span class="mw-cite-backlink"><b><a href="#cite_ref-61">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/documentation/swift/binaryinteger/2885003">"Apple Developer Documentation"</a>. <i>developer.apple.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=developer.apple.com&amp;rft.atitle=Apple+Developer+Documentation&amp;rft_id=https%3A%2F%2Fdeveloper.apple.com%2Fdocumentation%2Fswift%2Fbinaryinteger%2F2885003&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-62"><span class="mw-cite-backlink"><b><a href="#cite_ref-62">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/documentation/swift/floatingpoint/3017981-remainder">"Apple Developer Documentation"</a>. <i>developer.apple.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=developer.apple.com&amp;rft.atitle=Apple+Developer+Documentation&amp;rft_id=https%3A%2F%2Fdeveloper.apple.com%2Fdocumentation%2Fswift%2Ffloatingpoint%2F3017981-remainder&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-63"><span class="mw-cite-backlink"><b><a href="#cite_ref-63">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/documentation/swift/floatingpoint/3017995-truncatingremainder">"Apple Developer Documentation"</a>. <i>developer.apple.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-11-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=developer.apple.com&amp;rft.atitle=Apple+Developer+Documentation&amp;rft_id=https%3A%2F%2Fdeveloper.apple.com%2Fdocumentation%2Fswift%2Ffloatingpoint%2F3017995-truncatingremainder&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-wasmcs2-64"><span class="mw-cite-backlink">^ <a href="#cite_ref-wasmcs2_64-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-wasmcs2_64-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFRossberg2022" class="citation web cs1">Rossberg, Andreas, ed. (19 April 2022). <a rel="nofollow" class="external text" href="https://www.w3.org/TR/wasm-core-2/">"WebAssembly Core Specification: Version 2.0"</a>. <a href="/wiki/World_Wide_Web_Consortium" title="World Wide Web Consortium">World Wide Web Consortium</a>. § 4.3.2 Integer Operations.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=WebAssembly+Core+Specification%3A+Version+2.0&amp;rft.pages=%C2%A7+4.3.2+Integer+Operations&amp;rft.pub=World+Wide+Web+Consortium&amp;rft.date=2022-04-19&amp;rft_id=https%3A%2F%2Fwww.w3.org%2FTR%2Fwasm-core-2%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-65"><span class="mw-cite-backlink"><b><a href="#cite_ref-65">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://ziglang.org/documentation/0.10.0/#Table-of-Operators">"Zig Documentation"</a>. <i>Zig Programming Language</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-12-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Zig+Programming+Language&amp;rft.atitle=Zig+Documentation&amp;rft_id=https%3A%2F%2Fziglang.org%2Fdocumentation%2F0.10.0%2F%23Table-of-Operators&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> <li id="cite_note-Mathematica_Mod-66"><span class="mw-cite-backlink">^ <a href="#cite_ref-Mathematica_Mod_66-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Mathematica_Mod_66-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://reference.wolfram.com/language/ref/Mod.html">"Mod"</a>. <i>Wolfram Language &amp; System Documentation Center</i>. <a href="/wiki/Wolfram_Research" title="Wolfram Research">Wolfram Research</a>. 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">April 8,</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Wolfram+Language+%26+System+Documentation+Center&amp;rft.atitle=Mod&amp;rft.date=2020&amp;rft_id=https%3A%2F%2Freference.wolfram.com%2Flanguage%2Fref%2FMod.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3AModulo" class="Z3988"></span></span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Modulo&amp;action=edit&amp;section=13" title="Edit section: External links"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a rel="nofollow" class="external text" href="https://harry.garrood.me/blog/integer-division/">Different kinds of integer division</a></li> <li><a rel="nofollow" class="external text" href="http://www.rlefebvre.ca/modulorama.htm">Modulorama</a>, animation of a cyclic representation of multiplication tables (explanation in French)</li></ul> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐7777d9bc4f‐vmsx7 Cached time: 20250204083257 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.933 seconds Real time usage: 1.379 seconds Preprocessor visited node count: 13316/1000000 Post‐expand include size: 166891/2097152 bytes Template argument size: 10332/2097152 bytes Highest expansion depth: 12/100 Expensive parser function count: 240/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 232718/5000000 bytes Lua time usage: 0.399/10.000 seconds Lua memory usage: 6474463/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 1124.785 1 -total 32.01% 360.069 2 Template:Reflist 31.64% 355.839 232 Template:Code 22.91% 257.718 48 Template:Cite_web 8.24% 92.694 80 Template:Math 7.08% 79.661 2 Template:About 5.15% 57.912 1 Template:Short_description 4.18% 47.028 8 Template:Cite_book 3.55% 39.902 1 Template:NumBlk 3.00% 33.785 86 Template:Main_other --> <!-- Saved in parser cache with key enwiki:pcache:1352428:|#|:idhash:canonical and timestamp 20250204083257 and revision id 1271710337. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&amp;type=1x1&amp;usesul3=0" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=Modulo&amp;oldid=1271710337">https://en.wikipedia.org/w/index.php?title=Modulo&amp;oldid=1271710337</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:Computer_arithmetic" title="Category:Computer arithmetic">Computer arithmetic</a></li><li><a href="/wiki/Category:Operators_(programming)" title="Category:Operators (programming)">Operators (programming)</a></li><li><a href="/wiki/Category:Modular_arithmetic" title="Category:Modular arithmetic">Modular arithmetic</a></li><li><a href="/wiki/Category:Operations_on_numbers" title="Category:Operations on numbers">Operations on numbers</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:CS1_maint:_numeric_names:_authors_list" title="Category:CS1 maint: numeric names: authors list">CS1 maint: numeric names: authors list</a></li><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_matches_Wikidata" title="Category:Short description matches Wikidata">Short description matches Wikidata</a></li><li><a href="/wiki/Category:Articles_with_example_C%2B%2B_code" title="Category:Articles with example C++ code">Articles with example C++ code</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 25 January 2025, at 09:00<span class="anonymous-show">&#160;(UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=Modulo&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" lang="en" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><picture><source media="(min-width: 500px)" srcset="/w/resources/assets/poweredby_mediawiki.svg" width="88" height="31"><img src="/w/resources/assets/mediawiki_compact.svg" alt="Powered by MediaWiki" width="25" height="25" loading="lazy"></picture></a></li> </ul> </footer> </div> </div> </div> <div class="vector-header-container vector-sticky-header-container"> <div id="vector-sticky-header" class="vector-sticky-header"> <div class="vector-sticky-header-start"> <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true"> <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" tabindex="-1" data-event-name="ui.vector-sticky-search-form.icon"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </button> </div> <div role="search" class="vector-search-box-vue vector-search-box-show-thumbnail vector-search-box"> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail"> <form action="/w/index.php" id="vector-sticky-search-form" class="cdx-search-input cdx-search-input--has-end-button"> <div class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia"> <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <div class="vector-sticky-header-context-bar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc vector-button-flush-left" > <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-sticky-header-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div class="vector-sticky-header-context-bar-primary" aria-hidden="true" ><span class="mw-page-title-main">Modulo</span></div> </div> </div> <div class="vector-sticky-header-end" aria-hidden="true"> <div class="vector-sticky-header-icons"> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-talk-sticky-header" tabindex="-1" data-event-name="talk-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-subject-sticky-header" tabindex="-1" data-event-name="subject-sticky-header"><span class="vector-icon mw-ui-icon-article mw-ui-icon-wikimedia-article"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-history-sticky-header" tabindex="-1" data-event-name="history-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-history mw-ui-icon-wikimedia-wikimedia-history"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only mw-watchlink" id="ca-watchstar-sticky-header" tabindex="-1" data-event-name="watch-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-star mw-ui-icon-wikimedia-wikimedia-star"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-edit-sticky-header" tabindex="-1" data-event-name="wikitext-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-wikiText mw-ui-icon-wikimedia-wikimedia-wikiText"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-ve-edit-sticky-header" tabindex="-1" data-event-name="ve-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-edit mw-ui-icon-wikimedia-wikimedia-edit"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-viewsource-sticky-header" tabindex="-1" data-event-name="ve-edit-protected-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-editLock mw-ui-icon-wikimedia-wikimedia-editLock"></span> <span></span> </a> </div> <div class="vector-sticky-header-buttons"> <button class="cdx-button cdx-button--weight-quiet mw-interlanguage-selector" id="p-lang-btn-sticky-header" tabindex="-1" data-event-name="ui.dropdown-p-lang-btn-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-language mw-ui-icon-wikimedia-wikimedia-language"></span> <span>26 languages</span> </button> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive" id="ca-addsection-sticky-header" tabindex="-1" data-event-name="addsection-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbleAdd-progressive mw-ui-icon-wikimedia-speechBubbleAdd-progressive"></span> <span>Add topic</span> </a> </div> <div class="vector-sticky-header-icon-end"> <div class="vector-user-links"> </div> </div> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-b766959bd-9kwmb","wgBackendResponseTime":118,"wgPageParseReport":{"limitreport":{"cputime":"0.933","walltime":"1.379","ppvisitednodes":{"value":13316,"limit":1000000},"postexpandincludesize":{"value":166891,"limit":2097152},"templateargumentsize":{"value":10332,"limit":2097152},"expansiondepth":{"value":12,"limit":100},"expensivefunctioncount":{"value":240,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":232718,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 1124.785 1 -total"," 32.01% 360.069 2 Template:Reflist"," 31.64% 355.839 232 Template:Code"," 22.91% 257.718 48 Template:Cite_web"," 8.24% 92.694 80 Template:Math"," 7.08% 79.661 2 Template:About"," 5.15% 57.912 1 Template:Short_description"," 4.18% 47.028 8 Template:Cite_book"," 3.55% 39.902 1 Template:NumBlk"," 3.00% 33.785 86 Template:Main_other"]},"scribunto":{"limitreport-timeusage":{"value":"0.399","limit":"10.000"},"limitreport-memusage":{"value":6474463,"limit":52428800}},"cachereport":{"origin":"mw-web.codfw.main-7777d9bc4f-vmsx7","timestamp":"20250204083257","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Modulo","url":"https:\/\/en.wikipedia.org\/wiki\/Modulo","sameAs":"http:\/\/www.wikidata.org\/entity\/Q1799665","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q1799665","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2005-01-02T00:12:00Z","dateModified":"2025-01-25T09:00:56Z"}</script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10