C++ rint() פונקציה

C Rint Pwnqzyh



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

C++ היא שפת תכנות מונחה עצמים פרוצדורלית וקלה להבנה המציעה לתוכניות מבנה ברור המאפשר להעריך קוד בתוך אותה תוכנית. אבל לפעמים, יש בעיה מורכבת שאנחנו רוצים לפתור. לשם כך, אנו משתמשים במספר פונקציות ב-C++ כדי לחלק את הבעיה המורכבת לנתחים קטנים יותר, שהם הפונקציות בהן השתמשנו בתוכנית שלנו. והיום, אנו לומדים את אחת הפונקציות החשובות, שהיא הפונקציה rint() ב-C++.







מבוא

ב-C++, הפונקציה rint() היא הפונקציה המוגדרת מראש המעגלת את הערך לערך השלם הקרוב ביותר. כדי לעגל את ערך הקלט, אנו משתמשים במצב העיגול הנוכחי, שהוא מצב fesetround() . כדי להבין וללמוד בצורה ברורה יותר על הפונקציה rint() בוא נחפור לעומק ונראה איך ניישם את הפונקציה הזו ב-C++.



תחביר

בואו נבין את סגנון הכתיבה והיישום של הפונקציה rint() ב-C++. ראשית, נכתוב את סוג ההחזרה של הפונקציה rint() . בסוגריים של הפונקציה rint() נכתוב את סוג הנתונים של משתנה הקלט ונעביר בו את פרמטר הקלט כך שנקבל את ערך הקלט לסוג המספרים השלם המעוגל.







פָּרָמֶטֶר

Input_variable: יכול להיות כל שם משתנה המכיל בתוכו כל ערך. לדוגמה, יש לנו פרמטר x שברצוננו לעגל.

שגיאות וחריגים

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



ערך החזרה

בתמורה, נקבל את הערך מסוג מספר שלם מעוגל של ערך הקלט.

דוגמה 01

בואו נתחיל ליישם את הדוגמה הראשונה והפשוטה ביותר שלנו לפונקציית rint() אותה נכתוב ב-C++. אנחנו צריכים מהדר C++ כדי ליישם את הפונקציה rint(). פתח את המהדר והתחל לכתוב את הקוד.

בתוכנית C++, אנו כוללים תחילה את הספריות הבסיסיות הקשורות לתוכנית שלנו. ספריות אלו הן הספריות המוגדרות מראש של C++. אנחנו צריכים לכתוב רק שורת קוד אחת כדי לכלול את הספריות האלה במקום לכתוב מאות שורות כדי ליצור את הספרייה. כדי לכלול את הקובץ, נכתוב תחילה את הסימן '#' שמודיע למהדר לטעון את קובץ הכותרת, המונח 'include' מורכב מקובץ הכותרת לתוכנית, וה-'iostream' מציין קבלת נתונים מהמשתמש והצגה את זה למשתמש.

שילבנו גם את קובץ הכותרת השני עם הקידומת '#include ' כדי שנוכל לבצע את הפונקציה העגולה מכיוון שזו פונקציה מתמטית. זו הסיבה שהשתמשנו בספריית 'cmath'. כדי למנוע משיעורים, פונקציות ומשתנים להשתמש באותו הקשר לאורך התוכנית כולה, השתמשנו בשלב הבא בהנחיית 'שימוש במרחב שמות std'.

#include
#include

שימוש במרחב שמות std;

int main ( )
{
לצוף X = 9.1 , ו= 0.9 ;

cout << 'הערך של X לאחר עיגול:' << פועל ( איקס ) << endl;
cout << 'הערך של Y לאחר עיגול:' << פועל ( י ) ;

לַחֲזוֹר 0 ;
}

