C++编程积累——C++实现十进制与二进制之间的互相转换

2023-11-03

欢迎关注原创公众号 【计算机视觉联盟】,回复 【西瓜书手推笔记】 可获取我的机器学习纯手推笔记!

直达笔记地址:机器学习手推笔记(GitHub地址)

目录

十进制与二进制之间的转换

十进制转换二进制

C++实现十进制转换二进制

二进制转换十进制

C++实现二进制转换十进制


十进制与二进制之间的转换

十进制转换二进制

十进制对2整除,得到的余数的倒序即为转换而成的二进制

十进制转换二进制

C++实现十进制转换二进制

 主函数main.cpp为:

#include<iostream>
#include<fstream>
#include<string>
#include<vector>
#include<cmath>
using namespace std;
int main()
{
    
    int N;
    cout << "Please enter the number: ";
    cin >> N;
    cout << endl;

    //十进制转二进制的声明和调用
    void  convert_10_to_2(int num);
    convert_10_to_2(N);
}

十进制转换为二进制函数为: 

#include<iostream>
#include<fstream>
#include<string>
#include<vector>
#include<cmath>
using namespace std;
void convert_10_to_2(int num)
{
    vector<int> ivec;
    int Num = num;  //存储原数据
    //对原数据循环求除以2的余数,并存储在vector对象中
    while (num != 0)
    {
        ivec.push_back(num % 2);
        num = num / 2;
    }

    //对求得的余数倒序排序并存储在vector中,求得二进制
    vector<int>::size_type sz = ivec.size();
    vector<int> ivec2;
    for (vector<int>::size_type index = 0; index != sz; ++index)
        ivec2.push_back(ivec[sz - 1 - index]);

    //输出十进制转换为二进制的数
    cout <<Num  << "十进制转二进制后为:";
    for (auto item : ivec2)
        cout << item;
    cout << endl<<endl;
}

运行结果为:


二进制转换十进制

将二进制从右往左从零次幂开始乘以二进制数并求和

二进制转换为十进制

C++实现二进制转换十进制

C++主函数为:

#include<iostream>
#include<fstream>
#include<string>
#include<vector>
#include<cmath>
using namespace std;
int main()
{
    double convert_2_to_10();
    convert_2_to_10();
    return 0;
}

二进制转十进制函数为:

#include<iostream>
#include<fstream>
#include<string>
#include<vector>
using namespace std;
double convert_2_to_10()
{
    //输入二进制数并存储在vector变量ivec2中
    cout << "Please enter the ErJInZhi numbers:  " << endl;
    int n;
    vector<int> ivec2;
    while (cin >> n)
    {
        ivec2.push_back(n);
    }

    //二进制转十进制计算
    double sum = 0, times;
    vector<int>::size_type sz = ivec2.size();
    for (vector<int>::size_type index = 0; index != sz; ++index)
    {
        times = pow(2, sz - 1 - index);
        sum += ivec2[index] * times;
    }

    //输出转化后的结果
    cout << "2进制——";
    for (vector<int>::size_type index = 0; index != sz; ++index)
        cout << ivec2[index];
    cout << "转10进制为: ";
    cout << sum << endl;
    return 0;
}

