פקודת השמה
ערך מחפש מקורות | ||
| ערך מחפש מקורות | |
בשפות תכנות, פקודת השמה היא פקודה המציבה ערך חדש במשתנה. פקודה זו קיימת, כפקודה בסיסית, במרבית שפות התכנות.[1]
הסימן הנפוץ לפקודת השמה הוא =, אך קיימות לו וריאציות רבות בשפות שונות. דוגמאות אחדות מוצגות בטבלה הבאה, שבה variable הוא שמו של המשתנה, ו-expression הוא הערך שפקודת ההשמה מציבה במשתנה.
| שפה | סימון הפקודה | דוגמה |
|---|---|---|
| , Javascript, PL/I, Fortran, C, Java | variable = expression | A = B + 5 |
| ALGOL, פסקל, Ada | variable := expression | A := B + 5 |
| COBOL | MOVE expression TO variable | MOVE B TO A |
| BASIC | LET variable = expression | LET A = B + 5 |
ביצוע פקודת ההשמה כולל שני שלבים:
השמה לעומת השוואה
[עריכת קוד מקור | עריכה]נקודה שעשויה לבלבל היא שבלימודי החשבון הסימן = נועד להשוואה - כלומר לבטא שערך מסוים שווה לערך אחר, ואילו בעולם התכנות הסימן = משמש להשמה, כלומר על מנת להציב ערך מסוים בתוך משתנה. לעומת זאת, כאשר נרצה להשוות, נשתמש באופרטורים == או ===. דוגמה:
var num1 = 10
var num2 = 20
var sum = num1 + num2 // sum is 30
if (sum === 30) alert('Sum is 30!')
בשפות תכנות מיושנות, לסימן = שתי משמעויות:
- השמה
- השוואה בין שני ערכים (למשל בפקודת if).
כפל משמעויות זה עלול לבלבל מתכנתים מתחילים, ולכן בשפות אחרות משמשים למטרות אלה שני סימנים נפרדים, למשל = להשמה, == להשוואה.[2]
בשפת PL/I, שבה הסימן = משמש בשתי המשמעויות, ניתן למצוא את שתיהן יחד בפקודה הבאה:
A = B = C
שפירושה: כאשר B שווה ל-C, המשתנה A יקבל את הערך "אמת" (המיוצג בשפה זו על ידי ביט שערכו 1), וכאשר B אינו שווה ל-C, המשתנה A יקבל את הערך "שקר".
הערות שוליים
[עריכת קוד מקור | עריכה]- ↑ What are Assignment Statement: Definition, Assignment Statement Forms, Toppr-guides, 2021-03-23 (באנגלית אמריקאית)
- ↑ Kenneth Leroy Busbee, Assignment vs Equality, 2018-12-15