当前位置: 首页 > news >正文

c++二进制转化十进制代码(小数)

#include <bits/stdc++.h>
using namespace std;
int mid;
double er_shi(string a){int lena;double sum=0;int p=0;int q=-1;int yn=1;//判断是否小数 lena=a.length();//字符串长度 for(int i=0;i<lena;i++){if(a[i]=='.'){mid=i;yn=0;break;} 	}if(yn==0){for(int j=mid-1;j>=0;j--){sum=sum+double(a[j]-48)*pow(2,p);p++;}for(int j=mid+1;j<lena;j++){sum=sum+(a[j]-48)*pow(2,q);q--;}}else{for(int j=lena-1;j>=0;j--){sum=sum+double(a[j]-48)*pow(2,p);p++;}} return sum;
}void shi_er(int a){int arr[32];int i=0; while(a){arr[i]=a%2;a=a/2;i++;} for(int j=i-1;j>=0;j--){cout<<arr[j];}
} int main(){int n;cin>>n;shi_er(n);
} 

二进制转化十进制编程思路

输入字符串,判断字符串中是否有点,也就是需要判断二进制是不是小数。

如果是小数,就将整数部分和小数部分分开求和,如果是整数,直接计算求和即可。

http://www.lryc.cn/news/120663.html

相关文章:

  • 07_ansible, 条件选择、加载客户事件、在roles和includes上面应用’when’语句、条件导入、基于变量选择文件和模版、注册变量
  • 4个简化IT服务台任务的ChatGPT功能
  • 群晖7.X版安装cpolar内网穿透
  • [保研/考研机试] KY183 素数 北京航空航天大学复试上机题 C++实现
  • Java基础入门篇——IDEA开发第一个入门程序(五)
  • 系统学习Linux-Redis基础
  • 实现缓存el-table分页大小,用户新建标签打开该页面需保持分页大小(考虑是否为嵌入式页面)
  • 056B R包ENMeval教程-基于R包ENMeval对MaxEnt模型优化调参和结果评价制图(更新)
  • MySQL_数据库的DDL语句(表的创建与修改)
  • 常见面试题:字节序判别和转换
  • Maxwell与canal工具对比
  • SpringBoot——如何运行Python脚本并返回数据
  • 在生产环境中部署Elasticsearch:最佳实践和故障排除技巧———索引与数据上传(二)
  • R语言初学者书籍推荐
  • Taro+Vue3,点击按钮把另一个页面分享出去
  • CSS基础:学习CSS样式的基本语法和应用,了解如何美化网页。
  • MySQL语句总和之表数据操作(增删改查)
  • HDFS中snapshot快照机制
  • YOLOv5基础知识入门(5)— 损失函数(IoU、GIoU、DIoU、CIoU和EIoU)
  • Centos7源码安装redis
  • [静态时序分析简明教程(九)]多周期路径set_multicycle_path
  • Unity学习笔记--使用 C# 开发一个 LRU
  • 【一】初步认识数据库
  • HTML <section> 标签
  • PHP 之房贷计算器、组合贷
  • 解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新
  • 友善之臂NanoPi NEO利用fbtft驱动点亮1.69寸ST7789V2屏幕
  • MFC第三十天 通过CToolBar类开发文字工具栏和工具箱、GDI+边框填充以及基本图形的绘制方法、图形绘制过程的反色线模型和实色模型
  • Android Https
  • Games101学习笔记2