运行结果:(输入二进制时要以空格区分)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++编程积累——C++实现十进制与二进制之间的互相转换 的相关文章

  • CLR 2.0 与 4.0 性能比较?

    如果在 CLR 4 0 下运行 为 CLR 2 0 编译的 NET 程序会运行得更快吗 应用程序配置
  • 使用 lambda 表达式注册类型

    我想知道如何在 UnityContainer 中实现这样的功能 container RegisterType
  • 适合初学者的良好调试器教程[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有谁知道一个好的初学者教程 在 C 中使用调试器 我感觉自己好像错过了很多 我知道怎么做 单步执行代码并查看局部变量 虽然这常常给我带来问
  • 使用 C# 登录《我的世界》

    我正在尝试为自己和一些朋友创建一个简单的自定义 Minecraft 启动器 我不需要启动 Minecraft 的代码 只需要登录的实际代码行 例如 据我所知 您过去可以使用 string netResponse httpGET https
  • 如何在多线程C++ 17程序中交换两个指针?

    我有两个指针 pA 和 pB 它们指向两个大的哈希映射对象 当pB指向的哈希图完全更新后 我想交换pB和pA 在C 17中 如何快速且线程安全地交换它们 原子 我是 c 17 的新手 2个指针的原子无等待交换可以通过以下方式实现 inclu
  • GetType() 在 Type 实例上返回什么?

    我在一些调试过程中遇到了这段代码 private bool HasBaseType Type type out Type baseType Type originalType type GetType baseType GetBaseTyp
  • 如何在C(Linux)中的while循环中准确地睡眠?

    在 C 代码 Linux 操作系统 中 我需要在 while 循环内准确地休眠 比如说 10000 微秒 1000 次 我尝试过usleep nanosleep select pselect和其他一些方法 但没有成功 一旦大约 50 次 它
  • 如何使用 Castle Windsor 将对象注入到 WCF IErrorHandler 实现中?

    我正在使用 WCF 开发一组服务 该应用程序正在使用 Castle Windsor 进行依赖注入 我添加了一个IErrorHandler通过属性添加到服务的实现 到目前为止一切正常 这IErrorHandler对象 一个名为FaultHan
  • 为什么在 WebApi 上下文中在 using 块中使用 HttpClient 是错误的?

    那么 问题是为什么在 using 块中使用 HttpClient 是错误的 但在 WebApi 上下文中呢 我一直在读这篇文章不要阻止异步代码 https blog stephencleary com 2012 07 dont block
  • C# 数据表更新多行

    我如何使用数据表进行多次更新 我找到了这个更新 1 行 http support microsoft com kb 307587 my code public void ExportCSV string SQLSyntax string L
  • 从客户端访问 DomainService 中的自定义对象

    我正在使用域服务从 Silverlight 客户端的数据库中获取数据 在DomainService1 cs中 我添加了以下内容 EnableClientAccess public class Product public int produ
  • unordered_map 中字符串的 C++ 哈希函数

    看起来 C 标准库中没有字符串的哈希函数 这是真的 在任何 c 编译器上使用字符串作为 unordered map 中的键的工作示例是什么 C STL提供模板专业化 http en cppreference com w cpp string
  • 使用 GCP 的数据存储区时如何区分代码是在模拟器中运行还是在 GKE 中运行

    按照中给出的说明进行操作后 我不确定是否遗漏了任何内容https cloud google com datastore docs tools datastore emulator https cloud google com datasto
  • Python 属性和 Swig

    我正在尝试使用 swig 为一些 C 代码创建 python 绑定 我似乎遇到了一个问题 试图从我拥有的一些访问器函数创建 python 属性 方法如下 class Player public void entity Entity enti
  • File.AppendText 尝试写入错误的位置

    我有一个 C 控制台应用程序 它作为 Windows 任务计划程序中的计划任务运行 此控制台应用程序写入日志文件 该日志文件在调试模式下运行时会创建并写入应用程序文件夹本身内的文件 但是 当它在任务计划程序中运行时 它会抛出一个错误 指出访
  • 告诉 Nancy 将枚举序列化为字符串

    Nancy 默认情况下在生成 JSON 响应时将枚举序列化为整数 我需要将枚举序列化为字符串 有一种方法可以通过创建来自定义 Nancy 的 JSON 序列化JavaScript 原始转换器 https github com NancyFx
  • 等待 IAsyncResult 函数直至完成

    我需要创建等待 IAsyncResult 方法完成的机制 我怎样才能做到这一点 IAsyncResult result contactGroupServices BeginDeleteContact contactToRemove Uri
  • WPF DataGridTemplateColumn 组合框更新所有行

    我有这个 XAML 它从 ItemSource 是枚举的组合框中选择一个值 我使用的教程是 http www c sharpcorner com uploadfile dpatra combobox in datagrid in wpf h
  • Unity:通过拦截将两个接口注册为一个单例

    我有一个实现两个接口的类 我想对该类的方法应用拦截 我正在遵循中的建议Unity 将两个接口注册为一个单例 https stackoverflow com questions 1394650 unity register two inter
  • 实体框架中的“it”是什么

    如果以前有人问过这个问题 请原谅我 但我的任何搜索中都没有出现 它 我有两个数据库表 Person 和 Employee 对每个类型的表进行建模 例如 Employee is a Person 在我的 edmx 设计器中 我定义了一个实体

随机推荐

  • Eclipse中使用Mybatis自动生成

    插件的安装 Help gt Eclipse Marketpalce 搜索mybatis 选择如下图的插件 一路安装 重启idea 配置文件的生成 new gt file gt other 搜索mybatis 选择如下图文件 运行文件 自动生
  • 【华为OD】

    一 题目描述 某公司研发了一款高性能 AI 处理器 每台物理设备具备 8 颗 AI 处理器 编号分别为 0 1 2 3 4 5 6 7 编号 0 3 的处理器处于同一个链路中 编号 4 7 的处理器处于另外一个链路中 不通链路中的处理器不能
  • 分页---Vue+.net+bootstrap实现

    通过学习Vue 的确觉的Vue的双向绑定使用起来十分方便 因此研究了一下列表显示时分页的实现 这里我使用了bootstrap的样式 所以在页面中引用bootstrap的样式文件 后台提数据源使用 net的 数据库访问使用EF 如果库中存有大
  • SvelteKit 1.0 - 建立个人博客,显示您的 DEV 帖子

    这篇文章的目的是提供最新版本的 SvelteKit 的简要介绍 我们将构建一个开发人员组合和博客网站 从您的 RSS 提要和 GitHub API 中获取数据 内容 SvelteKit 简介 我们要建造什么 让我们开始吧 步骤 0 先决条件
  • seaborn 超全用就完事了

    seaborn Seaborn 01 图控制 01 Seaborn 02 颜色板控制 02 Seaborn 03 数据分布图 03 Seaborn 04 Jointplot两变量图 04 Seaborn 05 Pairplot多变量图 05
  • 大一同学快要期末考试的Python专业课复习 第一章

    第一章 Ptthon 简介 1 1 Python 概述 1 2 搭建 Python 开发环境 1 3 第一个 Python 程序 1 3 1 在IDLE 中编写 Hello World 程序 1 3 2 运行 Python 程序 1 4 P
  • SpringBoot定时任务及分布式锁

    目录 目录 目录 前言 一 定时任务 二 Cron表达式 用短横线 表示时间段 用L表示最后 L是单词Last 最后的 的首字母 Scheduled常用参数的差异 三 分布式锁 分布式锁 项目目中的问题及解决办法 分布式锁的实现 前言 需求
  • 编写测试分析

    编写测试分析的目的 在方向上明确要测什么 怎么测 以及达到什么样质量标准 按照从主到次 从上到下 梳理系统思路 明确测试点 便于对需求的了解和分析 通过编写软件测试分析可间接整理出需求设计的缺陷 提前了解整体测试任务 预测测试风险 测试分析
  • vue项目发布后,webpack源码F12能查看

    正常情况下 webpack 打包的 vue 项目 发布后在浏览器中F12可以直接查看到前端源码 解决这个问题 在 config js 文件中找到 productionSourceMap true 改为 false 如果没有效果 增加 Sou
  • YOLO的训练数据和标注方法是怎样的?如何准备和处理数据集?

    YOLO You Only Look Once 是一种高效的实时目标检测算法 它在训练过程中需要准备适当的数据集和相应的标注 本文将介绍YOLO算法的训练数据和标注方法 以及如何准备和处理数据集 为读者提供一个全面的指南 YOLO的训练数据
  • angular 指令渲染_[Angular 组件库 NG-ZORRO 基础入门] - 待办事项 + 双向绑定

    前言回顾 这几天我们已经完成了 TODO 待办事项 的一些基本功能 涉及多个组件的使用方式 今天我们将 TODO 待办事项 的一些组件独立出来维护 介绍一些组件设计的小方法后 我们将对这个项目里涉及的组件进行一一讲解 有助于大家更加深刻地理
  • 阿里矢量图刷新显示异常

    在vue中使用阿里矢量图遇到了刷新丢失问题 一开始我使用的是在根html中引入的方式 在使用过程中莫名的遇到了刷新丢失问题 于是更改了新的css引入方式 main js中新增引入 import font iconfont css 在vue模
  • 超详细Git下载安装配置使用教程,从入门到上传本地项目到GitHub,一文就够了

    前言 身为一个合格的程序Yuan Git工具我们必然是要掌握的 那么对于小白来讲一定有这几个疑问 Git是什么 怎么使用 怎么配置 Git命令是什么 本文将从这几方面帮助大家了解和使用Git 关于Git Git是一个开源的分布式版本控制系统
  • 前端的图片压缩image-compressor(可在图片上传前实现图片压缩)

    转载自 作者 言墨儿 链接 https www jianshu com p 3ce3e3865ae2 作者 UYOU 链接 https www imooc com article 40038 来源 慕课网 image compressor
  • [网络安全自学篇] 十七.Python攻防之构建Web目录扫描器及ip代理池(四)

    这是作者的系列网络安全自学教程 主要是关于网安工具和实践操作的在线笔记 特分享出来与博友共勉 希望您们喜欢 一起进步 前文分享了Python弱口令攻击 自定义字典生成 调用Python的exrex库实现 并结合Selenium和BurpSu
  • html标签的分类

    HTML标签分类 在HTML页面中 带有 lt gt 符号的元素被称为HTML标签 如上面提到的 都是HTML标签 所谓标签就是放在 lt gt 标签符中表示某个功能的编码命令 也称为HTML标签或 HTML元素 1 双标签 lt 标签名
  • c++之qt学习 基本介绍 界面设计 串口

    这里写目录标题 qt基类介绍 qt不同版本 qt下载 打开qt creater 制作简单qt界面 ui界面 点击forms 双击ui文件 就可以进入ui编辑器 qt信号和槽 给界面增加图片 界面布局 布局不会影响代码 界面切换 更改代码 验
  • ctf.show web 刷题记录

    文章目录 红包题第二弹 web13 web14 方法一 方法二 红包题第六弹 红包题第二弹 打开题目 提示参数cmd 我们随便输入 cmd 1 得到源代码 ctf show 红包题 where is the flag
  • 微信扫物上线,全面揭秘扫一扫背后的识物技术!

    导语 12月23 日 微信扫物 iOS 版本正式上线 从识别特定编码形态的图片 到精准识别自然场景中商品图片 有哪些难点需要去克服 扫物以图片作为媒介 聚合微信内部有价值的生态内容如电商 百科 资讯进行展示 会催生哪些新的落地场景 本文将细
  • C++编程积累——C++实现十进制与二进制之间的互相转换

    欢迎关注原创公众号 计算机视觉联盟 回复 西瓜书手推笔记 可获取我的机器学习纯手推笔记 直达笔记地址 机器学习手推笔记 GitHub地址 目录 十进制与二进制之间的转换 十进制转换二进制 C 实现十进制转换二进制 二进制转换十进制 C 实现