তারিখ ছাড়া সময় নিয়ে কাজ করে এমন একটি ঘড়ি তৈরি করুন।
আপনার এতে মিনিট যোগ ও বিয়োগ করতে পারা উচিত।
একই সময় প্রকাশ করে এমন দুটি ঘড়ি পরস্পরের সমান হওয়া উচিত।
এই অনুশীলনীটি সম্পূর্ণ করতে হলে আপনাকে ডেটা টাইপ Clock ডিফাইন করতে হবে, একটি BEq এবং একটি ToString ইনস্ট্যান্স যোগ করতে হবে, এবং নিচের ফাংশনগুলো বাস্তবায়ন করতে হবে:
create, যা দুটি ইন্টিজার নেয়, যেগুলো ঋণাত্মকও হতে পারে এবং যথাক্রমে ঘণ্টা ও মিনিট নির্দেশ করে, এবং একটি বৈধ Clock তৈরি করে।add, যা একটি Clock এবং Clock-এর সময়ের সঙ্গে যোগ করার জন্য কয়েকটি মিনিট নেয়, এবং একটি নতুন Clock তৈরি করে।subtract, যা একটি Clock এবং Clock-এর সময় থেকে বিয়োগ করার জন্য কয়েকটি মিনিট নেয়, এবং একটি নতুন Clock তৈরি করে।লক্ষ্য করুন, Clock টাইপটি একটি ২৪-ঘণ্টার ঘড়ি নির্দেশ করে, যা "00:00" থেকে "23:59" পর্যন্ত চলে।
লক্ষ্য করুন, একটি Clock-এর ঘণ্টা ও মিনিট দুটোই সীমাবদ্ধ:
0 <= hour < 240 <= minute < 60Lean-এ এ ধরনের সীমাবদ্ধতা টাইপ লেভেলে প্রকাশ করা একটি স্বাভাবিক রীতি, যাতে অবৈধ মান অপ্রকাশযোগ্য হয়ে যায়। তবে এর জন্য প্রমাণ করতে হয় যে প্রদত্ত মানটি এই সীমাবদ্ধতাগুলো পূরণ করে।
আপনি যদি নিজেকে প্রস্তুত মনে করেন, তবে এই বিষয়ের একটি ভালো পরিচিতি এখানে রইল:
Exercism-এ সাইন আপ করুন, Lean ট্র্যাকের 100টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।