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

河北网站建设价格杭州线上推广

河北网站建设价格,杭州线上推广,开发公司企业简介,微信公众号做视频网站吗一、十进制转其他进制 1. 十进制转二进制 方法:短除法取余倒序排列 步骤: 将十进制数不断除以 2,记录余数将余数倒序排列得到二进制结果 示例代码: std::string decimalToBinary(int decimal) {if (decimal 0) return "…

一、十进制转其他进制

1. 十进制转二进制

方法:短除法取余倒序排列
步骤

  1. 将十进制数不断除以 2,记录余数
  2. 将余数倒序排列得到二进制结果
    示例代码
std::string decimalToBinary(int decimal) {if (decimal == 0) return "0";std::string binary;while (decimal > 0) {binary = (decimal % 2 == 0 ? "0" : "1") + binary;decimal /= 2;}return binary;
}

输入25 → 输出11001 


2. 十进制转八进制

方法:短除法取余倒序排列
步骤

  1. 将十进制数不断除以 8,记录余数
  2. 余数倒序排列即为八进制结果
    示例代码
std::string decimalToOctal(int decimal) {std::string octal;do {octal = std::to_string(decimal % 8) + octal;decimal /= 8;} while (decimal > 0);return octal;
}

输入668 → 输出1234 


3. 十进制转十六进制

方法:短除法取余并处理字母
步骤

  1. 将十进制数不断除以 16,记录余数
  2. 余数大于 9 时用 A-F 表示
    示例代码
std::string decimalToHex(int decimal) {std::string hex;const char digits[] = "0123456789ABCDEF";do {hex = digits[decimal % 16] + hex;decimal /= 16;} while (decimal > 0);return hex;
}

输入735 → 输出2DF 


二、其他进制转十进制

1. 二进制转十进制

方法:按权展开求和
步骤

  1. 从右到左,每位数字乘以 2 的幂次
  2. 累加所有结果
    示例代码
int binaryToDecimal(const std::string& binary) {int decimal = 0, base = 1;for (int i = binary.size() - 1; i >= 0; i--) {if (binary[i] == '1') decimal += base;base *= 2;}return decimal;
}

输入11001 → 输出25 


2. 八进制转十进制

方法:按权展开求和
步骤

  1. 每位数字乘以 8 的幂次
    示例代码
int octalToDecimal(const std::string& octal) {int decimal = 0, power = 1;for (int i = octal.size() - 1; i >= 0; i--) {decimal += (octal[i] - '0') * power;power *= 8;}return decimal;
}

输入1234 → 输出668 


3. 十六进制转十进制

方法:处理字母后按权展开
步骤

  1. 将 A-F 转换为 10-15
  2. 每位数字乘以 16 的幂次
    示例代码
int hexToDecimal(const std::string& hex) {int decimal = 0, power = 1;for (int i = hex.size() - 1; i >= 0; i--) {char c = toupper(hex[i]);int val = (c >= 'A') ? (c - 'A' + 10) : (c - '0');decimal += val * power;power *= 16;}return decimal;
}

输入2DF → 输出735 


三、二进制与其他进制的直接转换

1. 二进制转八进制

方法:三位一组分组转换
步骤

  1. 从右向左每 3 位分组,不足补零
  2. 每组转为十进制后拼接为八进制
    示例代码
std::string binaryToOctal(const std::string& binary) {std::string padded = std::string(3 - binary.size() % 3, '0') + binary;std::string octal;for (size_t i = 0; i < padded.size(); i += 3) {int group = (padded[i] - '0') * 4 + (padded[i+1] - '0') * 2 + (padded[i+2] - '0');octal += std::to_string(group);}return octal;
}

输入1101001110 → 输出1516 


2. 二进制转十六进制

方法:四位一组分组转换
步骤

  1. 从右向左每 4 位分组,不足补零
  2. 每组转为十六进制字符
    示例代码
std::string binaryToHex(const std::string& binary) {std::string padded = std::string(4 - binary.size() % 4, '0') + binary;std::string hex;const char digits[] = "0123456789ABCDEF";for (size_t i = 0; i < padded.size(); i += 4) {int group = (padded[i] - '0') * 8 + (padded[i+1] - '0') * 4 + (padded[i+2] - '0') * 2 + (padded[i+3] - '0');hex += digits[group];}return hex;
}

输入110110101 → 输出1B5 


四、其他进制间的间接转换

1. 八进制转十六进制

方法:先转二进制再转十六进制
步骤

  1. 将八进制每位转为 3 位二进制
  2. 按四位分组转为十六进制
    示例
    1234(八进制) → 001 010 011 100(二进制) → 29C(十六进制) 

2. 十六进制转八进制

方法:先转二进制再转八进制
步骤

  1. 将十六进制每位转为 4 位二进制
  2. 按三位分组转为八进制
    示例
    2DF(十六进制) → 0010 1101 1111(二进制) → 1337(八进制) 

五、通用方法(任意进制转换)

1. 任意进制转十进制

方法:秦九韶算法优化计算
代码示例

int anyToDecimal(const std::string& num, int base) {int decimal = 0;for (char c : num) {int digit = isdigit(c) ? c - '0' : toupper(c) - 'A' + 10;decimal = decimal * base + digit;}return decimal;
}

输入1A(16 进制) → 输出26 


2. 十进制转任意进制

方法:短除法处理余数
代码示例

std::string decimalToAny(int decimal, int base) {if (base < 2 || base > 36) return "";std::string result;const char digits[] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";do {result = digits[decimal % base] + result;decimal /= base;} while (decimal > 0);return result;
}

输入255 → 输出FF(base=16)


六、特殊处理(带小数)

1. 十进制小数转二进制

方法:整数部分短除法,小数部分乘 2 取整
步骤

  1. 整数部分按短除法处理
  2. 小数部分不断乘 2,取整数位顺序排列
    示例
    6.625 → 110.101 
http://www.dtcms.com/wzjs/54321.html

相关文章:

  • 网站配色网网络营销的现状和发展趋势
  • 怎样可以查看网站是由哪个公司做的自己如何制作网页
  • 展示页网站怎么做排名代推广app下载
  • 福田建网站公司知名的网络推广
  • 惠州市建设局人员备案网站长沙谷歌seo收费
  • 张家港网站设计建设电商网站图片
  • 上海建网站费用优帮云谷歌搜索引擎营销
  • 什么网站做淘宝素材比较好seo实战培训教程
  • 怎么免费建网站国际新闻界
  • 研发一个app费用sem优化软件选哪家
  • 设计网红店铺网站的优化策略方案
  • 买目录做网站电商关键词查询工具
  • 临沂网网站建设郑州网站运营
  • 网站建设自助建站网络营销方案3000字
  • frontpage可以做网站吗推广平台收费标准
  • vps除了做网站还能做什么电子商务与网络营销题库
  • go语言网站开发网站关键词排名外包
  • 网站建设及验收标准微博今日热搜榜
  • 中国房地产最新消息深圳关键词排名优化系统
  • 攸县网站开发关键词优化软件有哪些
  • 天津高端视频制作公司seo公司 彼亿营销
  • 如何做b2b网站推广谷歌chrome手机版
  • 句容做网站电脑培训学校哪家最好
  • 沧州网站建设制作百度百科官网首页
  • 做ppt音乐模板下载网站下载优化大师并安装
  • 网站怎么添加流量企业网站建设方案策划
  • 四川建设发展股份有限公司网站网络推广和网络营销的区别
  • 潍坊网站建设制作广州优化营商环境条例
  • 免费做长图网站东莞seo外包公司哪家好
  • 扫二维码进入个人的购物网站如何做视频网站搭建