logo

מפעיל מודולוס ב-C/C++

לפני שמבינים לגבי מודולוס מַפעִיל , אנחנו צריכים לדעת על המונח מַפעִיל . בתכנות, סמל האופרטור אומר למהדר לבצע פעולה מסוימת במספר נתון בהתבסס על הפעולה שעברה.

הוא משמש לביצוע פעולות שונות (+, -, *, /) במספרים. זה עוזר לשפר את היכולת הלוגית והמתמטית של המתכנת על ידי שימוש באופרטורים שונים בתוכנית. מלבד ארבעת האופרטורים הבסיסיים הללו, ישנם כמה אופרטורים אחרים כגון אופרטור מודולוס (%), מפעיל רזולוציית היקף (::) וכו'.

מה זה מוניטור

בחלק זה נתמקד ב מפעיל מודולוס.

מפעיל מודולוס ב-C/C++

מהו אופרטור המודולוס ב-C ו-C++?

ה מפעיל מודולוס הוא סמל המשמש בשפות תכנות שונות. זה מסומן בסמל האחוז ( % ). זהו אופרטור מודולוס המשמש באופרטור האריתמטי. זה קובע את השאר. במקרים מסוימים, היתרה עשויה להיות 0, זה אומר שהמספר מתחלק לחלוטין במחלק.

תחביר:

 rem = a % b 

בתחביר לעיל, a ו-b הם שני מספרים שלמים, וה- % סמל (אחוזים) הוא אופרטור מודולוס המחלק את a ב-b ומחזיר את השארית.

אפשרויות החזרה של מפעיל מודולוס

להלן האפשרויות כאשר המספר הראשון מחולק במספר השני כדי להחזיר רק ערך שארית.

  1. אם המשתנה a מתחלק לחלוטין במספר השני (b), הוא מחזיר אפס (0), או שהשאר הופך ל-0.
  2. אם המשתנה a אינו מתחלק לחלוטין במספר השני (b), הוא מחזיר ערך מספרי בטווח [1, a - 1]. או שאנחנו יכולים לומר שהוא מחזיר את השארית לערך שלם שאינו אפס.
  3. אם המספר הראשון (a) אינו אפס והמספר השני הוא 0, הוא נותן שגיאה בזמן ההידור.

כיצד פועל Modulus Operator ב-C/C++?

אופרטור המודולוס עובד עם שני אופרנדים המתקבלים על ידי משתמש הקצה. לאחר מכן, הוא מחלק את המספר הראשון במספר השני וקובע את השאר. בואו נבין את הדוגמה הבאה שממחישה את הפונקציונליות של אופרטור המודולוס.

דוגמא : כאשר אנו מבצעים את אופרטור המודולוס בין 8 ל-5, פירושו 8 % 5, הוא מחזיר את השארית 3 כי כאשר 8 מחולק ב-5, הוא מחזיר 1 כמנה ו-3 כשארית.

שיעור מתמטיקה ב-Java

באופן דומה, 7% 2 מחזירה 1 כשארית מכיוון שכאשר 7 מחולק ב-2, הוא מחזיר 3 כמנה ו-1 כשארית.

דוגמה 1: כתוב תוכנית ליישום ה-Modulus Operator ב-C.

מצב.ג

 #include #include void main() { int a, b; int res; // store the resultant of modulus expression a = 5; b = 2; res = a % b; // define modulus expression printf(' Modulus returns a remainder: %d', res); res = b % a; // define modulus expression printf(' 
 Modulus returns a remainder: %d', res); a = 10; b = 5; res = a % b; // define modulus expression printf(' 
 Modulus returns a remainder: %d', res); getch(); } 

תְפוּקָה:

 Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0 

הערה: כאשר אנו מחלקים מספר צף במספר אחר, הוא מחזיר את שגיאת הטיימר המהודר כאופרנד לא חוקי. לפיכך, אנו יכולים לומר שזה לא עובד עם מספר צף.

תוכנית ליישום אופרטור המודולוס ב-C++.

מצב3.cpp

 #include using namespace std; int main(void) { int a, b; int res; // store the resultant of modulus expression a = 5; b = 2; res = a % b; // modulus expression cout &lt;<' modulus returns a remainder: ' << res; res="b" % a; expression cout <<'
 b="5;" b; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0 </pre> <h2>Modulus Operator in C++</h2> <p> <strong>Mode4.cpp</strong> </p> <pre> #include using namespace std; int main(void) { int a, b; int res; // store the result of modulus expression a = -5; b = 2; res = a % b; // modulus expression cout &lt;<' modulus returns a remainder: ' << res; b="-3;" res="a" % b; expression cout <<'
 return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: -1 Modulus returns a remainder: 2 Modulus returns a remainder: -1 </pre> <h3>Chaining of Modulus Operator</h3> <p>We can use the Chaining of Modulus Operator to perform modular division on more than two operands in a single statement. Following is the pseudo-code for the chaining of modulus operator, as given below.</p> <pre> res = operand1 % operand2 % operand3 % .... % operand_n </pre> <p>Let&apos;s consider the program of Chaining of Modulus Operator to take more than two operands.</p> <p> <strong>Mode5.cpp</strong> </p> <pre> #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></'></pre></'>

מפעיל מודולוס ב-C++

מצב4.cpp

 #include using namespace std; int main(void) { int a, b; int res; // store the result of modulus expression a = -5; b = 2; res = a % b; // modulus expression cout &lt;<\' modulus returns a remainder: \' << res; b="-3;" res="a" % b; expression cout <<\'
 return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: -1 Modulus returns a remainder: 2 Modulus returns a remainder: -1 </pre> <h3>Chaining of Modulus Operator</h3> <p>We can use the Chaining of Modulus Operator to perform modular division on more than two operands in a single statement. Following is the pseudo-code for the chaining of modulus operator, as given below.</p> <pre> res = operand1 % operand2 % operand3 % .... % operand_n </pre> <p>Let&apos;s consider the program of Chaining of Modulus Operator to take more than two operands.</p> <p> <strong>Mode5.cpp</strong> </p> <pre> #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></\'>

שרשור של מפעיל מודולוס

אנו יכולים להשתמש ב-Chaining of Modulus Operator כדי לבצע חלוקה מודולרית על יותר משני אופרנדים בהצהרה אחת. להלן הפסאודו-קוד לשרשור של אופרטור מודולוס, כפי שניתן להלן.

java localdatetime
 res = operand1 % operand2 % operand3 % .... % operand_n 

בואו ניקח בחשבון את התוכנית של שרשור של מפעיל מודולוס כדי לקחת יותר משני אופרנדים.

מצב5.cpp

 #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } 

תְפוּקָה:

 Modulus is: 2