কম্পিউটার

পাইথনে একটি প্রদত্ত পুনরাবৃত্তি সম্পর্কের nম পদ খুঁজুন


ধরুন আমাদের কাছে bn নামক সংখ্যার একটি ক্রম আছে, এটি b1=1 এবং bn+1/bn=2n এর মতো একটি পুনরাবৃত্তি সম্পর্ক ব্যবহার করে উপস্থাপন করা হয়। আমাদের একটি প্রদত্ত n এর জন্য log2(bn) এর মান খুঁজে বের করতে হবে।

সুতরাং, যদি ইনপুট 6 এর মত হয়, তাহলে আউটপুট হবে 5 হিসাবে log2(bn) =(n * (n - 1)) / 2 =(6*(6-1))/2 =15

আমরা এই সম্পর্কটি নিম্নরূপ −

সমাধান করে এই সমস্যাটি সমাধান করতে পারি

bn+1৷ /bn =2 n

bn /bn-1 =2 n-1

b2 /b1 =2 1 , আমরা উপরের সবগুলোকে গুণ করলে আমরা পেতে পারি

(bn+1 /bn ).(bn /bn-1 )……(b2 /b1 ) =2 n + (n-1)+……….+1

সুতরাং, bn+1 /b1 =2 n(n+1)/2

যেমন 1 + 2 + 3 + ………. + (n-1) + n =n(n+1)/2

সুতরাং, bn+1 =2 n(n+1)/2 * b1; আমরা ধরে নিচ্ছি যে প্রাথমিক মান b1 =1

সুতরাং, bn+1 =2 n(n+1)/2

n এর প্রতিস্থাপন (n+1) করার পর, আমরা পাই,

bn =2 n(n-1)/2

উভয় পক্ষের লগ নেওয়ার মাধ্যমে, আমরা পাই,

লগ2 (bn ) =n(n-1)/2

উদাহরণ

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

def add_upto_n(n):
   res = (n * (n - 1)) / 2
   return res
n = 6
print(int(add_upto_n(n)))

ইনপুট

6

আউটপুট

15

  1. পাইথনে প্রদত্ত স্ট্রিং সিকোয়েন্সের নিয়ম অনুসরণ করার পর nম ক্রম খুঁজে বের করার প্রোগ্রাম

  2. পাইথনে প্রদত্ত তালিকায় k দীর্ঘতম শব্দ খুঁজুন

  3. পাইথনে প্রদত্ত বিটোনিক সিকোয়েন্সে বিটোনিক পয়েন্ট খুঁজুন

  4. পাইথনে সূচক দ্বারা একটি তালিকার উপাদান খুঁজুন