FANDOM


ב-Perl יש כמה אופרטורים מתמטיים:

האופרטורהמשמעות
+חיבור
-חיסור/סימן שלילי
*כפל
/חילוק
%מודולו (שארית)
**חזקה

באופרטורים אלה ניתן להשתמש בין מספרים לבין מספרים, בין מספרים לבין משתנים בסיסיים, בין משתנים בסיסיים לבין מספרים, ובין משתנים בסיסיים לבין משתנים בסיסיים.


Achtung

שימו לב:

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


אופרטורים מתמטיים נוספים, הפועלים על משתנים מסוג סקלר בלבד הם:

האופרטורהמשמעות
++הגדלה עצמית
--הקטנה עצמית

פעולת האופרטורים האלה, הם כמו פעולתם ב-C. הם מגדילים או מקטינים ב-1 את המשתנה מסוג סקלר עליו הם פועלים.

$x++;
++$x;

שניהם יגדילו את $x ב-1, ו-

$x--;
--$x;

שנים יקטינו את $x ב-1.

אז מה ההבדל בין $x++ לבין ++$x?

ההבדל הוא שבמקרה הראשון, קודם $x ייבחן, ואז יוגדל, ובשני הוא קודם יוגדל. ומה המשמעות של זה?

את ההבדל אפשר לראות כשננסה שני ביטויים:

$y=5 + $x++;
$y=5 + ++$x;

נניח ש-$x שווה 6. במקרה הראשון $y יהיה שווה ל-11, ואז $x ייהפך 7, ואילו במקרה השני, $x ייהפך ל-7, ואז $y יהיה 5+7, שזה 12. שימו לב, שבמקרה הראשון כל הרווחים מיותרים, אבל במקרה השני, הרווח ביו ה-+ הראשון לשני הוא חשוב.


Thumbs up

עכשיו תורך:

למה חשוב שיהיה כתוב $y=5+ ++$x;, ואסור לכתוב $y=5+++$x; (חוץ מהסיבה שזה לא נח לקרוא...)




כללי קדימותעריכה

כמו במתמטיקה רגילה, חלים כללי קדיומיות בין האופרטורים ב-Perl.

חזקה קודמת לכפל, חילוק ומודולו, שקודמים לחיבור וחיסור.

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

חזקה קוראת מימין לשמאל, אז 4**3**2 שקול ל-4**(3**2), ולא ל-(4**3)**2.

שאר האופרטורים הם משמאל לימין, אז 1/2*3 שקול ל-(1/2)*3, ולא ל-1/(2*3).


הפרק הקודם:
משתנים
ביטויים חשבוניים הפרק הבא:
רשימות

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.