এক ঘণ্টার পাইথন কোডিং

পাইথন হচ্ছে একটি প্রোগ্রামিং ভাষা। বর্তমান তথ্যপ্রযুক্তির দুনিয়ায় এর ব্যবহার দিন দিন বাড়ছে। প্রফেশনাল কাজের পাশাপাশি প্রোগ্রামিং শেখার জন্যও পাইথন খুবই জনপ্রিয়। পাইথন নিয়ে বিস্তারিত জানা যাবে এই লেখায়: পাইথন কী?

তো সামনে “কম্পিউটার বিজ্ঞান শিক্ষা সপ্তাহ” উদযাপনের একটি গুরুত্বপূর্ণ অংশ হচ্ছে “আওয়ার অব কোড“। সারা পৃথিবীর সাথে সাথে বাংলাদেশেও এটি বেশ ঘটা করে পালন করার উদ্যোগ নিয়েছে বিডিওএসএন, আর সাথে গত দুই বছরের মতো এবারেও আছে দ্বিমিক কম্পিউটিং। অনুষ্ঠানের বিস্তারিত জানা যাবে এই ওয়েবসাইটে : http://cseweek.bdosn.org

বেশিরভাগ মানুষই code.org ওয়েবসাইটে যেই গেমটি দেওয়া আছে, সেটি ব্যবহার করে ‘আওয়ার অব কোড’ পালন করবে। তবে সবার জন্য এটি উপভোগ্য কিংবা উপকারি না ও হতে পারে। বাংলাদেশের প্রেক্ষাপটে কেউ যদি ষষ্ঠ শ্রেণী বা তার ওপরের ক্লাসের শিক্ষার্থীদের নিয়ে এক ঘণ্টার কোডিং করতে চান, আমার পরামর্শ হবে পাইথন ভাষা ব্যবহার করে কয়েকটি প্রোগ্রাম লিখে দেখানোর।

প্রথমেই শিক্ষার্থীদের বলতে হবে, প্রোগ্রামিং কেন শিখবে। তাদের সাথে প্রোগ্রামিং ও প্রোগ্রামারদের নিয়ে গল্প করতে হবে। গল্প-স্বল্প বলা শেষ হলে শুরু করতে হবে এক ঘণ্টার পাইথন কোডিং

১) প্রথম কাজ হচ্ছে সবার কম্পিউটারে পাইথন সফটওয়্যার ইনস্টল করা। ইনস্টলার আগে থেকে ডাউনলোড করে রাখতে হবে (যদি উইন্ডোজ অপারেটিং সিস্টেম হয়, লিনাক্সে এটি এমনিতেই ইনস্টল করা থাকে)। সবাই নিজে নিজে কম্পিউটারে পাইথন ইনস্টল করবে।

২) দ্বিতীয় কাজ হচ্ছে “Hello World” প্রোগ্রাম লেখা। এটি যে প্রোগ্রামিং সংস্কৃতির একটি অংশ, সেটি শিক্ষার্থীদের জানাতে হবে।

৩) 1 থেকে 100 পর্যন্ত সমস্ত পূর্ণসংখ্যা প্রিন্ট করার প্রোগ্রাম দেখাতে হবে। প্রথমে কেবল while লুপ ব্যবহার করে। তারপর for লুপ এবং range() ফাংশন ব্যবহার করে। লুপের ধারণা দিতে হবে। ফাংশন নিয়েও কিছু কথা বলতে হবে। তবে বেশি কথা বলে শিক্ষার্থীদের বিরক্ত করা যাবে না।

৪) এবারে লুপ নিয়ে আরো খেলাধূলা করতে হবে। 1, 3, 5, …, 99 প্রিন্ট করা ও 2, 4, 6, …, 98, 100 প্রিন্ট করার প্রোগ্রাম দেখাতে হবে। তবে এর আগে শিক্ষার্থীদের ১০-১৫ মিনিট সময় দিলে ভালো হয় যেন তারা নিজেরা কাজটি করার চেষ্টা করে। তারপর সংখ্যাগুলোকে বড় থেকে ছোট ক্রমেও প্রিন্ট করার প্রোগ্রাম দেখাতে হবে। শুধু লুপ ব্যবহার করে একবার দেখাতে হবে, তারপর range() ফাংশন ব্যবহার করে।

৫) এবারে কন্ডিশনাল লজিকের ধারণা দিতে হবে। এর জন্য আবার 1 থেকে 100 পর্যন্ত জোড়সংখ্যা ও বিজোড় সংখ্যা প্রিন্ট করার প্রোগ্রাম দেখাতে হবে।

৬) 1 থেকে 1000 এর মধ্যে সমস্ত পূর্ণবর্গ সংখ্যা (1, 4, 9, 16 …) প্রিন্ট করার প্রোগ্রাম দেখাতে হবে। প্রোগ্রামটি একাধিকভাবে লিখে দেখাতে হবে।

৭) লিস্টের ব্যবহার দেখাতে হবে। এর জন্য নিচের তিনটি প্রোগ্রাম দেখালে ভালো হয়:

day = raw_input()
if day in ["Friday", "Saturday"]:
   print day, "is holiday"
else:
   print day, "is not a holiday"
name = raw_input()
if name in ["Rose", "Tulip", "Lily", "Daffodil"]:
   print name, "is a flower"
elif name in ["Mango", "Jackfruit", "Guava", "Papaya"]:
   print name, "is a fruit"
else:
   print "I don't know!"
while True:
   name = raw_input()
   if name == "Exit":
      break
   if name in ["Rose", "Tulip", "Lily", "Daffodil"]:
      print name, "is a flower"
   elif name in ["Mango", "Jackfruit", "Guava", "Papaya"]:
      print name, "is a fruit"
   else:
      print "I don't know!"

৮) সময় থাকলে ডিকশনারির ব্যবহারও দেখানো যায়। দেশের নাম ইনপুট দিলে রাজধানীর নাম আউটপুট দিবে, এমন একটি প্রোগ্রাম লিখতে হবে। তবে খেয়াল রাখতে হবে যে অনুষ্ঠানের কোডিংয়ের অংশ কোনোভাবেই এক ঘণ্টার বেশি করা যাবে না।

সবাইকে অংশগ্রহনের জন্য সার্টিফিকেট দিলে সবাই হয়ত উৎসাহ পাবে।

পাইথনের জন্য কিছু লিঙ্ক:
১) হুকুশ-পাকুশের প্রোগ্রামিং শিক্ষা : http://hukush-pakush.com
২) Hour of Python : https://hourofpython.com
৩) পাইথনের ওপর ফ্রি ভিডিও লেকচার: http://pyvideo.subeen.com
৪) পাইথনের ওপর বাংলায় লেখা বই : http://bit.ly/pybook (প্রোগ্রামিংয়ে একেবারে নতুনদের জন্য উপযোগি নয়)।