Golang : Check if integer is power of four example
Problem:
You need to test if a given integer is a power of 4. For example, if given number = 16, return true and if number = 9 return false.
Solution:
Test to see if the number can be divided by 4 until it is 1.
package main
import (
"fmt"
"math"
)
func isPowerOfFour(num int) bool {
for num >= 4 {
if num%4 != 0 {
return false
}
num = num / 4
}
return num == 1
}
func main() {
fmt.Println("Is 9 power of 4? : ", isPowerOfFour(9))
fmt.Println("Is 64 power of 4? : ", isPowerOfFour(64))
fmt.Println("Is 8 power of 4? : ", isPowerOfFour(8))
// if use math.Pow() function, remember to convert float64
// to int
testNumPowerOfFour := int(math.Pow(2, 4))
fmt.Println("Is 16 power of 4? : ", isPowerOfFour(testNumPowerOfFour))
testNumPowerOfFour = int(math.Pow(2, 3))
fmt.Println("Is 8 power of 4? : ", isPowerOfFour(testNumPowerOfFour))
}
Output:
Is 9 power of 4? : false
Is 64 power of 4? : true
Is 8 power of 4? : false
Is 16 power of 4? : true
Is 8 power of 4? : false
References:
https://www.socketloop.com/tutorials/golang-math-pow-the-power-of-x-y-example
See also : Golang : Math pow(the power of x^y) example
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+15.8k Golang : XML to JSON example
+5.1k PHP : How to check if an array is empty ?
+14.9k Golang : Generate QR codes for Google Authenticator App and fix "Cannot interpret QR code" error
+12.7k Golang : How to convert a number to words
+3.9k Golang : Customize scanner.Scanner to treat dash as part of identifier
+17.8k Golang : Fix cannot download, $GOPATH not set error
+19.3k PHP : Convert(cast) int to double/float
+28.1k Golang : Get time.Duration in year, month, week or day
+11.5k Golang : How to calculate the distance between two coordinates using Haversine formula
+10.2k Golang : Post data with url.Values{}
+11.3k Golang : How to display image file or expose CSS, JS files from localhost?
+13.7k Golang : Get all local users and print out their home directory, description and group id