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

পাইথনে দिये गये অঙ্কlerden সবচেয়ে ছোট সংখ্যা বানান এবং তার প্রথম ও শেষ অঙ্ক দিয়ে প্রাইম বানায় কিনা

একটি অ্যারে digits দেওয়া আছে যেটিতে শুধু অঙ্ক রয়েছে। এগুলো থেকে সম্ভাব্য সবচেয়ে ছোট সংখ্যা বানান। তারপর সেই সংখ্যার প্রথম ও শেষ অঙ্ক দিয়ে দুটি সংখ্যা বানান (প্রথম-শেষ এবং শেষ-প্রথম) এবং যাচাই করুন কি সেগুলো প্রাইম।

উদাহরণ

ইনপুট: digits = [5, 2, 1, 7]

আউটপুট: (1257, 17, 71)

ব্যাখ্যা: ছোট সংখ্যা ১২৫৭। প্রথম-শেষ = ১৭ (প্রাইম), শেষ-প্রথম = ৭১ (প্রাইম)।

সমাধান

  1. অঙ্কগুলোর ফ্রিকোয়েন্সি গণনা করুন।
  2. ০ থেকে ৯ পর্যন্ত লুপ চালিয়ে ছোট থেকে বড় অঙ্ক যোগ করে সংখ্যা তৈরি করুন।
  3. প্রথম ও শেষ অঙ্ক নিয়ে দুটি সংখ্যা বানান।
  4. প্রাইম যাচাই করুন।

উদাহরণ কোড

from collections import defaultdict

def isPrime(num):
    if num > 1:
        for i in range(2, num):
            if num % i == 0:
                return False
        return True
    return False

def solve(arr):
    digits_freq = defaultdict(int)
    for d in arr:
        digits_freq[d] += 1
    number = ""
    for i in range(10):
        for _ in range(digits_freq[i]):
            number += str(i)
    num = int(number[0] + number[-1])
    rev = int(number[-1] + number[0])
    if isPrime(num) and isPrime(rev):
        return int(number), num, rev
    elif isPrime(num):
        return number, num
    elif isPrime(rev):
        return number, rev
    else:
        return False

digits = [5, 2, 1, 7]
print(solve(digits))  # Output: (1257, 17, 71)

ইনপুট

[5, 2, 1, 7]

আউটপুট

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

  2. পাইথনে প্রাইমোরিয়াল প্রাইম চেক করুন

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

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