C++整数篇 十进制转二进制
首先, 我们要知道什么是二进制
二进制由0,1组成,逢二进一,是计算机储存的方式
0 | 0 |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
8 | 1000 |
9 | 1001 |
…… | …… |
其实蛮简单,数字长了而已。
切入正题
今天我们要将十进制整数转换二进制
首先是方法
在数学中,我们用‘(n)x’来表示n的x进制
我们会以一个数字为例:
(100)10
例:
2|100 ...0
2|50 ...0
2|25 ...1
2|12 ...0
2|6 ...0
2|3 ...1
2|1 ...1
0
所以结果是(1100100)2(从下至上)
这就是十进制转二进制的方法,
先将n除以二,
余数写旁边,
取整的商写下边并按同方式以此类推,
直到取整的商为零截止,
把余数从下往上输出即可。
我们把这个方法叫作短除法。
那么,怎么用程序编写?
我先把库和变量创建好
#include<iostream> //以后不强调了,输入输出
int n,o=0;//o定位
int a[1000];//建立一个大空间,以便操作
接着,模拟过程部分,我写了个伪代码,大家看看
当n==true 重复执行{a[o]=n除以2的余数;n=n除以2向下取整;o++;//o自加算下一位;
}
根据伪代码,很好模拟了
while(n)//操作(短除法,用来计算),n大于零时,运行
{a[o]=n%2;//算余数(用在结果里) n/=2;//除以二(int类取整) o++;//‘o’变量自加算下一位
}
最后 展示完整代码
#include<iostream>
using namespace std;
int main(){int n,o=0;int a[1000];//建立一个大空间,以便操作 cin>>n;// 输入 while(n)//操作(短除法,用来计算),n大于零时,运行 {a[o]=n%2;//算余数(用在结果里) n/=2;//除以二(int类取整) o++;//‘o’变量自加算下一位 }for(int i=o-1;i>=0;i--) cout<<a[i];//循环,倒序输出结果
}
(作者第四次发IT文章,希望大家能承蒙关照)
你们还想让我编点什么?
在QQ邮箱3547877477@qq.com告诉我吧!
(以后我会编一个小数转二进制的!敬请期待!)
下期预告:
最小公倍,最大公约
C++整数篇 十进制转二进制相关推荐
- bytes转16进制整数 python_Python 十进制转二进制、八进制、十六进制
以下代码用于实现十进制转二进制.八进制.十六进制: # -*- coding: UTF-8 -*- # Filename :test.py # author by :fghfhvngvgfgdh # ...
- 整数的十进制、二进制、八进制与十六进制
#-*-coding:utf-8-*- ''' Created on 2016年3月19日@author: Zroad '''""" 一.二进制.八进制.十六进制表示整数 ...
- Java黑皮书课后题第5章:**5.37(十进制转二进制)编写程序,提示用户输入一个十进制整数,然后显示对应的二进制值(不要使用Integer.toBinaryString(int)方法)
5.37(十进制转二进制)编写程序,提示用户输入一个十进制整数,然后显示对应的二进制值 题目 题目概述 破题 代码 运行示例 题目 题目概述 5.37(十进制转二进制)编写程序,提示用户输入一个十进制 ...
- 二进制整数转换为十进制整数[包括负数的转换]
二进制整数转换为十进制整数 [问题描述] 编写程序,输入字符串形式的二进制整数(长度为16位,采用补码表示),把它转换为十进制整数,输出该十进制整数.补码首位表示符号,0代表正数,1代表负数. 需要注 ...
- 十进制转换二进制方法总结(整数小数)
整数十进制转二进制 键盘获取一个整数赋值给n,调用Interger的toString方法,打印n的二进制输出形式. import java.util.Scanner; public class 二进制 ...
- c语言2进制16进制 表格,标题:整数进制转换(十六进制,十进制,二进制)--表格法...
标题:整数进制转换(十六进制,十进制,二进制)--表格法 在计算机里,最基本的存储单位为字节(Byte,常说的大B),1个字节包含8位(bit,常说的小b).计算机的数据就是一个字节一个字节的形式存储 ...
- 非负的十进制整数N转换为一个二进制
题目 非负的十进制整数N转换为一个二进制 /****************************************************************************** ...
- PHP dechex,PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
一,十进制(decimal system)转换函数说明 1,十进制转二进制 decbin() 函数,如下实例 echo decbin(12); //输出 1100 echo decbin(26); / ...
- python学习-综合练习三(斐波那契数列、阿姆斯特朗数、//和/、十进制转二进制bin、八进制oct、十六进制hex、进制转换源码、python中::和:的区别)
文章目录 斐波那契数列 阿姆斯特朗数 十进制转二进制bin.八进制oct.十六进制hex 补充进制转换源码 python中::和:的区别 说明:本篇博文的知识点大部分来自 Python3 实例 斐波那 ...
最新文章
- 全球知名物联网研究机构预测:2016物联网发展形势
- FreeBSD 安装过程
- mysql数据每日更新_[每日更新-MySQL]4.记录操作(数据操作)
- linux bash shell中,单引号、 双引号,反引号(``)的区别及各种括号的区别
- 电脑测速软件_网速慢,怎么办,教你测速,教你解决方案
- DateTimeFormatInfo 类
- .net remoting 技术
- Java JSR303 valid
- linux 查看内存消耗情况,Linux终端:用smem查看内存占用情况
- 使用webuploader组件实现大文件分片上传,断点续传
- Django项目中使用Redis
- 标题 青蛙跳杯子java_蓝桥杯 青蛙跳杯子
- 微信公众号模板消息管理
- 基于Patachmatch的stereo matching笔记(一):《PatchMatch Stereo》
- MySQL数据库之管理工具(上)
- 《实践论》、《矛盾论》
- 荣耀30s刷鸿蒙,荣耀30S“超过”苹果XS,靠华为鸿蒙框架优化能力
- 教师工作量计算系统 课程设计 C语言
- 如何调整参数来更好地使用频谱分析仪
- 【逗老师的无线电】为MMDVM热点盒子安装树莓派GUI图形界面仪表盘