Thursday, 2024-04-18, 3:43 PM
ebooks Programming Computer Science
Welcome Guest | RSS
Site menu
Section categories
My articles [23]
Main » Articles » My articles

Prime Number

আমার যতটুকু মনে হয়েছে তাতে বলতে পারি মৌলিক সংখ্যাটা গণিতবিদদের কাছে একটা হট কেক।কারণ খুব সহজ-সরল বিষয় নিয়ে ওনাদের চিন্তার কোন শেষ নেই।ওনারা এটার নাড়ী-ভুঁড়ি বের করে ছেড়েছেন।এবং এখনও নাকি ওনাদের গো+এসনা(বানানটি ভুল হতে পারে) শেষ নেই।তো যাইহোক প্রোগ্রামার বা কম্পিউটার Scientist দের সাথে গণিতবিদদের তো খুব বেশি পার্থক্য নেই।তাই ওনারাও এই নিয়ে বেশ চিন্তা করেন।তো আমি তাদের সেই চিন্তার একটু প্রচার করি।খুব সহজ-সরল প্রাঞ্জল ভাষায় বলতে গেলে বলতে হচ্ছে যে সংখ্যাটি ১ আর ওই সংখ্যাটি ছাড়া আর কোন সংখ্যা দ্বারা নিঃশেষে বিভাজ্য না,ওনারাই মৌলিক সংখ্যা।তবে হ্যাঁ তাঁকে অবশ্যই ১ এর থেকে বড় পূর্ণ সংখ্যা হতে হবে।গণিতের ভাষায় বলতে হয় যদি P একটি মৌলিক সংখ্যা হয় তাহলে তাঁকে এভাবে লেখা যায় P = a*b যেখানে a = 1।তাহলে আমরা একটা কোড লেখতে পারি এইরকম করে

                                 if (n < 2)   return 0;

                                 for(i = 2; i < n; i++)

                                     if(n % i == 0)  

                                         return 0;

 

কিন্তু আমরা একটু ভাবলে বুঝতে পারব যে এই লুপ টাকে n-1 পর্যন্ত চালানোর দরকার নেই।একে n/2 পর্যন্ত চালালেই হবে।কারণটা নিশ্চয় বোঝা যায় যে কোন একটি সংখ্যার অর্ধেকের বেশি কোন সংখ্যা দিয়ে নিঃশেষে ভাগ করার বার্থ চেষ্টা না করাই ভাল।

আবার এইটাও বোঝা যায় যে যেহেতু দুনিয়াতে ২ ই মাত্র মৌলিক সংখ্যা তাই আর কোন জোড় সংখ্যাকে চেক করার দরকার নেই।তাই আমরা লুপ টাকে ৩ থেকে n/2 পর্যন্ত চালাতে পারি।আর একে দুই দুই করে বাড়াতে পারি।তাহলে আমাদের প্রোগ্রাম কিন্তু সেরাম হবে।কিন্তু আমরা n/2 পর্যন্ত চেক না করে n এর বর্গমূল পর্যন্ত চেক করলেই হবে।কারণটা কি? n = a*b তাহলে a অথবা b অবশ্যই n এর বর্গমূল এর সমান বা ছোট হবে।একটু চিন্তা কর কেন এটি ব্যবহার করা হবে? আর আমরা বর্গমূল বের করার জন্য math,cmath  header ফাইল বা math ক্লাস ব্যবহার করতে পারি।মৌলিক সংখ্যা বের করার জন্য যে কোড হবে তা এখন তোমাদের নিজ দায়িত্তে কর।আর হ্যাঁ মৌলিক সংখ্যা বের করার জন্য কিন্তু একটা বিখ্যাত আল্গরিথম আছে তার নাম Sieve of Eratosthenes । এটা নিয়ে অন্য একদিন কথা বলা যাবে।আজ তাহলে শুভ বিদায় J J J

 

Category: My articles | Added by: Sumrat (2012-10-04)
Views: 10119 | Comments: 1 | Rating: 0.0/0
Total comments: 0
Name *:
Email *:
Code *:
Our poll
Rate my site
Total of answers: 164
Statistics

Total online: 1
Guests: 1
Users: 0
Login form