|
עמוד:107
קביעת סדר פעולות מומלץ להוסיף סימני סוגריים הן בפעולת חשבוניות והן בפעולות בוליאניות על מנת לקבוע את סדר העדיפות . דוגמה 3 . 16 מכפלה מצרית בדוגמה זו נציג מימוש של פעולת כפל ( מכפלה מצרית ) בין שני מספרים שלמים תוך כדי שימוש בפעולות חיבור והזזות . בתכנית זו נניח כי המשתנה a גדול מהמשנה . b char a , b , c ; void main () { a = 5 ; b = 3 ; c = 0 ; while ( b ! = 0 ) { ספרת יחידות שווה if (( b & 0 x 01 ) == 1 ) // 1-ל c = c + a ; הזזה שמאלה פעם אחת – הכפלה פי a = a << 1 ; // 2 הזזה פעם אחת ימינה – חלוקה פי b = b >> 1 ; // 2 } while ( 1 ); } טבלת מעקב בטבלת המעקב חמש עמודות : איטרציה – שלב ביצוע לולאת ה- , while ( b ! = 0 ) עמודה לכל משתנה ועמודה המציינת אם התנאי מתקיים . באיטרציה הראשונה התנאי מתקיים , ולכן מחושב ערכו של המשתנה . c = 5 ערכו של a גדל פי , 2 וערכו של b קטן פי . 2 באיטרציה השנייה התנאי עדיין מתקיים , ולכן מחושב ערכו של המשתנה c ומעדכנים את
|
|