C++ Logo
C++二级在线二级在线
首页选择题程序题成为会员帮助其他科目

七进制数列

请修改编辑器中的代码,完成以下功能:定义一个 Septinary 类,用于表示七进制数及其相关操作。七进制数的规则是“逢七进一”。类中包含以下成员函数: 1. createSeptinary:将传入的非负十进制int整数转换为七进制数,并将结果存储到成员变量 data 中。转换时,每一位七进制数需通过成员函数 numberToChar 转换为对应的 ASCII 字符。 2. numberToChar:将 0-6 的数字转换为对应的字符('0'-'6')。 3. show:输出存储在 data 中的七进制数。 程序中,main 函数已创建一个 Septinary 对象,并传入一个十进制数(本题固定为129)。你的任务是补全 createSeptinary 和其他相关代码,使程序能够正确输出该数的七进制表示。 输出示例: 243

#include "Septinary.h"

Septinary::Septinary(int num) {
	this->data = new char[100];
	this->createSeptinary(num);
}
Septinary::~Septinary() {
	if(data!= NULL)
		delete[] data;
}
void Septinary::createSeptinary(int num) {
	//********333********
	// 请在这里实现十进制转七进制的核心逻辑
	// 提示:使用除法和取模运算,结果需要倒序存储

	//********666********
}
char Septinary::numberToChar(int num) {
	if (num < 0 || num > 6) {
		cout << "error number" <<endl;
		return '0';
	}
	return (char) (num + '0');
}
void Septinary::show() {
	cout << data <<endl;
}

int main() {
	Septinary s(129);
	s.show();
	return 0;
}

控制台

调试终端

准备就绪