思路:
1. 分四类讨论
2. 得到加和减计算方法
3. 前导0删除与符号删除
#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
// 输入4进制数格式判断
bool judge(string a)
{
int i = 0;
if(a[i] == '-' || a[i] == '+')
i++;
if(a[i] == '0' && a.size()-1>i)
return false;
for(;i<a.size();i++)
{
switch(a[i])
{
case '0':
case '1':
case '2':
case '3':break;
default:
return false;
}
}
return true;
}
// 字符串翻转
void reverse(string &a)
{
char x;
unsigned len = a.size();
if(len == 1)
return;
for(int i=0;i<len/2;i++)
{
x = a[i];
a[i] = a[len-1-i];
a[len-1-i] = x;
}
}
// 正数,相加