输入一个int型的正整数(十位数之内!嘞!),计算出该int型数据在内存中存储时1的个数。

 #include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int count=;
while(n)
{
if(n%) count++;
n/=; //n>>1;
}
cout<<count<<endl;
}

my C++ codes are above:

print(bin(int(input())).count("1"))

 my Python style is up|

刚才在百度知道上看见一个网友问int型的数最大能存多少。这个问题其实计算机系统结构里有讲解,

 
    首先,我们要知道在计算机里怎么存储数字的。在计算机里,对数字编码有3种方式:原码、补码、反码。原码其实就是10进制数直接转2进制数的结果。比如:十进制的18,在二进制里是10010。那这里的10010就是原码。我们可以sizeof一下我们自己的电脑上int型占几个字节。我的是4个字节,也就是说只有32个位。如果一个十进制数转位二进制数位数大于32,就溢出,其实也就是存不下了。
 
    我们存数不仅仅有正数还有负数,在计算机里如何区分正数负数?我们规定最高位是符号位。为0是正,为1负。所以最高位是不可以参加计算的。比如二进制数1000最高位是符号位的话,转十进制不是8,而是-0,对就是负0(正0的二进制形式是0000)。如果给一个十进制形式的负数,如何计算它的补码?
  1.计算这个数绝对值的二进制表示。
  2.把2^n写成二进制形式减去这个数,得到的就是补码。
比如:-5,
   1。5的二进制形式是:0101.最高位是符合位,为0是正。
   2. 1111-101,二进制的减法,补码就是1010.最高位是符合位,为1是负。
 
反码不常用,我没有细心学。
 
   所以,int占32位的时候,最大可以赋值为:2147483647。也就是0x7fffffff。注意:7的二进制形式最高位为0,如果你对2147483647+1.输出的就是-2147483648。这个数是负数中最大的数,也就是int型可以表示的最小的负数。它的十六进制表示为:0x8fffffff,8的二进制形式最高位是符号位,是1,为负。
--------https://blog.csdn.net/friendbaby/article/details/6822690

求int型正整数在内存中存储时1的个数 && int型的数到底最大是多少?的更多相关文章

  1. 华为oj之求int型正整数在内存中存储时1的个数

    题目: 求int型正整数在内存中存储时1的个数 热度指数:4427 时间限制:1秒 空间限制:32768K 题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: ...

  2. 求int型正整数在内存中存储时1的个数

    题目描述: 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: 输入一个整数(int类型) 输出描述: 这个数转换成2进制后,输出1的个数 输入例子: 5 输出例子: ...

  3. 牛客网编程练习(华为机试在线训练)-----求int型正整数在内存中存储时1的个数

    题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: 输入一个整数(int类型) 输出描述: 这个数转换成2进制后,输出1的个数 示例1 输入 5 输出 2 P ...

  4. java笔试之求int型正整数在内存中存储时1的个数

    输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 关键点:n与二进制的1相与:判断最末位是否为1:向右移位. 类似题目是查找输入整数二进制中1的个数. package test; ...

  5. 【华为机试】—— 15.求int型正整数在内存中存储时1的个数

    题目 解法 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner ...

  6. php实现 求int型数据在内存中存储时1的个数(函数都可自己实现)

    php实现 求int型数据在内存中存储时1的个数(函数都可自己实现) 一.总结 一句话总结:函数我们自己都可以实现,尤其是很多基础函数,没有工具的时候自己写. 1.php进制转换函数? base_co ...

  7. (一)求 int 型数据在内存中存储时 1 的个数

    题目:求 int 型数据在内存中存储时 1 的个数 描述:输入一个 int 型数据,计算出该 int 型数据在内存中存储时 1 的个数 运行时间限制: 10 sec 内存限制:128 MByte 输入 ...

  8. 华为机试 求int型数据在内存中存储时1的个数

    题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: 输入一个整数(int类型) 输出描述: 这个数转换成2进制后,输出1的个数 输入 5 输出 2 普通运算方 ...

  9. 求int型数据在内存中存储时1的个数

    1.求int型数据在内存中存储时1的个数 输入一个int型数据,计算出该int型数据在内存中存储时1的个数. 我们非常easy想到例如以下方法: #include <iostream> u ...

随机推荐

  1. 用texarea存储数据,查询数据库后原样显示在jsp中,包括空格和回车换行

    用texarea存储数据,查询数据库后原样显示在jsp中,包括空格和回车换行

  2. css3制作网页动画

    一.CSS3变形 CSS3变形是一些效果的集合 如平移.旋转.缩放.倾斜效果 每个效果都可以称为变形(transform),它们可以分别操控元素发生平移.旋转.缩放.倾斜等变化 二.CSS3位移:tr ...

  3. ORACLE10G非归档模式下异机迁库(文件迁移)

    环境信息: 源库 目标库 操作系统 WIN7 WIN SVR 2012 R2 系统盘符 C,D,E,F C,D IP x.x.x.216 x.x.x.112 数据库版本 10.2.0.4.0 - 64 ...

  4. Quick Sort(快速排序)

    Quick Sort Let's arrange a deck of cards. Your task is to sort totally n cards. A card consists of a ...

  5. Ubuntu OS 打开端口命令

    直接执行命令:ufw allow 80 再去修改对应功能配置文件的端口号

  6. mysql 基础sql语法总结 (二)DML

    二.DML(增.删.改) 1)插入数据 第一种写法:INSERT INTO 表名 (列名1,列名2,,......)VALUES(列值1,列值2,......) 第二种写法:INSERT INTO 表 ...

  7. 机器学习作业(六)支持向量机——Matlab实现

    题目下载[传送门] 第1题 简述:支持向量机的实现 (1)线性的情况: 第1步:读取数据文件,可视化数据: % Load from ex6data1: % You will have X, y in ...

  8. 解决pjax加载页面不执行js插件的问题

    个人博客 地址:http://www.wenhaofan.com/article/20180913220425 介绍 在使用jquery.pjax的时候发现加载页面时不会执行其中的layui以及jqu ...

  9. 项目转移时发生的错误<springboot+mybatis(xml逆向工程自动生成)>

    org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'app ...

  10. vue学习指南:第十二篇(详细) - Vue的 路由 第二篇 ( 路由按需加载(懒加载))

    各位朋友 因 最近工作繁忙,小编停更了一段时间,快过年了,小编祝愿 大家 事业有成 学业有成 快乐健康 2020开心过好每一天.从今天开始 我会抽时间把 Vue 的知识点补充完整,以及后期会带给大家更 ...