《算法笔记》系列----进制转换(q进制转十进制、十转q)

一、q进制转十进制

这个算法的核心就是变量product,我们先让product等于1代表这一位的大小,然后每一次都乘q,代表这一位的大小。

示例代码:

cpp 复制代码
int q,product,x;//假设这个x是一个q进制的数
int ans=0;
while(x){
  ans=ans+(x%10)*product;
   x=x/10; //x去掉一位
  product=product*q;  
}

二、十进制转q进制

我们要会这个算法,就要采用"除基取余法",下面来自算法笔记原话:

将十进制数y转换为Q进制数z。

采用"除基取余法"。所谓的"基",是指将要转换成的进制Q,因此除基取余的意思就是每次将待转换数除以Q,然后将得到的余数作为低位存储,而商则继续除以Q并进行上面的操作,最后当商为00时,将所有位从高到低输出就可以得到z。

结果存放于数组z将余数从后往前输出。

cpp 复制代码
int a[40],num=0,q;

do{
   a[num++]=y%q;
   y=y/q;
} whlile(y!=0);
相关推荐
物联网嵌入式小冉学长1 分钟前
10.C S编程错误分析
c语言·stm32·单片机·算法·嵌入式
Frank_zhou15 小时前
算法-链表实战【删除链表的倒数第 N 个结点】中等
数据结构
王中阳Go17 小时前
从超市收银到航空调度:贪心算法如何破解生活中的最优决策谜题?
java·后端·算法
故事挺秃然18 小时前
中文分词:机械分词算法详解与实践总结
算法·nlp
知然19 小时前
鸿蒙 Native API 的封装库 h2lib_arkbinder
c++·arkts·鸿蒙
十五年专注C++开发20 小时前
Qt .pro配置gcc相关命令(三):-W1、-L、-rpath和-rpath-link
linux·运维·c++·qt·cmake·跨平台编译
车队老哥记录生活20 小时前
【MPC】模型预测控制笔记 (3):无约束输出反馈MPC
笔记·算法
写代码的小阿帆20 小时前
LDStega论文阅读笔记
论文阅读·笔记
Cai junhao20 小时前
【Qt】Qt控件
开发语言·c++·笔记·qt
uyeonashi20 小时前
【QT系统相关】QT网络
开发语言·网络·c++·qt