1942题目描述

求任意两个不同进制非负整数的转换(2进制~16进制),所给整数在long所能表达的范围之内。
不同进制的表示符号为(0,1,…,9,a,b,…,f)或者(0,1,…,9,A,B,…,F)。

输入
输入只有一行,包含三个整数a,n,b。a表示其后的n 是a进制整数,b表示欲将a进制整数n转换成b进制整数。a,b是十进制整数,2 =< a,b <= 16。

输出
可能有多组测试数据,对于每组数据,输出包含一行,该行有一个整数为转换后的b进制数。输出时字母符号全部用大写表示,即(0,1,…,9,A,B,…,F)。

样例输入
4 123 10
样例输出
27
提示
用字符串存储和表示不同进制的数。

long long int ,任意进制转换成十进制,十进制转换成任意进制.

#include <iostream> 
#include <cstring>
using namespace std;
//字符转换为10进制整数
int char2value(char c) {if (c >= '0' && c <= '9')return c-'0';else if (c >= 'a' && c <= 'f')return (c - 'a' + 10);else if (c >= 'A' && c <= 'F')return (c - 'A' + 10);else return 0;
}
//任意进制>十进制long long int,
//char num[]:a进制
long long int str2decimal(char num[], int a) {int l = strlen(num);int p = 1, n ;long long int m = 0;for (int i = l - 1; i >= 0; i--) {n = char2value(num[i]);m += n*p;p *=a;}return m;
}
//十进制>任意进制int b,结果保存在 char ans[];
char ten2any(long long int num, int b, char ans[]) {int i=0, d;do {d = (num % b) ;//d < 10 ; d + '0', char(int d) = d  + '0'//d >= 10 ; d - 10 + 'A'ans[i++] = d < 10 ?(d + '0'):(d-10+'A');num /= b;}while(num != 0);return 0;
}
int main() {int a, b; //a : 原始进制,b:输出进制char n[65] = {};while(cin>>a >>n >>b){char ans[65] = {};long long int num = str2decimal(n, a);if (b == 10) cout<<num<<endl;else {ten2any(num, b, ans);for (int i = strlen(ans)-1; i >= 0; i--)cout<<ans[i];cout<<endl;}}return 0;
}

C/C++[codeup 1942]进制转换相关推荐

  1. codeup 1943进制转换

    思路:用字符数组先保存输入的数(小于30位),如果把数直接看成整数的话,每次就是除2取余,现就看成对每个位进行除2,最后取余,比如123的过程,123先对1除2,商为0,余数为1,在对2除2,由于上一 ...

  2. 超大数据10进制转2进制详解(可推广到其他进制)/ Codeup 100000579 问题 C: 进制转换

    问题C:进制转换 时间限制 内存限制 1.000sec 32MB 题目描述: 将一个长度最多为30位数字的十进制非负整数转换为二进制数输出. 输入: 多组数据,每行为一个长度不超过30位的十进制非负整 ...

  3. javascript进制转换_《算法笔记》3.5小节——入门模拟-gt;进制转换

    @[TOC] # Contest100000579 - <算法笔记>3.5小节--入门模拟->进制转换 ## 例题 ### PATB1022 PTA | 程序设计类实验辅助教学平台 ...

  4. python中不同进制的整数之间可以直接运算_Python 进制转换、位运算

    一.进制转换 编程用十进制,十进制转换为二进制.八进制.十六进制 In [135]: bin(23) Out[135]: '0b10111' In [136]: oct(23) Out[136]: ' ...

  5. c语言进制转换pdf下载,C语言实现任意进制转换.doc

    C语言实现任意进制转换.doc includestdio.h#includemath.h#includestring.hvoid dtox(double num,int jz)char xnum100 ...

  6. 进制转换converse

    栈和队列是在软件设计中常用的两种数据结构,它们的逻辑结构和线性表相同. 其特点在于运算受到了限制:栈按"后进先出"的规则进行操作,队按"先进先出"的规则进行操作 ...

  7. 进制转换 位运算(包括补码、原码、反码、~0等一些零碎东西一次说清)

    我发现网上关于标题上的内容介绍的都很零碎,因此为了方便查找.也为了本人对这一部分的充分理解,就想着写一篇这样的博客(我分成了几个部分,以便查找): 一.进制转换 让我们先来看看各个进制的定义: 十进制 ...

  8. 每日一题(进制转换)

    前言:为了让小伙伴更方便的学习编程语言,小白每天都会分享一道编程题.小白也创建了一个微信公众号,会同步更新题目和相关的视觉领域的知识,如果小伙伴不方便在网页上阅读文章,可以关注微信公众号"小 ...

  9. 进制转换数据结构c语言不用栈,急求!!!用数据结构(C语言)利用栈实现十进制向二(八)进制转换,要有注释,谢谢!...

    匿名用户 1级 2013-12-05 回答 #include #include #include typedef unsigned int data_type; //结点数62616964757a68 ...

  10. 计算机中的数制和编码教案,计算机《数制与编码进制转换》公开课教案.doc

    <计算机应用基础>教案 新田县职业中学 蒋玲 PAGE PAGE 7 数制与编码--进制转换 [学情分析]本课内容是在学生已经学习了计算机发展与应用.计算机系统的组成等知识的基础上进行,已 ...

最新文章

  1. python查看所有异常_如何获取python异常发生的实际行号?
  2. bash之预定义变量
  3. VS2017增加数据库连接串
  4. javascript的时间段选择
  5. 文巾解题 595. 大的国家
  6. Eclipse安装反编译插件
  7. 【Spring源码】从源码实现的角度解析spring的InitializingBean的afterPropertiesSet方法和init-method区别和应用
  8. hdu 1848(Fibonacci again and again)(SG博弈)
  9. Python二级笔记(13)
  10. 利用ECG关于HRV分析
  11. oracle客观题题库,oralce题库及答案.doc
  12. Exar签署最终协议 5900万美元收购Hifn
  13. 【Google设计冲刺】一种适合于创新小组的协作方式
  14. springboot的三种启动方式
  15. iOS 使用ZipArchive压缩文件
  16. Linux netstat 命令详解
  17. vulhub漏洞复现十七_GhostScript
  18. 年底了,你总结了吗?我先来。
  19. 赵小楼《天道》《遥远的救世主》深度解析(29)优秀的传统文化和弱势思想观念的转变
  20. 给要入门量化分析的人一些建议(转)

热门文章

  1. 创建一个SpringBoot项目(IDEA版本,保姆级教程)
  2. JavaWeb开发Filter学习
  3. vue前期项目搭建所需要安装的插件,idea操作
  4. c语言开发视频监控系统,基于Crotex_A8平台的本地视频监控系统.doc
  5. 编译asp.net 2.0项目到dll文件
  6. spring cloud微服务分布式云架构-Gateway入门 1
  7. Three.js中的矩阵
  8. 探秘中国网购的数据迷城
  9. 微信公共服务平台开发(.Net 的实现)5-------解决access_token过期的问题
  10. 快餐店选址指南--转