【无标题】1.17给定一个数将其转换为任意一个进制数(用栈的方法)

复制代码
#include <iostream>
#include<stack>
using namespace std;
int main() {
	int n, k;
	stack<int> stk;
	while (cin >> n >> k) {
		if (n == 0) {
			cout << '0' << endl;
			continue;
		}
		if (n < 0) {
			cout << '-';
			n = -n;
		}while (n) {
			stk.push(n % k);
			n = n / k;
		}
		while (stk.getsize() != 0) {
			int x = stk.pop();
			if (x >= 10) {
				printf("%c", 'A' + x - 10);
			}
			else {
				printf("%d", x);
			}
		}
		cout << endl;
	}
	return 0;
}

总结:要将其转换为一个任意进制的数,只需要先用这个数去对 这个进制数取余,然后再将这个数除以这个进制数。取余的结果就是这个数转换为任意进制的数的结果。

如5转换为二进制数为101 ,4转换为二进制数为100。

相关推荐
leo__5204 分钟前
小波特征与模糊支持向量机(FSVM)的脑电信号分类方法
算法·支持向量机·分类
codecrafter1237 分钟前
sh:在 Python 里直接调系统命令
开发语言·python·其他
Luminous.7 分钟前
C语言--day29
c语言·开发语言
逢君学术论文AI写作8 分钟前
Java第24课:会话技术CookieSession
java·开发语言
wabs6668 分钟前
关于动态规划【纯粹的0-1背包需要思考的问题】
算法·动态规划
小小编程路10 分钟前
字符串转数字时,可能会遇到哪些问题?
java·开发语言·算法
许彰午14 分钟前
责任链模式实战——同一个框架里的两种链
java·开发语言·责任链模式
寻道码路17 分钟前
LangChain4j Java AI 应用开发实战(十四):手写 RAG 全流程 - 深入理解每个环节
java·开发语言·人工智能·ai
rit843249925 分钟前
MATLAB近红外光谱预处理:平滑与求导(MSV方法)
数据结构·算法·matlab
吴阿福|一人公司28 分钟前
Python 类变量修改的压力测试:高并发场景
开发语言·python