进制换换

2024-08-23 12:58
文章标签 进制 换换

本文主要是介绍进制换换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

求任意两个不同进制非负整数之间的转换,

输入只有一行三个数a,n,b,表示将a进制的n转换为b进制、

#include <iostream>
#include <string>using namespace std;int main()
{int a,b,i,j;string str;while(cin>>a>>str>>b){int tmp = 0;		//存放a进制的n转化为10进制的结果int lenth = str.length();//字符串的长度int c = 1;//各个数位的权重初始化为1,最低位权证为1,之后每位权重是前一位权重的a倍for(i = lenth-1; i>=0; i--){int x;//计算该位上的数字if(str[i]<='9'&&str[i]>='0'){x = str[i] - '0';}else if(str[i]>='a'&&str[i]<='z'){x = str[i] - 'a' + 10;		//大于十的要加10}else if(str[i]>='A'&&str[i]<='Z'){x = str[i] - 'A' + 10;}tmp +=x*c;			//数值乘以权重相加c *= a;				//不断改变权重}char ans[40],size = 0;do{int x = tmp%b;ans[size++] = (x<10)?x+'0':x+'A'-10;//将数字转换为字符tmp /= b;}while(tmp != 0);for(int k = size-1; k >= 0;--k){cout<<ans[k];}cout<<endl;}return 0;
}


这篇关于进制换换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1099444

相关文章

usaco 1.2 Palindromic Squares(进制转化)

考察进制转化 注意一些细节就可以了 直接上代码: /*ID: who jayLANG: C++TASK: palsquare*/#include<stdio.h>int x[20],xlen,y[20],ylen,B;void change(int n){int m;m=n;xlen=0;while(m){x[++xlen]=m%B;m/=B;}m=n*n;ylen=0;whi

uva 10061 How many zero's and how many digits ?(不同进制阶乘末尾几个0)+poj 1401

题意是求在base进制下的 n!的结果有几位数,末尾有几个0。 想起刚开始的时候做的一道10进制下的n阶乘末尾有几个零,以及之前有做过的一道n阶乘的位数。 当时都是在10进制下的。 10进制下的做法是: 1. n阶位数:直接 lg(n!)就是得数的位数。 2. n阶末尾0的个数:由于2 * 5 将会在得数中以0的形式存在,所以计算2或者计算5,由于因子中出现5必然出现2,所以直接一

Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(4)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(3)-CSDN博客  这节就是真正的存储数据了   理清一下思路: 1.存储路径并检查 //2进制文件类存储private static string Data_Binary_Pa

Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(3)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(2) (*****生成数据结构类的方式特别有趣****)-CSDN博客 做完了数据结构类,该做一个存储类了,也就是生成一个字典类(只是声明)  实现和上一节的数据结构类的方式大同小异,所

itoa()函数,10进制转换到(2~36)进制

先看下itoa()的函数说明吧: 功 能:把一整数转换为字符串   用 法:char *itoa(int value, char *string, int radix);    详细解释:itoa是英文integer to array(将int整型数转化为一个字符串,并将值保存在数组string中)的缩写.    参数:  value: 待转化的整数。            radix:

Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(2) (*****生成数据结构类的方式特别有趣****)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(1)-CSDN博客 本节内容 实现目标 通过已经得到的Excel表格数据,生成对应类对象(不赋值),一张表就是一个对象,其中包含了如下的字段  就像这样子  实现思路 上

[C/C++入门][进制原理]31、求分数序列和

题目来自于信息学奥赛 1078 分析: 这道题看起来比较复杂,实际上只需要通过两个公式,一次性求出分母和分子,然后把这个求出来的数加入到变量和中。甚至都不需要知道总共游哪些数。数组都用不上。循环就能解决。 #include <iostream>#include <iomanip> // 用于格式化输出using namespace std;int main() {double s

Java生成随机数工具类,进制之间的转换工具类,获取指定时间,时间格式转换工具类

废话不多说,贡献一下code 1.编号生成工具 import org.apache.commons.lang3.StringUtils;import java.math.BigInteger;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Random;/*** 编号生成工具*/@

2.第二阶段x86游戏实战2-认识进制、理解数据宽度和位的概念

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 工具下载: 链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3 提取码:6tw3 复制这段内容后打开百度网盘手机App,操作更方便哦 上一个内容:1.第二阶段x86游戏实战2-前言 进制、数据宽度、位是一

进制的功效

昨晚做梦时忽然一道灵光直击天灵盖,眼前冒出一行字:十进制,二进制、八进制、十六进制,为嘛都是“进制”?就不能是二出头、八回首、十全大补丸吗? 答曰:进制,就是进位制。 有了“进位”这款利器,就可以实现一个神奇的功能:以有限应无限。就是说可以用有限的数字符号来表示所有的数值,比如二进制,只需要两个数字就能表示出无穷多的数,甚至是万事万物。 进位的“位”指的是位置,同一个数字放在不同的位置有不同