求一个数的二进制表示中 1 的个数

导读:本篇文章讲解 求一个数的二进制表示中 1 的个数,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com


一、题目描述

编写一个函数,求一个数的二进制表示中的 1 位的个数,例如 9 的二进制表示为 1001,1 位的个数为 2。


二、解题思路

将数转换为二进制,再计算 1 的个数。

将一个数转换为二进制的方法是 除二取余


三、我的题解

Go 语言题解:

package main
 
import (
    "fmt"
)
 
func main() {
    var b int
    a := 9   //求该数的二进制表示中1的个数
    c := []int{}
    num := 0
 
    for a > 0 {
        b = a % 2
        a = a / 2
        c = append(c, b)
    }
 
    for _, j := range c {
        if j == 1 {
            num += 1
        }
    }
    
    fmt.Println(num)
 
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/118913.html

(0)
seven_的头像seven_bm

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!