इस समस्या में, हमें एक पूर्णांक N दिया जाता है। हमारा कार्य यह पता लगाना है कि दिया गया पूर्णांक 4 की घात है या नहीं ।
समस्या को समझने के लिए एक उदाहरण लेते हैं,
Input : N = 64 Output : Yes
स्पष्टीकरण -
43 = 64
समाधान दृष्टिकोण
समस्या का एक सरल समाधान संख्या को 4 से पुनरावर्ती रूप से विभाजित करना और यह जांचना है कि परिणामी संख्या 4 से विभाजित है या नहीं। यदि पुनरावर्ती विभाजन के बाद का मान 1 हो जाता है, तो सही लौटें।
उदाहरण
हमारे समाधान की कार्यप्रणाली को दर्शाने के लिए कार्यक्रम
#include <iostream>
using namespace std;
bool isPowerOf4(int n){
if(n == 0)
return 0;
while(n != 1)
{
if(n % 4 != 0)
return 0;
n = n / 4;
}
return 1;
}
int main(){
int n = 123454;
if (isPowerOf4(n))
cout<<"The number is a power of 4";
else
cout<<"The number is not a power of 4";
return 0;
} आउटपुट
The number is not a power of 4