תרגול 1.4 – שארית חלוקה


בתרגול זה נתמקד בפעולות חלוקה ושארית

תרגילי שארית חלוקה אלו פתירים גם לפני שלומדים הוראות תנאי if

התרגילים כאן משמשים גם לתרגול הבנת הנקרא. הנושא שארית חלוקה קשה לתלמידים ומומלץ לחזור ולתרגל אותו שוב ושוב בשלבי לימוד שונים - (תנאים, לולאות)

תרגיל 1.4.1

כתבו תכנית שתקבל שני מספרים שלמים n1, n2
והדפס את תוצאת החלוקה n1 / n2, ואת השארית n1 % n2

פתרון
1
2
3
4
5
6
7
int n1 = 17; // example value
int n2 = 4;  // example value

int quotient = n1 / n2; // calculate integer division
int remainder = n1 % n2; // calculate remainder

Console.WriteLine($"Quotient: {quotient}, Remainder: {remainder}");

תרגיל 1.4.2

יוסי קיבל דמי כיס שבועיים בסכום כלשהו (אין צורך בקלט).
עליו לחסוך חצי מהסכום, ואת השאר להוציא.
כתבו תכנית שתחשב ותחזיר את הסכום שייחסך ואת הסכום שיוציא בכל שבוע.

פתרון
1
2
3
4
5
6
int total = 120; // example amount

int save = total / 2; // save half
int spend = total - save; // the rest is for spending

Console.WriteLine($"Saved: {save}, Spent: {spend}");

תרגיל 1.4.3

יוסי קיבל דמי כיס שבועיים. עליו להוציא סכום כסף שווה בכל אחד מימות השבוע (7 ימים).
כתבו תכנית שתחשב:

  • כמה כסף יוציא בכל יום (שלם בלבד).
  • כמה שקלים יישארו לו בסוף השבוע.
פתרון
1
2
3
4
5
6
int money = 53; // example value

int perDay = money / 7; // integer division for daily spending
int leftover = money % 7; // what's left after division

Console.WriteLine($"Per day: {perDay}, Leftover: {leftover}");

תרגיל 1.4.4

חנה קיבלה ליום ההולדת סכום כסף מסוים. ב־80 שקל קנתה ג’ינס, וב־25 שקל קנתה חולצה.
את יתרת הכסף החליטה לחלק בצורה שווה לכל השנה (12 חודשים) בכדי שישארו לה דמי כיס. הסכום בכל חודש יהיה שלם (ללא אגורות), ובעודף החליטה לקנות ממתקים.
כתבו תכנית שתקלוט את סכום המתנה, תחשב בכמה כסף קנתה חנה ממתקים, וכמה נותר לה לדמי כיס בכל חודש.

פתרון
1
2
3
4
5
6
7
8
9
int gift = 250; // example value
int jeans = 80;
int shirt = 25;

int left = gift - jeans - shirt; // money left after shopping
int monthly = left / 12; // full shekels per month
int candy = left % 12; // leftover goes to candy

Console.WriteLine($"Monthly allowance: {monthly}, Candy: {candy}");

תרגיל 1.4.5

כתבו תכנית שקולטת זמן בדקות, ומדפיסה:

  • כמה שעות שלמות יש בו
  • כמה דקות נותרות לאחר השעות השלמות
    לדוגמא עבור הקלט 204 יודפס:
3 minutes and 24 seconds
פתרון
1
2
3
4
5
6
int totalMinutes = 204; // example

int hours = totalMinutes / 60; // full hours
int minutes = totalMinutes % 60; // remaining minutes

Console.WriteLine($"{hours} minutes and {minutes} seconds");

תרגיל 1.4.6

שימו במשתנה מספר דו-ספרתי כלשהו.
על התכנית לחשב ולהדפיס את ספרת העשרות ואת ספרת האחדות

פתרון
1
2
3
4
5
6
int number = 47; // example two-digit number

int tens = number / 10; // extract tens digit
int ones = number % 10; // extract ones digit

Console.WriteLine($"Tens: {tens}, Ones: {ones}");

תרגיל 1.4.7

חברת car עשתה סקר וגילתה שבמרוצי מכוניות, כל מכונית תשיעית מתהפכת, וכל מכונית חמישית נעצרת על המסלול בגלל תקלה.
שימו את מספר המכוניות שהשתתפו במרוץ מסויים במשתנה.

  • כתבו תכנית שתדפיס כמה מכוניות התהפכו
  • כמה מכוניות נעצרו בגלל תקלה.
פתרון
1
2
3
4
5
6
7
int totalCars = 180; // example value

int flipped = totalCars / 9; // every 9th car flips
int stopped = totalCars / 5; // every 5th car stops

Console.WriteLine($"Flipped cars: {flipped}");
Console.WriteLine($"Stopped cars: {stopped}");