【20分】2. 四进制加法(运算符重载)
题目描述
定义一个四进制的类,重定义“+”号实现四进制数的累加。
提示
输入
第一行输入所需要的四进制数的个数
第二行开始,依次输入四进制数
输出
所有输入四进制数累加的和
示例输入
3
13
2
21
示例输出
102
示例代码
#include <iostream>
#include <iomanip>
#include <string>
#include <cmath>
using namespace std;
class Quaternary
{
private:
int num;
public:
Quaternary(int num)
{
this->num = num;
}
Quaternary() {
num=0;}
void setQua(int num)
{
this->num=num;
}
Quaternary operator+(Quaternary &tt)
{
int sum,a,n=0,res=0;
sum=num+tt.num;
a=sum;
while(a)
{
a=a/10;
n++;
}
for(int i=0; i<n+1; i++)
{
if(sum%10>=4)
sum=(sum/10+1)*10+sum%10-4;
res+=sum%10 * (int)(pow(10,i)+0.5);
sum/=10;
}
Quaternary