logo

Modulo Operator (%) v C/C++ s primeri

V C ali C++ je modulni operator (znan tudi kot modulni operator) , označeno z %, je an aritmetični operator . Operator deljenja modula proizvede ostanek celoštevilskega deljenja, ki se imenuje tudi modul operacije.

Sintaksa modulnega operaterja

Če sta x in y celi števili, potem je izraz:



x   %   y;>

izgovorjeno kot x mod y. Na primer, 10 % 2 se bo izgovorilo kot Ten mod Two.

Vrnjena vrednost operaterja Modulo

  • Če y popolnoma deli x, je rezultat izraza 0.
  • Če x ni popolnoma deljiv z y, bo rezultat ostanek v območju [0, y-1]
  • (x % in) < (x / 2) ………če (x>= y)
  • (x % y) = x ……… če (x
  • Če je y 0, potem deljenje z ničlo je napaka med prevajanjem .

Primer modulnega operaterja

Spodaj je program C/C++ za prikaz delovanja modulo operatorja:

C++








// C++ Program to demonstrate the working of modulo operator> #include> using> namespace> std;> // Driver code> int> main(>void>)> {> >int> x, y;> >int> result;> >x = 3;> >y = 4;> >// using modulo operator> >result = x % y;> >cout << result << endl;> >result = y % x;> >cout << result << endl;> >// for different values> >x = 4;> >y = 2;> >result = x % y;> >cout << result;> >return> 0;> }> // This code is contributed by Mayank Tyagi>

kaj je 10 od 100
>

>

C




// C Program to illustrate the working of modulo operator> #include> int> main(>void>)> {> >int> x, y;> >int> result;> >x = 3;> >y = 4;> >// using modulo operator> >result = x % y;> >printf>(>'%d'>, result);> >result = y % x;> >printf>(>' %d'>, result);> >// for different values> >x = 4;> >y = 2;> >result = x % y;> >printf>(>' %d'>, result);> >return> 0;> }>

>

>

Omejitve za operaterja Modulo

Operator modulo ima nekaj omejitev ali omejitev. The % modulni operator ni mogoče uporabiti za števila s plavajočo vejico tj. plavajoča ali dvojna. Če poskusite uporabiti modulo operator s konstantami ali spremenljivkami s plavajočo vejico, bo prevajalnik povzročil napako.

Primer 1: program C/C++ za prikaz omejitev modulo operatorja.

C++




// C++ Program to demonstrate the restrictions of modulo> // operator> #include> using> namespace> std;> // Driver code> int> main()> {> >float> x, y;> >x = 2.3;> >y = 1.5;> >// modulo for floating point values> >result = x % y;> >cout << result;> >return> 0;> }> // This code is contributed by Harshit Srivastava>

>

>

C




// C Program to illustrate the working of modulo operator> #include> int> main(>void>)> {> >float> x, y;> >float> result;> >x = 2.3;> >y = 1.5;> >// modulo for floating point values> >result = x % y;> >printf>(>'%f'>, result);> >return> 0;> }>

>

>

Izhod

Compilation Error in C code :- prog.c: In function 'main': prog.c:19:16: error:  invalid operands to binary % (have 'float' and 'float')  result = x % y;  ^>

Modulo operator za negativne operande

Predznak rezultata za modulo operator je odvisen od stroja za negativne operande, saj se dejanje izvede kot posledica prelivanja ali prelivanja.

Primer 2: program C/C++ za prikaz modulo operatorja za negativne operande.

C++




// C++ Program to demonstrate the working of the modulo> // operator for negative operands> #include> using> namespace> std;> // Driver code> int> main(>void>)> {> >int> x, y;> >int> result;> >x = -3;> >y = 4;> >// modulo for negative operands> >result = x % y;> >cout << result << endl;> >x = 4;> >y = -2;> >result = x % y;> >cout << result << endl;> >x = -3;> >y = -4;> >result = x % y;> >cout << result;> >return> 0;> }> // This code is contributed by Harshit Srivastava>

>

>

C




// C Program to illustrate the working of the modulo> // operator with negative operands> #include> int> main(>void>)> {> >int> x, y;> >int> result;> >x = -3;> >y = 4;> >// modulo for negative operands> >result = x % y;> >printf>(>'%d'>, result);> >x = 4;> >y = -2;> >result = x % y;> >printf>(>' %d'>, result);> >x = -3;> >y = -4;> >result = x % y;> >printf>(>' %d'>, result);> >return> 0;> }>

>

>

Izhod

-3 0 -3>

Opomba: Vrnjena vrednost je v tem primeru odvisna od prevajalnika.

Pogosta vprašanja o Modulo Operator

Q1. Določite mod.

odgovor:

V programskih jezikih C/C++ se mod nanaša na matematično operacijo, pri kateri se eno število deli z drugim, preostanek pa se vrne.

Izvaja se lahko z uporabo operaterski modul (%) .

Q2. Kaj je modna aritmetika?

odgovor:

Modna aritmetika se nanaša na postopek, v katerem se število nenehno ovija okoli določene točke na tak način, da je vedno manjše od te določene točke. na primer

Upoštevajte številko n = 10 in točka p = 20.
Ko povečamo n 10-krat, bo n = 20, vendar bi moralo biti v modularni aritmetiki nekoliko manjše od navedene točke.

Eden od načinov za to je uporaba modulo operatorja kot:

n++; n = n % p;>

Če želite izvedeti več o modularni aritimatici, glejte članek – Modularna aritmatika

zemljevid java

Q3. Kakšna je razlika med modulom in delitvenim operatorjem?

odgovor:

Glavna razlika med modulom in operaterjem deljenja je, da:

  • Operaterski modul (%) vrne ostanek po deljenju enega števila z drugim.
  • Operator delitve (/) vrne količnik po deljenju enega števila z drugim.