কম্পিউটার টিউটোরিয়াল

পাইথনে একটি সংখ্যা ফ্যাক্টোরিয়াল প্রাইম (Factorial Prime) কিনা তা যাচাই করা

মান লিজিয়ে আমাদের একটি সংখ্যা n আছে, আমাদের যাচাই করতে হবে n কি একটি ফ্যাক্টোরিয়াল প্রাইম (Factorial prime)। আমরা জানি একটি সংখ্যা ফ্যাক্টোরিয়াল প্রাইম বলা হয় যখন এটি একটি মৌলিক সংখ্যা যা কোনো সংখ্যার ফ্যাক্টোরিয়ালের চেয়ে এক কম বা এক বেশি।

যেমন, ইনপুট যদি n = 719 হয়, তবে আউটপুট হবে True কারণ ৭১৯ = ৭২০ - ১ = ৬! - ১।

সমাধানের ধাপসমূহ

  • যদি num একটি মৌলিক সংখ্যা নয়, তবে:
    • False রিটার্ন করুন
  • factorial := 1, i := 1
  • <লি>যখন factorial <= num + 1, করুন:
    • factorial := factorial * i
    • যদি num + 1 factorial সমান হয় অথবা num - 1 factorial সমান হয়, তবে:
      • True রিটার্ন করুন
    • i := i + 1
  • False রিটার্ন করুন

উদাহরণ

বेहतर বোঝার জন্য নিচের বাস্তবায়নটি দেখুন:

from math import sqrt
def isPrime(num):
    if num <= 1:
        return False
    if num <= 3:
        return True
    if num % 2 == 0 or num % 3 == 0:
        return False
    for i in range(5, int(sqrt(num)) + 1, 6):
        if num % i == 0 or num % (i + 2) == 0:
            return False
    return True

def solve(num):
    if not isPrime(num):
        return False
    factorial = 1
    i = 1
    while factorial <= num + 1:
        factorial *= i
        if num + 1 == factorial or num - 1 == factorial:
            return True
        i += 1
    return False

num = 719
print(solve(num))

ইনপুট

719

আউটপুট

True
  1. পাইথনে একটি সংখ্যা ডাইহেড্রাল প্রাইম (Dihedral Prime) কিনা যাচাই করা

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

  3. পাইথন প্রোগ্রাম: কোনো সংখ্যা প্রাইম কিনা তা যাচাই করা

  4. পাইথনে একটি সংখ্যা প্রাইম (Prime) কিনা তা কীভাবে যাচাই করবেন?