בשפת C כאשר אני רושמת את הפעולה - x mod y, ונניח שx=66 ו-y=60 אז השארית היא 1, כאשר אני עושה את הפעולה הזאת כשאני רוצה שהיא תיכנס לתוך משתנה, איזה ערך מקבלים.. 1 או 0.1?
בשפת C, אם יש לי משתנה num שהוא מסוג int. הערך של num לצורך העיניין הוא 333. אם אני מבצעת את הפעולה: [num/60 * 60] האם הפעולה בעצם תהיה 333/60=5.5 ואז בעצם זה יהיה 5 כי זה int ואז 300=5*60?
בהנחה שסימן החלוקה "\" הוא אכן נותן תוצאת חלוקה ללא השארית (כמו div בפסקל למשל) אז באמת יקרה מה שרשמת. פעולת חשבוניות נעשות משמאל לימין ומאחר וכפל וחילוק הן מאותו מעמד אז כמו שאמרת קודם יבוצע החילוק שייתן לנו 5 ואז פעולת הכפל.
כי 333 הוא מטיפוס integer וגם 60 הוא מטיפוס integer ולכן התוצאה תמיד תהיה מטיפוס integer. (כי בחירת סוג החישוב בC הוא Context Independent - לא משנה מה עושים עם הערך אחר כך). אם היית כותבת: [num / 60.0 * 60] אז התוצאה הייתה 333.