গো গণনা

গো গণনা

মধ্যম

নির্দেশনা

গো বোর্ডে স্কোর হওয়া পয়েন্টগুলো গুনুন।

গো গেমে (যা baduk, igo, cờ vây এবং wéiqí নামেও পরিচিত) পয়েন্ট পাওয়া যায় আপনার পাথর দিয়ে খালি ছেদবিন্দুগুলো সম্পূর্ণভাবে ঘিরে ফেলার মাধ্যমে। একজন খেলোয়াড়ের ঘেরা ছেদবিন্দুগুলো তার এলাকা হিসেবে পরিচিত।

প্রতিটি খেলোয়াড়ের এলাকা হিসাব করুন। আপনি ধরে নিতে পারেন, শত্রুর এলাকায় আটকে পড়া যেকোনো পাথর ইতিমধ্যে বোর্ড থেকে সরিয়ে ফেলা হয়েছে।

নির্দিষ্ট একটি স্থানাঙ্ক যে এলাকার মধ্যে পড়ে, সেটি নির্ধারণ করুন।

একসাথে একাধিক খালি ছেদবিন্দু ঘেরা হতে পারে, আর ঘেরার জন্য শুধু আনুভূমিক ও উল্লম্ব প্রতিবেশী গণ্য হয়। নিচের চিত্রে যে পাথরগুলো গুরুত্বপূর্ণ সেগুলো "O" দিয়ে চিহ্নিত, আর যেগুলো গুরুত্বপূর্ণ নয় সেগুলো "I" (উপেক্ষিত) দিয়ে চিহ্নিত। খালি জায়গাগুলো খালি ছেদবিন্দু নির্দেশ করে।

+----+
|IOOI|
|O  O|
|O OI|
|IOI |
+----+

আরও নিখুঁতভাবে বলতে গেলে, একটি খালি ছেদবিন্দু কোনো খেলোয়াড়ের এলাকার অংশ হবে যদি তার সব প্রতিবেশী হয় ওই খেলোয়াড়ের পাথর, নয়তো ওই খেলোয়াড়ের এলাকার অংশ এমন খালি ছেদবিন্দু।

আরও তথ্যের জন্য দেখুন উইকিপিডিয়া বা Sensei's Library।

এক্সেপশন মেসেজ

কখনও কখনও একটি এক্সেপশন রেইজ করা প্রয়োজন হয়। এটি করলে, এররটির উৎস কী তা বোঝানোর জন্য আপনার সবসময় একটি অর্থবহ এরর মেসেজ যোগ করা উচিত। এতে আপনার কোড আরও পাঠযোগ্য হয় এবং ডিবাগিংয়ে অনেক কাজে আসে। যেসব পরিস্থিতিতে আপনি জানেন যে এররটির উৎস একটি নির্দিষ্ট টাইপ হবে, সেখানে আপনি বিল্ট-ইন এরর টাইপগুলোর একটি রেইজ করা বেছে নিতে পারেন, তবে তবুও একটি অর্থবহ মেসেজ যোগ করা উচিত।

এই নির্দিষ্ট অনুশীলনীতে ভুল কোঅর্ডিনেট দেওয়া হলে ValueError "থ্রো" করতে আপনাকে রেইজ স্টেটমেন্ট ব্যবহার করতে হবে। পরীক্ষাগুলো কেবল তখনই পাস করবে যদি আপনি raise করেন এবং exception-এর সাথে একটি মেসেজও যোগ করেন।

একটি মেসেজসহ ValueError রেইজ করতে, exception টাইপে আর্গুমেন্ট হিসেবে মেসেজটি লিখুন:

# when the coordinates for the piece are invalid
raise ValueError('Invalid coordinate')
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Python Exercism

গো গণনা শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Python ট্র্যাকের 17টি কনসেপ্ট146টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।