কম্পিউটার

পাইথনে ভাঙা ক্যালকুলেটর


ধরুন আমাদের একটি ভাঙা ক্যালকুলেটর আছে যার প্রদর্শনে একটি সংখ্যা দেখানো হয়েছে, আমরা শুধুমাত্র দুটি অপারেশন করতে পারি -

  • ডবল − এটি ডিসপ্লেতে থাকা সংখ্যাটিকে 2 দ্বারা গুণ করবে, অথবা;

  • হ্রাস - এটি 1,

    দ্বারা দেখানো সংখ্যা হ্রাস করবে

প্রাথমিকভাবে, ক্যালকুলেটরটি X সংখ্যাটি প্রদর্শন করছে। Y সংখ্যাটি প্রদর্শন করার জন্য আমাদের ন্যূনতম সংখ্যক ক্রিয়াকলাপ খুঁজে বের করতে হবে।

সুতরাং ইনপুট যদি X =5 এর মত হয় এবং Y 8 হয়, তাহলে আউটপুট হবে 2, হ্রাস হিসাবে, এটি একবার, তারপর দ্বিগুণ

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

  • res :=0

  • যখন Y> X

    • res :=res + Y mod 2 + 1

    • Y :=Y / 2 যখন Y জোড় হয়, অন্যথায় (Y + 1) / 2

  • রিটার্ন res + X - Y

উদাহরণ(পাইথন)

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

class Solution(object):
   def brokenCalc(self, X, Y):
      res = 0
      while Y > X:
         res += Y % 2 + 1
         Y = Y // 2 if Y % 2 == 0 else (Y + 1)//2
      return res + X - Y
ob = Solution()
print(ob.brokenCalc(5,8))

ইনপুট

5
8

আউটপুট

2

  1. পাইথনে tkinter ব্যবহার করে কিভাবে একটি সাধারণ GUI ক্যালকুলেটর তৈরি করবেন

  2. পাইথনে Tkinter ব্যবহার করে সহজ GUI ক্যালকুলেটর

  3. issuperset() পাইথনে

  4. পাইথনে কুইন