Python এ বেশ কয়েক রকমের ডাটা টাইপ রয়েছে। তবে সবগুলো নিয়ে এখানে আলোচনা করবো না। এই আলোচনার মধ্যে গুরুত্বপূর্ণ যেসব ডাটা টাইপ বাদ যাবে, সেগুলো Data Structure সেকশানে আলোচনা করবো ইনশা আল্লাহ্।
যারা কোনো একটা প্রোগ্রামের Run Time নিয়ে বিশেষভাবে উদ্বিগ্ন থাকো, বিশেষ করে তাদের জন্যেই এই আর্টিকেল । মূল আলোচনায় যাওয়ার আগে Sphere Online Judge এর INTEST প্রব্লেমটা সলভ করে আসো । যদি প্রব্লেমটা সলভ করতে না পারো, তাহলে পুরো আর্টিকেলটা পড়ে ফেলো । আর যদি প্রব্লেমটা সলভ করতে পারো, তাহলে তোমার প্রোগ্রামের Run Time টা একটু দেখে নাও । মূল আলোচনায় আসা যাক এবার । আমি যদি C তে কোড করি, তাহলে কোডটা এমন হতে পারে : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include <stdio.h> int main () { int n , k , t , c = 0 ; scanf ( "%d%d" , & n , & k ); while ( n -- ) { scanf ( "%d" , & t ); if ( t % k == 0 ) { c ++ ; } } printf ( "%d\n" , c ); return 0 ; } উপরের কোডটা AC হবে কি না, আমি জানি না । কারণ, আমি এই কোড সাবমিট দেইনি । যারা C++ এর cin এবং cout অবজেক্ট দু'টি নিয়ে কাজ করতে অভ্যস্ত, তারা উপরের কোডটাই এভাবে লিখতে পারে : 1 2 3...
সদ্য প্রোগ্রামিং জগতে আসা অনেকেই return keyword টির কাজ বুঝতে পারে না । তাদের কথা ভেবে এই পোস্ট লিখা । return keyword টি function এর সাথে ওতপ্রোতভাবে জড়িত । তাই এখানে function এর মাধ্যমেই আলোচনা করার চেষ্টা করলাম । মনে করো, তোমার খুব চা খেতে ইচ্ছে করছে কিন্তু তুমি চা বানাতে জানো না বা পারো না । তুমি তোমার ছোট বোনকে চা বানিয়ে দিতে বললে । তোমার ছোটবোন তোমাকে বললো, যদি তুমি তাকে চা বানানোর উপকরণগুলো এনে দাও, তবেই সে তোমাকে চা বানিয়ে দিবে ! এবার এসো আমরা একটা তালিকা বানাই । চা বানাতে কী কী লাগবে ? চা পাতা, পানি, দুধ, চিনি ! তুমি যে চা খেতে চাইছো, সে চা কী ধরণের বস্তু ? নিশ্চয়ই তরল । এবার এই তথ্যগুলো নিয়ে আমরা একটা function লিখার চেষ্টা করবো । একটা function লিখতে হলে সেই function এর শুরুতে প্রথম যে শব্দ বা keyword টি লিখতে হয়, সেটি হলো ঐ function এর return data type অর্থাৎ function টি কী ধরণের data তোমাকে return করবে, সেটি । তো, আমরা যে চা খাওয়া নিয়ে কথা বলছিলাম, সে ক্ষেত্রে return type কী হতে পারে ? অবশ্যই তরল ! এরপর লিখতে হয় ঐ function টির একটি যুতসই নাম, নিজের ইচ্ছেমতো নাম । তবে না...
আসসালামু আলাইকুম ওয়ারাহমাতুল্লাহ। আশা করি, আল্লাহ্র রহমাতে ভালো আছেন। এটা একদম বিগিনার লেভেলের কোনো গাইড না। প্রোগ্রামিং সম্পর্কে যাদের আইডিয়া আছে, বিশেষ করে যারা C/C++ সম্পর্কে জানে, তাদের জন্য এই গাইড উপকারী হবে বলে মনে করি। এই গাইডগুলোতে প্রোগ্রামিং কনসেপ্টগুলো নিয়ে খুব বেশি গভীর আলোচনা হবে না। C++ এ ক্লাস ডিক্লেয়ার করতে পারা মানুষ যদি জানতে চায় একই কাজ Python এ কীভাবে করা যায়, তাহলে এই গাইড তার উপকারে আসতে পারে। মূলত, এখানে C/C++ এর সাথে Python এর Syntactic Differences নিয়েই বেশি আলোচনা করবো। P.S. 1: কম্পিটিটিভ প্রোগ্রামারগণ এর চাহিদা পূরণ করার আশা রাখি। বিভিন্ন Data Structures, Algorithm (C++ STL এর বিকল্প) নিয়ে আলোচনা করার ইচ্ছা আছে। P.S. 2: Python এর প্রচুর লাইব্রেরি রয়েছে, যার ফাংশানও অসংখ্য। জনপ্রিয় লাইব্রেরিগুলো নিয়েও লিখার ইচ্ছা আছে। P.S. 3: এই গাইডগুলোকে রেফারেন্স বলা যেতে পারে। আমার নিজের জন্যেই আসলে এখানে লিখছি। কখনো কোনো কিছুর প্রয়োজন পড়লে এখানে এসে যাতে মনে করে নিতে পারি। P.S. 4: আমি জানি না, আমার এই লিখা কেউ পড়বে কি না। যদি কেউ পড়ে থাকেন, তবে আপনার ম...
Comments
Post a Comment