কম্পিউটার

পাইথন প্রোগ্রাম প্রদত্ত অবস্থা থেকে নির্দেশক র্যান্ডম ভেরিয়েবল থেকে ফাংশন গণনা করতে


ধরুন আমাদের k এবং n দুটি মান আছে। 1, 2, ..., n প্রথম n প্রাকৃতিক সংখ্যার p1, p2, ..., pn বলুন একটি এলোমেলো স্থানান্তর বিবেচনা করুন এবং F মান নির্ণয় করুন, যেমন F =(X2+ ... Xn-1)k , যেখানে Xi হল একটি সূচক এলোমেলো পরিবর্তনশীল, যা 1 হয় যখন নিম্নলিখিত দুটি শর্তের মধ্যে একটি থাকে:pi-1 pi+1 বা pi-1> pi এর প্রত্যাশিত মান খুঁজে বের করতে হবে

সুতরাং, ইনপুট যদি k =1 n =1000 এর মত হয়, তাহলে আউটপুট হবে 1996/3

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

  • একটি ফাংশন exp_factor() সংজ্ঞায়িত করুন। এটি n,k
  • লাগবে
  • যদি k 1 এর মত হয়, তাহলে
    • রিটার্ন(2*(n-2) , 3)
  • অন্যথায় যখন k 2 এর মত হয়, তখন
    • রিটার্ন (40*n^2 -144*n + 131, 90)
  • অন্যথায় যখন k 3 এর মত হয়, তখন
    • রিটার্ন (280*n^3 - 1344*n^2 +2063*n -1038,945)
  • অন্যথায় যখন k 4 এর মত হয়, তখন
    • রিটার্ন (2800*n^4 - 15680*n^3 + 28844*n^2 - 19288*n + 4263, 14175)
  • অন্যথায় যখন k 5 এর সমান হয়, তখন
    • রিটার্ন (12320*n^5 - 73920*n^4 + 130328*n^3 - 29568*n^2 - 64150*n -5124, 93555)
  • রিটার্ন ১.০
  • প্রধান পদ্ধতি থেকে, নিম্নলিখিতগুলি করুন -
  • M :=n-2
  • p :=2.0/3
  • q :=1 - p
  • (সংখ্যা, ডেন) :=exp_factor(n, k)
  • g :=gcd(num, den)
  • রিটার্ন ভগ্নাংশ (সংখ্যা/জি) / (ডেন/জি)

উদাহরণ

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

from math import gcd

def exp_factor(n,k):
   if k == 1:
      return (2*(n-2),3)
   elif k == 2:
      return (40*n**2 -144*n + 131,90)
   elif k == 3:
      return (280*n**3 - 1344*n**2 +2063*n -1038,945)
   elif k == 4:
      return (2800*n**4 - 15680*n**3 + 28844*n**2 - 19288*n + 4263, 14175)
   elif k == 5:
      return (12320*n**5 - 73920*n**4 + 130328*n**3 - 29568*n**2 - 64150*n -5124, 93555)
   return 1.0

def solve(k, n):
   M = n-2
   p = 2.0/3
   q = 1 - p

   num, den = exp_factor(n,k)
   g = gcd(num, den)
   return str(int(num/g))+'/'+str(int(den/g))

k = 1
n = 1000
print(solve(k, n))

ইনপুট

1, 1000

আউটপুট

1996/3

  1. পাইথনে একটি প্রদত্ত স্ট্রিং ইনবিল্ট ফাংশনের পরিবর্তনের জন্য পাইথন প্রোগ্রাম

  2. পাইথন প্রোগ্রাম n+nm+nmm.... ... n(m বার) গণনা করতে।

  3. একটি প্রদত্ত বাক্য থেকে সমস্ত সদৃশ শব্দ মুছে ফেলার জন্য পাইথন প্রোগ্রাম।

  4. একটি নির্দিষ্ট অবস্থান থেকে 'k' বিট নিষ্কাশন করতে পাইথন প্রোগ্রাম?