কম্পিউটার

পাইথনে একটি মৌলিক সংখ্যা দুটি মৌলিক সংখ্যার যোগফল হিসাবে প্রকাশ করা যায় কিনা তা পরীক্ষা করুন


ধরুন আমাদের একটি মৌলিক সংখ্যা n আছে। আমাদের পরীক্ষা করতে হবে যে আমরা n কে x + y হিসাবে প্রকাশ করতে পারি যেখানে x এবং y দুটি মৌলিক সংখ্যা।

সুতরাং, যদি ইনপুটটি n =19 এর মত হয়, তাহলে আউটপুটটি True হবে কারণ আমরা এটিকে 19 =17 + 2 এর মত প্রকাশ করতে পারি

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • একটি ফাংশন isPrime() সংজ্ঞায়িত করুন। এটি নম্বর নেবে
  • যদি সংখ্যা <=1, তারপর
    • মিথ্যে ফেরত দিন
  • যদি সংখ্যা 2 এর মত হয়, তাহলে
    • সত্য ফেরান
  • সংখ্যা যদি জোড় হয়, তাহলে
    • মিথ্যে ফেরত দিন
  • আমি পরিসীমা 3 থেকে (সংখ্যার বর্গমূল) + 1 এর পূর্ণসংখ্যা অংশের জন্য), 2 দ্বারা বাড়ান, করুন
    • সংখ্যা i দ্বারা বিভাজ্য হলে
      • মিথ্যে ফেরত দিন
  • সত্য ফেরান
  • প্রধান পদ্ধতি থেকে নিম্নলিখিতগুলি করুন -
  • যদি isPrime(number) এবং isPrime(number - 2) উভয়ই সত্য হয়, তাহলে
    • সত্য ফেরান
  • অন্যথায়,
    • মিথ্যে ফেরত দিন

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

from math import sqrt
def isPrime(number):
   if number <= 1:
      return False
   if number == 2:
      return True
   if number % 2 == 0:
      return False
   for i in range(3, int(sqrt(number))+1, 2):
      if number%i == 0:
         return False
   return True
def solve(number):
   if isPrime(number) and isPrime(number - 2):
      return True
   else:
      return False
n = 19
print(solve(n))

ইনপুট

19

আউটপুট

True

  1. একটি সংখ্যাকে C++ এ 2টি ত্রিভুজাকার সংখ্যার যোগফল হিসাবে উপস্থাপন করা যায় কিনা তা পরীক্ষা করুন

  2. প্রাইম নম্বর চেক করতে পাইথন প্রোগ্রাম

  3. দুটি সংখ্যার বাইনারি উপস্থাপনা অ্যানাগ্রাম কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম।

  4. দুটি সংখ্যা (m,n) বন্ধুত্বপূর্ণ বা পাইথন ব্যবহার করছে না কিনা তা কীভাবে পরীক্ষা করবেন?