אז נתחיל לכתוב את הפונקציה main() כי כאן. נכתוב את שורת הקוד בפועל או נממש את הפונקציה שאנו רוצים ליישם. בסוגריים של הפונקציות main() הכרזנו על שני המשתנים בשם 'X ו-Y' מסוג float והקצנו להם ערכים שונים. לאחר מכן נקרא לפונקציית ה-round-off שברצוננו לבצע, שהיא הפונקציה rint() . אנו קוראים לפונקציה על ידי כתיבה תחילה של שם הפונקציה, שהיא הפונקציה rint() ולאחר מכן את משתנה הקלט 'X' בה. ולאחר מכן, נדפיס אותם על ידי כתיבת שיטת cout() והעברת הפונקציה. עשינו את אותו הדבר עבור המשתנה 'Y',. ובסוף, נחזיר 0 לפונקציה main() ונסגור את הסוגר.

כאן, יש לנו את הפלט הרצוי, שהוא הערך של 'X' הוא 9, והערך של 'Y' הוא 1 בסוג מספר שלם.

דוגמה 02

כעת, נעבור לדוגמא השנייה של הפונקציה rint() בשפת C++. בדוגמה זו, השתמשנו בשיטת המצב הנוכחי, שהיא מצב fesetround() . שיטת fesetround() יוצרת את 'כיוון העיגול הנוכחי' בפונקציית rint() המכוונת את ערך הקלט כלפי מעלה, מטה, הטון הקרוב ביותר ולכיוון האפס.

#include
#include
#include

שימוש במרחב שמות std;

int main ( )
{
כפול X;

cout << 'הזן את ערך הקלט של X הוא:' ;
אֲכִילָה >> איקס;

cout << ' \n עיגול למספר השלם הקרוב ביותר של X(' << איקס << '): ' << פועל ( איקס ) << endl;

מסביב ( FE_UPWARD ) ;
cout << 'עיגול X(' << איקס << ') למעלה: ' << פועל ( איקס ) << endl;

מסביב ( FE_DOWNWARD ) ;
cout << 'עיגול X(' << איקס << ')  למטה: ' << פועל ( איקס ) << endl;

לַחֲזוֹר 0 ;
}

כללנו מספר ספריות בסיסיות הקשורות לפונקציות שנטמיע בתוכנית. קובץ הכותרת הראשון הוא '#include ' כדי להזין ולהוציא את הנתונים. קובץ הכותרת השני הוא '#include ' מכיוון שהפונקציה rint() היא פונקציה מתמטית וקובץ הכותרת השלישי הוא '#include ' כך שנוכל להשתמש בפונקציה fesetround() בתוכנית שלנו. לאחר מכן כללנו את הנחיית הקדם-מעבד 'שם מרחב std'.

לאחר מכן אנו קוראים לפונקציה main() ומתחילים לכתוב את שורת הקוד בפועל. ראשית, נכריז על המשתנה 'X' מסוג double, ולאחר מכן נקבל את הערך מהמשתמש באמצעות שיטת cin() של C++ ולאחר מכן נדפיס אותו באמצעות שיטת cout() . לאחר מכן, נקרא לפונקציה rint() כדי להדפיס את הערך המעוגל הקרוב ביותר של 'X' באמצעות שיטת cout().

כעת, השתמשנו בשיטת fesetround() כדי להדפיס את הערכים בכיוונים כלפי מעלה ומטה. לשם כך, קרא לפונקציה fesetround() וכתוב את ה-'FE_UPWARD' באותיות גדולות בסוגריים של פונקציות והדפיס אותה על ידי העברת הפונקציה rint() בשיטת cout() . לאחר מכן נדפיס את הערכים בכיוון מטה אז כתוב את שיטת fesetround() והעביר את 'FE_DOWNWARD' באותיות גדולות ורשום את הפונקציה rint() בשיטת cout() . ובסוף, החזר 0 לפונקציה main() וסגור את הסוגריים.

בואו נראה את הפלט של הדוגמה הקודמת:

סיכום

במאמר זה, למדנו על תפקידן של פונקציות ב-C++, וכיסינו את הנושא העיקרי שלנו, שהוא הפונקציה rint() ב-C++. למדנו כיצד פועלת הפונקציה rint() ב-C++ וכיצד אנו מקבלים את הערך השלם המעוגל באמצעות שיטת fesetround() . יישמנו גם כמה דוגמאות בהסבר המפורט של כל שורת קוד כדי שהמשתמש יוכל להבין בקלות את הדוגמאות.