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 টির একটি যুতসই নাম, নিজের ইচ্ছেমতো নাম । তবে না...
যারা প্রোগ্রামিং প্রবলেম সলভিং এর জগতে নতুন, তাদের অধিকাংশের মনে প্রশ্ন আসে : EOF মানে কী ? Input will be terminated by EOF এর মানে কী ? আমার এই লেখায় এই প্রশ্নের সহজ উত্তর দেওয়ার চেষ্টা করবো । EOF কে elaborate করলে দাঁড়ায় End Of File. একটা ফাইল (হতে পারে সেটা কোনো টেক্সট ফাইল কিংবা কোনো বাইনারি ফাইল) যেকোনো একটা জায়গায় গিয়ে যে শেষ হয়, সেটা কম্পিউটার বুঝে নেয় এই EOF এর মাধ্যমে । সহজ কথায়, EOF দিয়ে একটা ফাইলের ending indicate করা হয় । প্রোগ্রামিং ল্যাঙ্গুয়েজের ভাষায়, এটি একটি marker বা pre-defined Macro, সাধারণত যার মান -1. যারা প্রবলেম সলভিং করে, তারা বেশ কিছু প্রবলেমের ইনপুট স্পেসিফিকেশানে দেখতে পায় - Input will be terminated by EOF. এর মানে হলো, কতোগুলো টেস্ট কেসের জন্য ঐ প্রোগ্রাম রান করবে তা আগে জানানো হবে না, যতোক্ষণ ইনপুট দেওয়া হচ্ছে (মানে যতোক্ষণ ইনপুট ফাইলের শেষ পর্যন্ত না যাচ্ছে), ততোক্ষণ পর্যন্ত ইনপুটগুলো প্রসেসিং করতে হবে । আবার কোনো কোনো প্রব্লেমের স্পেসিফিকেশানে EOF এর কথা সরাসরি লিখা থাকে না আবার কয়টা টেস্ট কেস রান করাতে হবে সেটাও বলে দেওয়া থাকে না । সেক্...
Comments
Post a Comment