সংখ্যার একটি ম্যাট্রিক্স বোঝানো একটি স্ট্রিং দেওয়া থাকলে, সেই ম্যাট্রিক্সের সারিগুলো ও কলামগুলো রিটার্ন করুন।
তাহলে এরকম ভেতরে নিউলাইন-সহ একটি স্ট্রিং দেওয়া হলে:
9 8 7
5 3 2
6 6 7
যা এই ম্যাট্রিক্স বোঝায়:
1 2 3
|---------
1 | 9 8 7
2 | 5 3 2
3 | 6 6 7
আপনার কোড যেন এগুলো বের করে দিতে পারে:
আমাদের উদাহরণের ম্যাট্রিক্সের সারিগুলো:
আর এর কলামগুলো:
এই অনুশীলনীটি সম্পূর্ণ করতে, আপনাকে Matrix ডেটা টাইপটি তৈরি করতে হবে, যাতে Eq এবং Show ইনস্ট্যান্স থাকবে, এবং নিচের ফাংশনগুলো ইমপ্লিমেন্ট করতে হবে:
colscolumnflattenfromListfromStringreshaperowrowsshapetransposeএকটি ডামি ডেটা ডিক্লারেশন আর টাইপ সিগনেচার আগেই জায়গায় বসানো আছে, তবে ফাংশনগুলো ডিফাইন করা এবং একটি অর্থপূর্ণ ডেটা টাইপ, নিউটাইপ বা টাইপ সিনোনিম তৈরি করা আপনার হাতেই।
ইনপুট ভ্যালিডেশনের কোনো দরকার নেই। ম্যাট্রিক্সটি আয়তাকার না হলে, অবৈধ ক্যারেক্টার পাওয়া গেলে ইত্যাদি ক্ষেত্রে এটিকে ব্যর্থ হতে দিন।
shape হলো (rows, cols)
Exercism-এ সাইন আপ করুন, Haskell ট্র্যাকের 107টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।