例5002 进制转换

news/2024/10/22 15:41:17/

例5002 进制转换

Time Limit: 1000/1000MS (C++/Others) Memory Limit: 65536/65536KB (C++/Others)
Total Submissions: 190 Accepted Submissions: 39
Problem Description
输入一个十进制数N,将它转换成R进制数输出。

Input
输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16,R<>10)。

Output
为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。

Sample Input
7 2
23 12
-4 3
Sample Output
111
1B
-11

我们先来复习一下10进制整数转换为其他进制的方法:
(1)把我们要转换的数除以新的进制的基数,把余数作为新进制的最低位;
(2)把上一次得到的商再除以新的进制基数,把余数作为新进制的次低位;
(3)继续上一步,直到最后的商为零,这时的余数就是新进制的最高位。

注意,我们的递归函数的输出刚好是从上面的第(3)步中输出最高位开始的,也就是说,递归最先算出来的是新进制的最高位,然后才依次计算后面较低的位

#include <iostream>
using namespace std;
//可以用递归来解决这个问题的原因是:递归输出时是逆向输出的,即从递归结束的那条语句的前一句开始输出
//这正好和进制转换的方法对应了起来
int base(int n,int k) 
{char m;//注意,这里用一个char类型来存要输出的数字字符,即把数值输出替换为字符输出 if(n == 0)return 0;//递归结束 base(n/k,k); m = (n%k>9?'A'+n%k-10:n%k+'0');//如果余数大于9,则按16进制那一套来记 printf("%c",m);
}int main()
{int num;int r;while(~scanf("%d %d",&num,&r)){if(num<0) {cout<<"-";//如果是负数,则先输出一个负号 base(-num,r);//注意这里的传值是 -num }elsebase(num,r);cout<<endl;}return 0;
}

http://www.ppmy.cn/news/712765.html

相关文章

LCT - hdu5002 Tree

题目&#xff1a; http://acm.hdu.edu.cn/showproblem.php?pid5002 题意&#xff1a; 给一棵树树&#xff0c;提供四种操作 1&#xff1a;删除(x,y)边&#xff0c;添加(a,b)边&#xff0c;保证操作前后都是合法的树 2&#xff1a;修改a--b路径上所有点的权值为x 3&#…

1144: 5002 进制转换

题目描述 输入一个十进制数N&#xff0c;将它转换成R进制数输出。 输入 输入数据包含多个测试实例&#xff0c;每个测试实例包含两个整数N&#xff08;32位整数&#xff09;和R&#xff08;2<R<16&#xff0c;R ! 10&#xff09;。 输出 为每个测试实例输出转换后的…

hdu5002:Tree (LCT)

题目传送门&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid5002 题目大意&#xff1a;一开始给你一棵有N个点的树&#xff08;N<10^5&#xff09;&#xff0c;每个点有权值。现在有四种操作&#xff1a;1&#xff1a;x y a b删掉连接x,y的边&#xff0c;并连接a,b…

P5002 专心OI - 找祖先【题解】

题目链接&#xff1a;P5002 专心OI - 找祖先。 这是一道既和 LCA 有关&#xff0c;又可以称得上和 LCA 没有多少关系的题。 这道题中的数据范围告诉我们&#xff0c;存图要用邻接表&#xff08;矩阵表示很悲伤&#xff09;&#xff0c;所以先把它的代码给码上&#xff1a; /…

InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond.

1.使用工具 MAC idea mysql 2.错误场景 在启动项目的时候报错&#xff1a; InetAddress.getLocalHost().getHostName() took 5002 milliseconds to respond.3.解决方案 获取本机的主机名称&#xff08;mac电脑&#xff09; 可以使用 hostname命令 hostname 就可以拿到 **…

ias 配置服务器 文件属性,WX5002与Windows IAS配合实现同一SSID不同VLAN功能(即动态mac-vlan功能)的典型配置...

WX5002与Windows IAS配合实现同一SSID不同VLAN功能(即动态mac-vlan功能)的典型配置 适用WX5002版本:Comware Software, Version 5.20, Release 1106P02 一、组网需求 WX5002、WA2110、H3C POE交换机、便携机(安装有11b/g无线网卡)、Windows IAS服务器 二、组网图 WX5002的IP地…

Test5002

解题链接&#xff1a;http://222.197.91.46:2015/study/Test50002.aspx 依然扔进WinHex里&#xff0c;key就在上面 key:SWUN_CTF{picinfor_666}

WeBase快速入门搭建,http://localhost:5002/WeBASE-Front页面打不开,启动后5002端口自动断开

WeBASE-Front 解决方法&#xff1a;先切到fisco节点下&#xff0c;启动相关节点&#xff0c;案例中用到了node0和node1&#xff0c;所以操作如下&#xff1a; cd~ cd fisco/nodes/127.0.0.1 ./start_all.sh#或者单独启动node0和node1&#xff0c;cd node0 && ./start…