#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;
char *p1 = "135432464132876413135139";
char *p2 = "2832454652354165137";
void Inverted(char *Array)
{
char *p1 = Array;
char *p2 = Array;
int i = strlen(Array);
p2 += i-1;
char chTemp;
int j = i/2;
for(; j != 0; j--, p1++, p2--)
{
chTemp = *p1;
*p1 = *p2;
*p2 = chTemp;
}
}
void Add(char *chNew, char *p1, char *p2)
{
int iLen1 = strlen(p1);
int iLen2 = strlen(p2);
int i1;
int i2;
int iNew = 0;
char *chNew1;
char chNew2;
char chArray[3] = {0};
int iSecond = 0;
char chTmp;
int iLenMax = (iLen1>iLen2)?iLen1:iLen2;
for(int i = 0; iLenMax > 0; iLenMax--, i++)
{
if((iLen1-1-i) >= 0)
{
chTmp = *(p1+iLen1-1-i);
i1 = atoi(&chTmp);
}
else
{
i1 = 0;
}
if((iLen2-1-i) >= 0)
{
chTmp = *(p2+iLen2-1-i);
i2 = atoi(&chTmp);
}
else
{
i2 = 0;
}
iNew = i1 + i2 + iSecond;
itoa(iNew, chArray, 10);
if(strlen(chArray) != 1)
{
chTmp = chArray[0];
iSecond = atoi(&chTmp);
strcat(chNew, &chArray[1]);
}
else
{
strcat(chNew, &chArray[0]);
iSecond = 0;
}
memset(chArray, 0, 2);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
char *chNew = new char[strlen(p1)+2];
memset(chNew, 0, (strlen(p1)+2));
Add(chNew, p1, p2);
Inverted(chNew);
delete chNew;
return 0;
}