המשימה
בנה מחלקה בשם Hour שמייצגת שעה ביממה.
המחלקה תכלול:
• שתי תכונות פרטיות: hour (0-23) ו-minutes (0-59).
• בנאי שמקבל שעה ודקות.
• פעולות מאחזרות לשתיהן.
• פעולה addMinutes שמקבלת מספר דקות ומקדמת את השעה בהתאם.
• פעולת toString שמחזירה את השעה בפורמט hh:mm, תמיד בשתי ספרות.
דוגמאות:
09:45 ועוד 30 דקות → 10:15
23:50 ועוד 20 דקות → 00:10
08:00 ועוד 125 דקות → 10:05
הנחיות:
• הדרך הנוחה: להמיר הכול לדקות מתחילת היממה, לחבר, ואז לפרק בחזרה
בעזרת / ו-%.
• מעבר חצות — התוצאה חוזרת לתחילת היממה. השתמש ב-%24 על השעות.
• שעה חד-ספרתית חייבת לצאת עם אפס מוביל: 9 נכתב 09.
```ds:table
{"title":"דוגמאות","rows":[["שעה","תוספת","תוצאה"],["09:45","30","10:15"],["23:50","20","00:10"],["08:00","125","10:05"],["00:00","0","00:00"]]}
```
קוד הפתיחה
using System;
class Hour {
private int hour;
private int minutes;
public Hour(int hour, int minutes) {
// אתחל את התכונות
}
public int GetHour() {
return 0; // החזר את hour
}
public int GetMinutes() {
return 0; // החזר את minutes
}
/** מקדמת את השעה במספר הדקות שהתקבל, כולל מעבר חצות. */
public void AddMinutes(int m) {
// כתוב את הפתרון כאן
}
public override string ToString() {
// החזר בפורמט hh:mm — תמיד שתי ספרות בכל חלק
return "";
}
}
class Program {
static void Main() {
Hour a = new Hour(9, 45);
a.AddMinutes(30);
Console.WriteLine(a); // 10:15
Hour b = new Hour(23, 50);
b.AddMinutes(20);
Console.WriteLine(b); // 00:10
Hour c = new Hour(8, 0);
c.AddMinutes(125);
Console.WriteLine(c); // 10:05
Console.WriteLine(c.GetHour()); // 10
Hour d = new Hour(0, 0);
d.AddMinutes(0);
Console.WriteLine(d); // 00:00
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.