টার্টলের সঙ্গে পরিচয় II পাইথন প্রোগ্রামিং
টার্টলের সঙ্গে পরিচয়
এখন আমরা পরিচিত হবো একটি মজার জিনিসের সঙ্গে। তার নাম হচ্ছে turtle। পাইথনে এই নামে একটি মডিউল আছে, যেটি পাইথনের সঙ্গে ইনস্টল করা থাকে। কারো কম্পিউটার turtle ইনস্টল করা না থাকলে সেটি করে নিতে হবে (পরিশিষ্ট অংশে turtle ইনস্টল করার পদ্ধতি দেওয়া আছে)। আমরা নিচের প্রোগ্রাম লিখে পরীক্ষা করে দেখতে পারি যে, এই মডিউল ইনস্টল করা আছে কী নেই। আর turtle শব্দের অর্থ কচ্ছপ, কিন্তু বইতে আমরা বাংলায় টার্টল নামেই চিনবো, কারণ এটি পাইথনের একটি মডিউল।
import turtle
turtle.forward(100)
turtle.exitonclick()
যদি এরকম এরর দেয় যে, ImportError: No module named ‘turtle’ তাহলে বুঝতে হবে যে, এটি ইনস্টল করা নেই। আর যদি কোনো এরর না দেয়, তাহলে নিচের মতো ছবি আসবে :
এখন আসা যাক, আমরা তিনটি লাইনে কী লিখলাম সেই আলোচনায়। প্রথম লাইনে লিখেছি import turtle। এর মাধ্যমে আমরা টার্টল নিয়ে কাজ করার জন্য যেই মডিউল রয়েছে সেটি আমাদের কোডে নিয়ে আসছি। পাইথনে বিভিন্ন কাজ করার জন্য হাজার হাজার মডিউল রয়েছে। আর সেসব মডিউলে বিভিন্ন কাজ ইতিমধ্যে করে দেওয়া আছে। আমরা চাইলে সেসব মডিউল ব্যবহার করতে পারি, কিন্তু তার জন্য আমাদের সেটি import করতে হবে। দ্বিতীয় লাইনে লিখেছি turtle.forward(100)। এই কমান্ড বা স্টেটমেন্ট দিয়ে আমরা টার্টলকে 100 পিক্সেল সামনে যেতে বলছি। সে কীভাবে যাবে, সেটি বলা আছে টার্টল মডিউলের ভেতরে, আমাদের তাই সেটি নিয়ে চিন্তা করতে হবে না। আর হ্যাঁ, পিক্সেল মানে স্ক্রিনের ক্ষুদ্রতম একক, যাকে আমরা বোঝার সুবিধার্থে একটি বিন্দু ধরে নিতে পারি। তৃতীয় লাইনে আমি লিখেছি turtle.exitonclick() যা দিয়ে আমি নির্দেশ দিচ্ছি যে, যেই আউটপুট উইন্ডোটি আসবে, সেখানে যেকোনো জায়গায় ক্লিক করলে প্রোগ্রাম বন্ধ হয়ে যাবে।
এবারে আমরা দেখবো, টার্টল দিয়ে কিভাবে আমরা একটি বর্গক্ষেত্র তৈরি করতে পারি। প্রতি বাহুর দৈর্ঘ্য যদি 100 পিক্সেল হয়, তাহলে নিচের ধাপগুলো অনুসরণ করতে হবে :
- প্রথমে 100 পিক্সেল সামনে যেতে হবে।
- 90 ডিগ্রী বামে ঘুরতে হবে।
- 100 পিক্সেল সামনে যেতে হবে।
- 90 ডিগ্রী বামে ঘুরতে হবে।
- 100 পিক্সেল সামনে যেতে হবে।
- 90 ডিগ্রী বামে ঘুরতে হবে।
- 100 পিক্সেল সামনে যেতে হবে।
- 90 ডিগ্রী বামে ঘুরতে হবে।
তাহলে আমরা এবার কোড লিখে দেখি।
import turtle
turtle.shape("turtle")
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.exitonclick()
প্রোগ্রামটি সেভ করে রান করলে নিচের মতো আউটপুট আসবে –
এখানে কিন্তু বর্গক্ষেত্র সম্পূর্ণ হলো না। আরো দুই লাইন (কমপক্ষে এক লাইন) কোড লিখতে হবে। সেই কাজটি আমি পাঠকের জন্য রেখে দিলাম। আরেকটি ব্যাপার খেয়াল করতে হবে যে, এই প্রোগ্রামে কিন্তু টার্টল দেখতে টার্টলের মতোই দেখাচ্ছে। কারণ হচ্ছে প্রোগ্রামের দ্বিতীয় লাইনে সেটি করতে বলা হয়েছে।
আমরা চাইলে টার্টলের গতি নিয়ন্ত্রণ করতে পারি, এর জন্য আমাদেরকে speed() ফাংশন ব্যবহার করতে হবে। এর ভেতরে আর্গুমেন্ট হিসেবে 0 থেকে 10 পাঠানো যাবে। 1 হচ্ছে সবচেয়ে ধীরগতির। যদি এর মান বাড়াই, তাহলে গতি বাড়তে থাকবে, তার মানে 10 অনেক বেশি দ্রুতগতির। আর 0 হচ্ছে সবচেয়ে দ্রুতগতির। আমরা যদি কোনো আর্গুমেন্ট না পাঠাই, তাহলে গতির ডিফল্ট মান 0 হয়, এবং তখন সবচেয়ে টার্টলের গতি হয় সবচেয়ে দ্রুত। বাকীগুলো নিজে নিজে পরীক্ষা করে বের করতে হবে। আগের প্রোগ্রামে turtle.shape(“turtle”) লাইনের পরের লাইনে এভাবে লিখতে হবে : turtle.speed(2)।
অনুশীলনী ঃ টার্টল ব্যবহার করে সমবাহু ত্রিভূজ তৈরি করতে হবে, অর্থাৎ যেই ত্রিভূজের তিনটি বাহুর দৈর্ঘ্যই সমান। আর ছোটদের পাঠ্যবইতে কিন্তু বলা আছে যে সমবাহু ত্রিভূজের ভেতরে প্রতিটি কোণ হবে 60 ডিগ্রী। আউটপুট আসবে নিচের ছবির মতো –
ওপরের প্রোগ্রামটি নিজে করতে না পারলে বুঝতে হবে যে গণিতের মৌলিক জ্ঞানে অনেক ঘাটতি রয়েছে এবং তখন স্কুলের গণিত বই নিয়ে বসে ভালোভাবে পড়তে হবে। গণিতের বেসিক দুর্বল বলে কান্নাকাটি করা চলবে না, বুঝে বুঝে বই পড়লেই বেসিক ভালো হয়ে যাবে।
No comments