1 April 2011 0 Comments

সি ও সি++ প্রোগ্রামিং টিউটোরিয়াল সমগ্র

ওকে, শিশুদের উপযোগী টিউটোরিয়াল মানে হলো- সহজ ও নবীনদের জন্য, লিখেছেন ইয়াদ। এখানে শুধু লিংক দেওয়া হলোঃ

  1. “শিশুদের উপযোগী টিউটোরিয়াল: C – programming Language. ” ভূমিকা
  2. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -২ [প্রাথমিক ধারণা]
  3. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৩
  4. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৪
  5. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৪+
  6. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৫
  7. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৬
  8. C – programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৬+

সি প্রোগ্রামিং টিউটোরিয়াল গুলো বেশ ভালই মনে হলো। আসলে সি বেশ সহজ ও বেসিক ভাষা। এর সাথে সি+ যুক্ত করে নিলে দারুণ চমৎকার হয়। তাই যোবায়ের হাসানের ব্লগ থেকে আরও কিছু লিংক দিলাম সি++ STL এর উপর – বাংলায়-

  1. C++ STL :: vector
  2. C++ STL :: pair
  3. C++ STL :: priority_queue
  4. C++ STL :: stack
  5. C++ STL :: queue
18 October 2010 0 Comments

C++ STL :: pair (এসটিএল পেয়ার)

লিখেছেন – যোবায়ের

যারাই কিনা সি/সি++ নিয়ে বেশকিছুদিন নাড়াচাড়া করছেন, তারা প্রায় সবাই সি এর একটা দারুন জিনিস স্ট্রাকচার-এর সাথে পরিচিত, আর, আরেকটু অ্যাডভান্সডরা তো মনে হয় অলরেডি সি++ এর ক্লাস নামের জিনিসটা মোয়া বানিয়ে ফেলেছে।

সি একটা ফাটাফাটি ল্যাঙ্গুয়েজ আর সি++ এর কথা তো বলাই বাহুল্য। যারা অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এর সুবাতাস পেয়েছেন তারা এটা আরো ভাল করে জানেন। আমরা জানি, সি++ এ কিছু প্রিমিটিভ ডাটা টাইপ ডিফাইন করা আছে, যাদের উপরে আমরা খুব সহজেই বিভিন্ন অপারেশন চালাতে পারি, কিন্তু মাঝে মাঝে এই রকমের ডাটা টাইপের ব্যবহার আমাদের কে ঝামেলায় ফেলতে পারে। যেমন, মনে করা যাক আমাকে একটা 2D গ্রিডের কিছু পয়েন্ট স্টোর করতে হবে। শুধু int টাইপের অ্যারে দিয়ে এটা মেইনটেইন করাটা বেশ মুশকিলের ব্যাপার। কিন্তু যদি এরকম একটা ডাটা টাইপ থাকতো ‘point’ নামে, যা কিনা (x, y) আকারে কো-অর্ডিনেট রাখতে পারতো!!! সি এ সেই ব্যাবস্থা করেই দেয়া আছে, যেন প্রোগ্রামাররা চাইলেই ইচ্ছা মতো ডাটা টাইপ বানিয়ে নিতে পারেন, আর সি++ এটাকে আরেক ডিগ্রি এগিয়ে নিয়ে গেছে। এখানে প্রোগ্রামার চাইলে তার বানানো ডাটা টাইপের আচার আচরণও বলে দিতে পারেন।

কিন্তু, প্রশ্ন হল, এটা কন্টেস্ট প্রোগ্রামিং এর জন্য কতটা সুইটেবল?

মূল লেখাটি পাওয়া যাবেঃ http://zobayer2009.wordpress.com/2010/10/01/c-stl-pair/

19 August 2010 1 Comment

C++ STL :: stack (স্ট্যাক)

লিখেছেন – যোবায়ের http://zobayer2009.wordpress.com/

STL কন্টেইনারদের মধ্যে সম্ভবত সবচেয়ে সিম্পল ডাটা স্ট্রাকচার হল stack, এটা একটা লাস্ট ইন ফার্স্ট আউট (LIFO) ডাটা স্ট্রাকচার, মানে হল যে সবার শেষে আসবে, সে সবার আগে ভাগবে… সোজা কথায় এই কন্টেইনারের শুধুমাত্র একটা দিকেই ডাটা ইন্সার্ট বা এক্সট্র্যাক্ট করা হয়। আর STL এ stack তার ডিফল্ট ইন্টার্নাল ডাটা স্ট্রাকচার হিসাবে ব্যবহার করে STL এরই deque কন্টেইনার, তবে চাইলে vector বা list ও ব্যবহার করা যেতে পারে। যে সব কন্টেইনার push_back() আর pop_back() মেথড ২ টা সাপোর্ট করে সেগুলোকেই stack এর কন্টেইনার ক্লাস হিসাবে ব্যবহার করা যায়। stack আসলে একটা অ্যাডাপ্টার ক্লাস, অর্থাৎ, এটা তৈরি করা হয় এর ইন্টারনাল কন্টেইনারের স্পেসিফিক কিছু ফাংশনকে এলিমেন্ট একসেসের অনুমতি দিয়ে।

বিস্তারিত জানতেঃ http://zobayer2009.wordpress.com/2010/07/29/c-stl-stack/

19 August 2010 1 Comment

C++ STL :: priority_queue (প্রায়োরিটি কিউ)

লিখেছেন – যোবায়ের  http://zobayer2009.wordpress.com/

সব ডাটা-স্ট্রাকচারই যে ধোয়া তুলসি পাতা, এইটা বলা যায় না, বিশেষতঃ যখন “জোর যার মুল্লুক তার” টাইপের এই ডাটা-স্ট্রাকচারটা প্রায়ই ব্যবহার করতে হয়, C++ STL এর priority_queue, এটা একটা বাইনারি হিপ ডাটা-স্ট্রাকচার (ডিফল্টঃ ম্যাক্স হিপ)। সহজ বাংলায়, হিপ হল এমন একটা ট্রি ডাটা-স্ট্রাকচার যেখানে সবচেয়ে বড় (ম্যাক্স হিপ) বা সবচেয়ে ছোট (মিন হিপ) এলিমেন্টটা সবসময় রুটে থাকবে। তাই, যদি এমন একটা ঘটনা ঘটে যে, একদল লোক লাইন দিছে কাঙ্গালি ভোজে, এমন টাইমে মাস্তান টাইপের এক ফকির আসছে, আর লোকজন ভয় পেয়ে তাকে লাইনের সামনে দাঁড়া করায় দিবে, তখন প্রায়রিটি কিউ ছাড়া উপায় নাই, অর্থাৎ খালি আগে আসলেই হবে না, যথেষ্ট পরিমানে ভাব নিয়ে আসতে হবে।

বিস্তারিত জানতেঃ http://zobayer2009.wordpress.com/2010/07/30/c-stl-queue/