C+|四進法加算(演算子再ロード)
1668 ワード
ししんかさん
時間制限:1 Sec
メモリ制限:128 MB
コミット:421
解決:280
[コミット][ステータス][ディスカッション]
タイトルの説明
4進数のクラスを定義し、「+」番号を再定義して4進数の累積を実現します.
入力
1行目に必要な4進数の個数を入力
2行目から順に4進数を入力
しゅつりょく
すべての入力四進数の合計
サンプル入力
3
13
2
21
サンプル出力
102
時間制限:1 Sec
メモリ制限:128 MB
コミット:421
解決:280
[コミット][ステータス][ディスカッション]
タイトルの説明
4進数のクラスを定義し、「+」番号を再定義して4進数の累積を実現します.
入力
1行目に必要な4進数の個数を入力
2行目から順に4進数を入力
しゅつりょく
すべての入力四進数の合計
サンプル入力
3
13
2
21
サンプル出力
102
#include
#include
#include
#define N 16
using namespace std;
class quan
{
protected:
char num[N];
public:
quan()
{
num[0]='0';
num[1]=0;
}
quan(char *n)
{
strcpy(num,n);
}
quan(quan &a)
{
strcpy(num,a.num);
}
void reserve(char *str)
{
int len , i = 0;
char temp;
len = strlen(str);
for (i = 0; i < len / 2; i++)
{
temp = str[i];
str[i] = str[len - i - 1];
str[len- i - 1] = temp;
}
str[len]=0;
}
void fillZero(char *str)
{
int len=strlen(str);
for(int i=len; i='4')
carry=1,sum.num[i]-=4;
}
reserve(sum.num);
return sum;
}
void set(char *n)
{
strcpy(num,n);
}
void show()
{
cout << num;
}
};
int main()
{
int t,i;
char n[N];
cin >> t;
quan ans;
quan *num = new quan[t];
for(i=0; i> n;
num[i].set(n);
ans = ans + num[i];
}
ans.show();
return 0;
}