n * 3.5 এর ফলাফল পেতে আমাদের গণনা করতে হবে (n * 2) + n + (n / 2) . বিটগুলিকে 1 দ্বারা বামে সরানো আপনাকে n * 2 দেবে এবং বিটগুলিকে ডানদিকে নিয়ে গেলে আপনি n / 2 করবেন . ফলাফল পেতে সেগুলি যোগ করুন।
n * 3.5 =(n * 2) + n + (n / 2)
উপরের সমীকরণটি যাচাই করতে আপনি n এর বিভিন্ন মান জমা দিতে পারেন। আসুন কিছু উদাহরণ দেখি।
ইনপুট
2 7 10
আউটপুট
7 24 35
অ্যালগরিদম
- সংখ্যা n শুরু করুন।
- বাম শিফট বিটওয়াইজ অপারেটর ব্যবহার করে n * 2 খুঁজুন
- ডান শিফট বিটওয়াইজ অপারেটর ব্যবহার করে n/2 খুঁজুন।
- ফলাফল পেতে n এর সাথে উপরের দুটি মান যোগ করুন।
- ফলাফল ফেরত দিন।
উপরের ধাপগুলির সাথে এটি একটি সহজবোধ্য সমস্যা৷
৷বাস্তবায়ন
C++
-এ উপরের অ্যালগরিদমের বাস্তবায়ন নিচে দেওয়া হল#include <bits/stdc++.h> using namespace std; int getTheResult(int x) { return (x << 1) + x + (x >> 1); } int main() { int n = 10; cout << getTheResult(n) << endl; return 0; }
আউটপুট
আপনি যদি উপরের কোডটি চালান, তাহলে আপনি নিম্নলিখিত ফলাফল পাবেন।
35