কম্পিউটার

পাইথনে find(x, y) এর মান বের করার প্রোগ্রাম জোড় বা বিজোড়


ধরুন আমরা একটি অ্যারে সংখ্যা আছে. আমাদের আরও একটি জোড়া আছে (x, y), আমাদের খুঁজে বের করতে হবে যে মান find(x,y) বিজোড় নাকি জোড়। সন্ধান()টি নিম্নরূপ

  • fund(x, y) =1 যদি x> y
  • find(x, y) =nums[x]^find(x+1, y) অন্যথায়

সুতরাং, যদি ইনপুটটি nums =[3,2,7] (x, y) =1, 2 এর মত হয়, তাহলে আউটপুটটি জোড় হবে, কারণ −

  • find(1, 2) =nums[1]^find(2,3)
  • find(2, 2) =nums[2]^find(3,2)
  • খুঁজুন(3, 2) =1,
  • তাহলে খুঁজুন(2, 2) =7, এবং খুঁজুন(1, 2) =2^7 =128, এটি সমান

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

  • এমনকি :=সত্য
  • যদি x> y বা nums[x] বিজোড় হয়, তাহলে
    • এমনকি :=মিথ্যা
  • যদি x <সংখ্যার আকার - 1 এবং x
  • এমনকি :=মিথ্যা
  • যদিও সত্য হয়, তাহলে
    • 'ইভেন' ফেরত দিন
  • অন্যথায়,
    • 'বিজোড়' ফেরত দিন
  • উদাহরণ

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

    def solve(nums, x, y):
       even = True
       if x > y or (nums[x] % 2 == 1):
          even = False
       if x < len(nums) - 1 and x < y and nums[x+1] == 0:
          even = False
       if even:
          return 'Even'
       else:
          return 'Odd'
    
    nums = [3,2,7]
    (x, y) = 1,2
    print(solve(nums, x, y))

    ইনপুট

    [3,2,7], 1, 2
    

    আউটপুট

    Even

    1. পাইথনে একটি বাইনারি গাছের দীর্ঘতম এমনকি মান পথ খুঁজে বের করার প্রোগ্রাম

    2. পাইথন প্রোগ্রামে একটি সংখ্যার জোড় গুণনীয়কের সমষ্টি খুঁজুন

    3. একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

    4. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম