Menu
Coddy logo textTech

המרת טיפוסים חלק 1

חלק מהיחידה יסודות במסלול ה-C++ של Coddy. שיעור 14 מתוך 74.

המרת טיפוסים היא תהליך של המרת ערך מסוג נתונים אחד לסוג נתונים אחר.

ב־C++ אפשר להמיר מספרים שלמים למספרים מסוג double, מספרים מסוג double למספרים שלמים ועוד. יש שני סוגים של המרה: המרה מרומזת (אוטומטית) והמרה מפורשת (ידנית).

לדוגמה Integer to Double:

המרה מרומזת (אוטומטית):

int number = 5;
double decimal = number; // הופך אוטומטית ל-5.0

// עם חישוב
int x = 7;
double result = x / 2.0; // result הוא 3.5

הערה: כאשר מחלקים שני ערכי int, ‏C++ מבצעת חלוקה של מספרים שלמים: החלק העשרוני נזרק. לדוגמה, 7 / 2 נותן 3, ולא 3.5. כדי לקבל תוצאה עשרונית, לפחות אחד האופרנדים חייב להיות מסוג double (למשל, 7 / 2.0 נותן 3.5).

המרה מפורשת (ידנית) באמצעות Double to Integer:

double decimal = 9.7;
int number = (int) decimal;  // הופך ל-9 (החלק שאחרי הנקודה העשרונית נחתך)

// עם חישוב
double price = 19.99;
int roundedPrice = (int) price;  // הופך ל-19

סגנון מועדף ב־C++ מודרנית: במקום המרה בסגנון C כמו (int) decimal, עדיף להשתמש ב־static_cast<>(), שהיא בטוחה יותר ומבהירה יותר את כוונתך:

double decimal = 9.7;
int number = static_cast<int>(decimal);  // הופך ל-9 (החלק שאחרי הנקודה העשרונית נחתך)

double price = 19.99;
int roundedPrice = static_cast<int>(price);  // הופך ל-19

הערה: גם (int) value וגם static_cast<int>(value) מפיקים כאן את אותה תוצאה, אבל static_cast<>() היא הגישה המומלצת ב־C++ מודרני, משום שהיא מציגה בבירור את ההמרה ונבדקת על ידי המהדר.

challenge icon

אתגר

מתחילים

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

המירו את המשתנה price ל־int ושמרו את התוצאה במשתנה חדש בשם intPrice.

נסו בעצמכם

#include <iostream>

int main() {
    // הכריזו על משתנים ואתחלו אותם
    double price = 99.99;
    int intPrice = ?; // המרת טיפוס מפורשת מ-double ל-int
    
    
    // הציגו את הערכים
    std::cout << "Price: " << price << std::endl;
    std::cout << "Int Price: " << intPrice << std::endl;
    
    return 0;
}
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר C++ אונליין