ساعت

ساعت

متوسط

دستورالعمل‌ها

ساعتی پیاده‌سازی کنید که زمان را بدون تاریخ مدیریت می‌کند.

باید بتوانید به آن دقیقه اضافه کنید و از آن دقیقه کم کنید.

دو ساعتی که یک زمان یکسان را نشان می‌دهند باید با هم برابر باشند.

پیاده‌سازی

تست‌های این تمرین انتظار دارند که ساعت شما با استفاده از یک data declaration در Pyret پیاده‌سازی شود. اگر با اعلان‌های داده آشنایی ندارید، مستندات رسمی نقطه‌ی خوبی برای شروع است.

به‌عنوان بخشی از این تمرین، مقدارهایی را مقایسه می‌کنید که یک واریانت داده‌ی Clock ساخته است. چون ساعت و دقیقه‌ی یک زمان می‌توانند در هر دو جهت بچرخند، این ترکیب‌ها روی ساعت یکسان‌اند: ۱ ساعت و ۱ دقیقه، ۰ ساعت و ۶۱ دقیقه، ۲۵ ساعت و ۱ دقیقه و ۲ ساعت و منفی ۵۹ دقیقه. عملگر تست is در Pyret از تساوی ساختاری استفاده می‌کند و در نتیجه، به‌طور پیش‌فرض هیچ‌کدام از این ترکیب‌ها با هم برابر نمی‌شوند. برای همین، باید متد تساوی خودتان را تعریف کنید تا زمان را میان مقدارهای یک واریانت داده‌ی Clock مقایسه کنید. اگر با نحوه‌ی برخورد Pyret با تساوی آشنایی ندارید، مستندات رسمی درباره‌ی تساوی را ببینید.


منبع

جلسه‌ی برنامه‌نویسی دونفره با Erin Drummond
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
Pyret Exercism

آماده‌اید ساعت را شروع کنید؟

در Exercism ثبت‌نام کنید تا Pyret را همراه با 66 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.